1 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * stepmake/bin/add-html-footer.py (compose): remove setgcos
5 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
7 * GNUmakefile.in (install-help2man): install-help2man target.
9 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
11 * SConstruct (configure): Do not check for /bin/sh.
13 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
15 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table files.
17 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
19 * input/regression/fret-boards.ly: new file.
21 * po/de.po: new po courtesy translation team.
23 * scripts/lilypond-book.py (get_option_parser): add newline to doc
26 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
28 * ly/gregorian-init.ly (neumeDemoLayout): update
29 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
31 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
32 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
34 2006-10-27 Erlend Aasland <erlenda@gmail.com>
36 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
37 Yet another build fix.
39 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
41 * SConstruct (lilypondprefix): use sorted() for list_sort()
44 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
46 * flower/SConscript: Unit test rules.
48 * flower/test-std.cc: Compile fix.
50 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
52 * python/midi.c (pymidi_parse_track): warning fixes.
54 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
57 2006-10-26 Graham Percival <gpermus@gmail.com>
59 * Documentation/user/ {basic-, global}: minor changes from mailist.
61 2006-10-26 Erlend Aasland <erlenda@gmail.com>
63 * scm/define-grobs.scm: trivial beautification
65 * lily/tie-performer.cc: no need to #include "pqueue.hh"
67 * lily/source-file.cc: put multibyte var inside #if clause
69 * scm/define-grob-interfaces.scm:
70 * scm/define-grob-properties.scm:
71 Build fix (string-fret-finger-combinations)
73 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
76 * Documentation/user/lilypond-book.itely: Build fix.
78 2006-10-26 Joe Neeman <joeneeman@gmail.com>
80 * lily/system.cc (get_paper_system):
81 * lily/paper-book.cc (systems):
82 move most of the backwards compatibility stuff into
85 * Documentation/topdocs/NEWS.tely: add 2 entries for the
88 * Documentation/user/page.itely: remove time-scaled-music
89 bug for the Page_turn_engraver
91 * lily/paper-book.cc (set_system_penalty): backwards
92 compatibility (breakbefore) for the old page breaker
94 2006-10-25 Graham Percival <gpermus@gmail.com>
96 * Diocumentation/user/instrument-notation.itely: added more
97 info about stanzas; thanks Geoff!
99 * Documentation/user/ {basic, advanced}: small fixes from
102 * THANKS: add some bug reporters.
104 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
106 * scm/define-context-properties.scm (all-user-translation-properties):
107 noteToFretFunction: Add.
109 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
110 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
112 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
114 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
117 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
118 Remove bashism in delete.
120 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
122 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
124 * scm/translation-functions.scm (determine-frets-mf): flatten let*
126 * scm/define-context-properties.scm
127 (all-user-translation-properties): add maximumFretStretch property.
129 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
131 * lily/source-file.cc (get_counts): use multibyte variable.
133 * scm/translation-functions.scm (determine-frets-mf): new
134 function: compute fret numbers.
136 * scm/output-lib.scm (string-frets->description) new function.
137 (fret-board::calc-stencil): new function
139 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
141 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
143 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
145 * lily/tab-note-heads-engraver.cc: cleanups.
147 * lily/fretboard-engraver.cc: new file
149 * ly/engraver-init.ly: add FretBoards context
151 2006-10-24 Joe Neeman <joeneeman@gmail.com>
153 * lily/grob.cc (pure_relative_y_coordinate)
154 (pure_height): use the new call_pure_function stuff
156 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
159 * lily/side-position-interface.cc (pure_y_aligned_side): add an
162 * lily/simple-closure.cc (ly_eval_simple_closure): make
163 simple-closure evaluatable from scheme
164 (evaluate_with_simple_closure): make simple-closures pure-
167 * lily/slur.cc (pure_outside_slur_callback): new function
169 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
170 fits in with previous changes that made the page forces much
173 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
174 and pure-Y-extent into this new function.
175 (pure-conversions-alist): add outside-slur-callback
177 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
179 * Documentation/user/advanced-notation.itely (Instrument names):
180 Remove obsolete bug workaround for instrument names on piano
183 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
185 * Documentation/user/lilypond-book.itely (Integrating DocBook and
186 music): patch by Bertalan Fodor for docbook.
188 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
189 of $(LILYPOND). Prevents lilypond run for .txt files.
191 * INSTALL.txt: gitness.
193 * .cvsignore: update to force gitness.
195 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
197 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
198 detect suicide in nested tuplets.
200 2006-10-23 Werner Lemberg <wl@gnu.org>
202 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
203 typo in argument to FT_Get_X11_Font_Format.
205 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
207 * stepmake/stepmake/po-vars.make: more gitness.
209 * flower/polynomial.cc (check_sol): no empty if bodies.
211 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
213 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
215 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
217 * Documentation/user/examples.itely (Transcription of mensural
218 music): Added more comments in .ly source. Suggest to remove
219 Forbid_line_break_engraver to allow line breaking at all bars.
221 * Documentation/user/instrument-notation.itely (Ancient
222 articulations): Updated @refbugs regarding episem.
224 * Documentation/user/instrument-notation.itely (Gregorian square
225 neumes ligatures): Added \augmentum dots. Updated @refbugs
226 regarding \augmentum.
228 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
230 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
233 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
236 * ly/gregorian-init.ly: Added \augmentum macro.
238 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
240 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
242 * lily/pango-font.cc (pango_item_string_stencil): use
243 FT_Get_X11_Font_Format()
245 2006-10-22 John Mandereau <john.mandereau@free.fr>
247 * po/fr.po: update translation.
249 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
251 * VERSION (PATCH_LEVEL): bump version
253 * input/regression/horizontal-bracket-break.ly: new file.
255 * scm/define-grobs.scm (all-grob-descriptions): calc
258 * lily/horizontal-bracket.cc (make_bracket): support
259 connect-to-neighbor. Fix #118
261 * VERSION: release 2.9.26-2
263 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
265 * VERSION (PACKAGE_NAME): release 2.9.26
267 * buildscripts/output-distance.py (test_basic_compare): add
269 (FileLink.multi_img_cell): new function, glob multi-page png
272 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
274 * po/lilypond.pot: update.
276 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
278 * Documentation/user/global.itely (File structure): remove
281 * lily/parser.yy (FIXME): remove ADDQUOTE
283 * Documentation/user/global.itely (Extracting fragments of
284 notation): new node, about clip systems.
286 * Documentation/user/lilypond-book.itely (Many quotes of a large
287 score): ref to clip systems.
289 * Documentation/user/instrument-notation.itely (Entering lyrics):
290 add note about lyric ties and required font.
292 * lily/open-type-font.cc (glyph_list): format errors.
294 * Documentation/user/programming-interface.itely (Scheme
295 procedures as properties): more doco on simple-closure and scheme
297 (Input variables and Scheme): use lilypond[verbatim], document
300 * Documentation/user/page.itely (Displaying spacing): use \book
301 explicitly, so arrows show .
302 (Line breaking): add note about Forbid_line_break_engraver
304 * Documentation/user/tweaks.itely (Common tweaks): also set length
305 to prevent tie squeezing.
306 (Default files): use @var{}
308 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
309 (Generating LilyPond files): add FOMUS.
311 2006-10-20 Joe Neeman <joeneeman@gmail.com>
313 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
314 Y-offset for TextScript and Script
316 * lily/text-engraver.cc (make_item):
317 * lily/script-engraver.cc (make_script_from_event):
318 remove call to Side_position_interface::set_axis since all scripts
319 now have this set by default
322 * lily/prob.cc: use variables
324 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
326 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
327 at typography, rather analyse stream event duration.
329 * Documentation/user/page.itely (Page formatting): set a6 paper
330 for system separator example.
332 * lily/arpeggio.cc (Module): idem.
334 * lily/accidental-placement.cc: add script-priority property.
336 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
338 * lily/ttf.cc (print_trailer): if all else fails: use
339 glyphIndexXXXX as glyph name. Fixes #117.
341 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
342 entry if cmap contains glyph.
343 (get_index_to_charcode_map): remove from Pango_font class, use
344 global filename -> font mapping.
345 (get_glyph_index_name): new function.
346 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
349 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
351 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
354 * scm/define-grob-properties.scm (all-user-grob-properties):
355 remove outdated doc. Fixes #116
357 * lily/completion-note-heads-engraver.cc (process_music): always
358 clone input events; otherwise we may overwrite input 'duration
359 property. Fixes #115.
361 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
364 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
367 * VERSION (PATCH_LEVEL): bump version.
369 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
371 * lily/engraver.cc (internal_make_grob): use variables.
373 * flower/string-convert.cc (dec2double): clean-up warnings.
375 * configure.in (CXXFLAGS): add -Werror.
377 * VERSION (PACKAGE_NAME): release 2.9.25
379 2006-10-18 Joe Neeman <joeneeman@gmail.com>
381 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
382 line even if we precede a forced break.
384 * lily/optimal-page-breaking.cc (try_page_spacing): square line
385 forces too. Make page-spacing weight default to 10 because the
386 changes to vertical springs decreased the page force/line force
387 proportions. Also, take the average of line force and page force
388 instead of just the sum.
390 * lily/constrained-breaking.cc (initialize): make the stiffness
391 of the vertical springs depend on the height of the system. This
392 prevents pages with only a few large systems from getting huge
395 * Documentation/user/page.itely (Page formatting): document the
396 change in default page-spacing-weight
398 * lily/include/constrained-breaking.hh: initialise bottom_padding_
400 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
402 * input/typography-demo.ly (melody): remove superfluous slur.
404 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
405 add piano-pedal-script-interface
407 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
409 * scripts/lilypond-book.py: DocBook support.
411 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
413 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
415 (stop_translation_timestep): set bound to currentMusicalColumn if
416 not set yet. Fixes #102
418 * lily/piano-pedal-bracket.cc: formatting.
420 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
422 * lily/piano-pedal-align-engraver.cc: new class
423 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
426 2006-10-18 Heikki Junes <hjunes@gmail.com>
428 * po/fi.po: Update Finnish translation (before the next release).
430 2006-10-17 Joe Neeman <joeneeman@gmail.com>
432 * lily/system.cc (get_paper_system): reinstate the backwards-
433 compatible page breaking for the old page breaker.
435 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
437 * lily/recording-group-engraver.cc: removed
439 * lily/context.cc, lily/translator-group.cc: Don't touch
440 Context::implementation_ if it's null
442 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
444 * scm/paper.scm: only use left-margin if defined.
446 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
448 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
450 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
451 strokeFingerOrientations
453 * lily/script-column.cc (row_before_line_breaking): also handle
454 accidentals and arpeggios in horizontal script stacking.
456 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
459 * input/regression/script-stack-horizontal.ly: trim.
461 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
463 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
466 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
467 'text if string argument.
469 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
471 * scm/define-context-properties.scm
472 (all-user-translation-properties): change to strokeFingerOrientations
474 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
476 * lily/parser.yy: remove debug output
478 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
480 * ly/paper-defaults.ly: set left/right margin.
482 * scm/paper.scm (set-paper-dimensions): use left-margin and
483 right-margin for computing linewidth.
485 * Documentation/topdocs/NEWS.tely (Top): idem.
487 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
490 * scm/define-markup-commands.scm (tied-lyric): increase negative
491 space: space syllables tighter.
493 * VERSION (PATCH_LEVEL): bump version.
495 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
498 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
500 * COPYING: further clarification
502 * VERSION: release 2.9.24
504 * input/regression/script-stack-horizontal.ly: add version.
506 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
508 * input/regression/lyric-tie.ly (texidoc): use different words.
510 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
512 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
514 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
515 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
517 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
519 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
521 * Doxyfile: remove file.
523 * scm/define-grob-interfaces.scm (string-finger-interface): add
524 string-finger-interface
526 * lily/general-scheme.cc (LY_DEFINE): move
527 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
529 * Documentation/topdocs/NEWS.tely (Top): add note for
530 string-finger feature.
532 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
535 * scm/output-lib.scm (string-finger::calc-text): read 'digit
538 * input/regression/script-stack-horizontal.ly: new file.
540 * ly/engraver-init.ly: add Script_row_engraver.
542 * lily/script-column.cc (order_grobs): refactor: separate axis
544 (row_before_line_breaking): new function.
546 * lily/script-row-engraver.cc (Script_row_engraver): new file.
548 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
550 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
552 * Documentation/user/instrument-notation.itely: Cleanup: Remove
553 annoying skip notes from mensural ligature example. Update
554 @refbugs for ligatures and mensural ligatures.
556 * lily/coherent-ligature-engraver.cc,
557 lily/include/coherent-ligature-engraver.hh,
558 lily/mensural-ligature-engraver.cc,
559 lily/vaticana-ligature-engraver.cc: Revise code for item
560 reparentizing. There should now be less programming_error
563 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
565 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
566 Maintenance bugfix: Don't create empty Stencil (), but empty box
567 instead. This fix should eliminate some programming_error
570 * ly/engraver-init.ly (MensuralStaff): Set default accidental
573 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
574 \layout block _before_ score.
576 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
578 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
580 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
582 2006-10-13 Erlend Aasland <erlenda@gmail.com>
584 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
586 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
588 * VERSION (PATCH_LEVEL): bump version.
590 * COPYING: clarify exception note.
592 * lily/main.cc: remove remark about "COPYING".
594 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
595 system-count starts at 0 for each clip-region. Change name to
596 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
597 layout block, per score.
599 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
601 * lily/input-smob.cc: add equal_p for Input
603 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
606 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
608 * lily/prob.cc: Add equal_p predicate for Prob
610 * lily/translator.cc: small cleanup
612 * scm/document-music.cc: use data from translator listener
613 registration to generate documentation for event classes
615 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
617 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
619 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
621 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
623 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
625 * Documentation/topdocs/INSTALL.texi: Thinko.
627 * .cvsignore: Update.
629 * lexer-gcc-3.1.sh: Remove.
631 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
632 Update anonymous cvs access. Remove comment about gcc 3.0.4.
634 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
636 * VERSION: release 2.9.23
638 * lily/paper-column-engraver.cc (stop_translation_timestep): also
641 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
643 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
645 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
647 * input/regression/clip-systems.ly (Notes): new file.
649 * scm/lily.scm (define-scheme-options): add clip-systems option.
651 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
653 (dump-stencil-as-EPS): move bbox calculation from previous
655 (output-framework): use -dclip-systems
657 * scm/lily-library.scm (filtered-map): new function
659 * scm/framework-ps.scm (clip-system-EPS): new function.
660 (clip-system-EPSes): new function.
662 * lily/paper-column.cc: add rhythmic-location to interface
664 * scm/define-grob-properties.scm (all-user-grob-properties): add
665 rhythmic-location property.
667 * scm/clip-region.scm: new file: rhythmic-location data type and
668 system-clipped-x-extent function.
670 * ly/init.ly: use (scm clip-region)
672 * lily/paper-column-engraver.cc (stop_translation_timestep): set
673 rhythmic-location for paper column grobs.
675 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
677 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
679 * ly/engraver-init.ly: Remove obsolete comment on
682 * Documentation/user/instrument-notation.itely: Tune Ancient
683 Articulations figure, such that the episem actually shows.
685 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
686 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
688 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
691 2006-10-12 Graham Percival <gpermus@gmail.com>
693 * Documentation/user/ {some}: minor edits that were lost somehow.
695 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
697 * VERSION (PACKAGE_NAME): bump version.
699 * input/regression/lyric-tie.ly (texidoc): new file.
701 * Documentation/topdocs/NEWS.tely (Top): add new feature.
703 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
705 * scm/define-markup-commands.scm (tied-lyric): new function: split
706 string along ~ and reattach with U+203F (tie character) and
709 * scm/output-lib.scm (lyric-text::calc-text): new function.
711 * lily/lyric-engraver.cc (process_music): don't set 'text.
713 * scm/output-lib.scm (string-finger::calc-text): new function
714 (lyric-text::print): new function.
716 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
717 generic for fingering & string number. Use for string-finger.
719 * scm/define-music-types.scm (music-descriptions): add
722 * lily/fingering-engraver.cc (listen_string_finger): new function
724 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
726 * scm/define-context-properties.scm
727 (all-user-translation-properties): add stringFingerOrientations
729 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
731 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
732 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
734 * lily/dots.cc: Added style property for dots.
736 * mf/parmesan-heads.mf: Fix typo in comment.
738 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
739 adding longa head to feta font and removing obsolete default
742 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
744 * scm/output-lib.scm (fingering::calc-text): use origin
745 event-property, not music-property.
747 * lily/lilypond.rc.in: spell my name correctly.
749 2006-10-10 Joe Neeman <joeneeman@gmail.com>
751 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
752 already have a non-empty extent. Fixes estimation for Hara-kiri
755 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
757 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
760 * lily/ligature-engraver.cc: Remove unused #include.
762 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
763 Bugfix: remove method check_for_prefix_loss(Item *) from global
764 namespace to avoid namespace pollution.
766 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
768 * VERSION: release 2.9.22
770 * ly/generate-documentation.ly: update option name.
772 * lily/dynamic-text-spanner.cc (print): revert fix.
774 * scm/define-grob-interfaces.scm
775 (trill-pitch-accidental-interface):
776 add trill-pitch-accidental-interface
778 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
779 dereference if it's really a duration.
781 * lily/figured-bass-engraver.cc (process_music): clear spanner if
782 useBassFigureExtenders is not set.
783 (listen_bass_figure): record as new event if
784 useBassFigureExtenders not set. Fixes #103.
786 * scm/stencil.scm (circle-stencil): don't center stencil argument,
787 instead: move circle. Fixes #107.
789 * scm/define-grobs.scm (all-grob-descriptions): set
790 allow-loose-spacing for PaperColumn and
791 NonMusicalPaperColumn. Kludge for #110.
793 * lily/spaceable-grob.cc: add allow-loose-spacing property.
795 * lily/spacing-determine-loose-columns.cc (is_loose_column):
796 allow-loose-spacing property.
798 * scm/define-markup-commands.scm (postscript): gsave & grestore
799 around embedded PS. Do setlinewidth too. Fixes #109.
801 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
803 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
804 code. This patch fixes ligature brackets that were not at all
807 2006-10-08 Graham Percival <gpermus@gmail.com>
809 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
811 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
813 * scm/define-context-properties.scm: clarified docs (bug 91).
815 * Documentation/user/basic-notation.itely: document volta brackets
816 not aligning (bug 63).
818 * Documentation/user/ global.itely invoking.itely: ignore or
819 add warnings about texstr.
821 2006-10-08 John Mandereau <john.mandereau@free.fr>
823 * po/fr.po: update translation.
825 * po/: update msgids.
827 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
829 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
831 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
833 * Documentation/user/page.itely (Two-pass vertical spacing): add
834 documentation for two-pass spacing technique.
836 2006-10-06 Graham Percival <gpermus@gmail.com>
838 * Documentation/user/convert-ly.txt: new file; new
839 storage place for this file (moved from bugs/ CVS).
841 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
843 * lily/note-head.cc: Fixed programming_error message.
845 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
847 * scm/define-grobs.scm (pure-conversion): move pure-callback
850 * scm/script.scm (default-script-alist): set avoid-slur for turn,
851 marcato, stopped, thumb.
853 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
855 * lily/completion-note-heads-engraver.cc (process_music): don't
856 skimp on memory usage.
858 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
861 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
862 parenthesis item. This fixes premature Y-extent triggering. Fixes
865 * VERSION (PATCH_LEVEL): bump version.
867 2006-10-04 Graham Percival <gpermus@gmail.com>
869 * Documentation/user/advanced-notation.itely: added
870 info about instrument names for piano or other contexts,
873 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
875 * mf/feta-bolletjes.mf (solfa_quarter_width): use
876 solfa_base_notewidth as unit for non-DO-notes too.
878 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
880 * VERSION: release 2.9.21
882 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
885 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
887 * python/lilylib.py (progress): Minor fix.
889 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
891 * lily/note-name-engraver.cc: doc engraver.
893 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
895 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
897 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
900 * lily/stem-engraver.cc (make_stem): don't set duration-log
902 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
903 write snippet-names binary.
905 * python/lilylib.py (system): use os.system for mingw32
907 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
910 * scm/backend-library.scm: update email address.
912 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
915 * scm/define-grobs.scm (all-grob-descriptions): use callback to
918 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
919 handle dot creation separately.
921 * lily/tab-note-heads-engraver.cc (process_music): idem.
923 * lily/drum-note-engraver.cc (process_music): idem.
925 * lily/note-heads-engraver.cc (process_music): idem.
927 * lily/rest-engraver.cc: don't set duration-log.
929 * scm/output-lib.scm (string-number::calc-text): new function.
930 (note-head::calc-duration-log): new function.
932 * lily/fingering-engraver.cc (make_script): remove 'text setting.
934 * scm/output-lib.scm (fingering::calc-text): new function.
936 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
938 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
939 and include-eps-font -> include-eps-fonts
941 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
943 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
945 * lily/timing-translator.cc: list properties.
946 (start_translation_timestep): update internalBarNumber too.
948 * scm/define-context-properties.scm
949 (all-user-translation-properties): add internalBarNumber.
951 * input/regression/spacing-no-note.ly: new file.
953 * buildscripts/output-distance.py (link_file): verbosity for OSError.
955 * lily/book.cc: #include cleanup.
957 * lily/include/lily-guile-macros.hh: add assert to
958 scm_or_str2symbol(SCM).
960 * VERSION (PATCH_LEVEL): bump version.
962 * lily/spacing-spanner.cc (musical_column_spacing): handle
963 musical->nonmusical spacing case, where there is no spacing
964 wish. Fixes issue #61.
966 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
967 (pango_item_string_stencil): use logical rect horizontally (to
968 preserve spaces), ink_rect vertically (for time signatures).
970 * lily/font-metric.cc (word_stencil): new interface function
972 * input/regression/utf-8-mixed-text.ly: new file.
974 * lily/percent-repeat-engraver.cc (listen_percent): remove
977 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
978 non-dynamic scripts. Fixes #30.
980 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
982 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
984 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
985 SCM_UNDEFINED for non-existent data.
987 * lily/side-position-interface.cc (general_side_position): allow
988 optional current_offset argument for chaining, so combinations of side-position
989 and outside slur callback don't add up. Fixes issue #92.
991 * lily/pango-font.cc (pango_item_string_stencil): use
992 logical_rect. This prevents spaces after words from disappearing,
995 * VERSION: release 2.9.20
997 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
999 * scm/define-grob-properties.scm (all-user-grob-properties):
1000 mention stencil as user settable.
1002 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1004 * Documentation/user/page.itely (Page formatting):
1005 document auto-first-page-number
1007 * lily/page-breaking.cc (find_chunks_and_breaks):
1008 * lily/paper-score.cc (calc_breaking): Follow changes to the
1009 Constrained_breaking interface
1011 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1012 here backwards, as an optimisation
1013 (initialize): new function; move most of the code in resize () here
1014 (combine_demerits): cache ragged_right_
1015 (Constrained_breaking): constructor now takes the Paper_score
1017 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1019 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1020 avoid parser lookahead for 0-ary functions.
1022 * lily/translator.cc: Extract event classes from
1023 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1025 2006-10-02 Heikki Junes <hjunes@gmail.com>
1027 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1030 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1032 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1033 function. Call the page breaking function selected in the
1034 `page-breaking' \paper variable, then the post processing function
1035 chosen using the `page-post-process' \paper variable.
1036 (line-height): new function. Return the height of a system.
1037 (line-minimum-position-on-page): new function. Return the position
1038 of a system on page (using the previous line position), only
1039 considering between system padding.
1040 (stretchable-line?): new function. Says whether a line can be
1041 stretched (ie. is not a title nor a single staff system).
1042 (page-maximum-space-left): new function. Computes space left on a
1043 page, when all systems are separated by their padding.
1045 * lily/page-breaking.cc (breaking::make_pages): Move page post
1046 processing function call to page breaking wrapper (common to all
1049 * lily/paper-book.cc (book::pages): call the page breaking
1050 wrapper, instead of the page breaker directly
1052 * ly/paper-defaults.ly: Add \paper variables for page breaking
1053 wrapper and page post processing function. Make
1054 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1055 `system-maximum-stretch-procedure' variable for holding a function
1056 computing the maximum stretch a system allows.
1058 * scm/layout-page-dump.scm (write-page-breaks): computes the
1059 stretch to apply to systems on a page to minimize left
1060 space. Dump this stretch length.
1062 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1063 the system-stretch property of the tweak data to stretch the
1065 (includePageLayoutFile): Void function which includes the
1066 generated page-layout file if it exists and if the page layout
1067 dumping is not asked.
1068 (scoreTweak): if the score tweak named by the argument exists,
1071 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1073 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1074 handle correctly the case where there are multiple \noPageBreaks
1077 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1079 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1081 * abc2ly.py fix so that entering " -- " will translate to a -- in
1082 the lilypond instead of a " - - "
1084 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1086 * lily/align-interface.cc: fix typo
1088 * lily/dynamic-text-spanner.cc (print): Add a special case for
1089 trill spanner right sides.
1091 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1093 * lily/align-interface.cc (get_extents_aligned_translates): add
1094 support for padding variable.
1096 * lily/break-align-interface.cc (self_align_callback): oops: use
1097 loop variable in guard.
1099 * input/regression/repeat-percent-grace.ly: new file.
1101 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1102 remember first currentCommandColumn of a grace run. Fixes issue 70.
1104 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1105 move class definition to CC file.
1107 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1109 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1110 measure-long repeats.
1112 * flower/include/international.hh: include stdarg.h
1114 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1116 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1117 put_systems_on_pages to return an empty result, we need to assign
1118 demerits properly in that case.
1119 (put_systems_on_pages): Make the number of pages depend on the
1120 evenness of page_number. Add auto-first-page-number.
1121 (calc_subproblem): ensure that the page-number is even for the
1122 left-hand page. Warn if the first page-turn doesn't fit onto the
1123 first (right-hand) page.
1125 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1126 (min_page_count): make this publicly accessible
1127 (min_page_count): fix a bug when there are forced page breaks that
1128 was introduced when I made this loop run backwards
1129 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1130 replace space_systems_on_min_pages with these two. The logic in
1131 space_systems_on_min_pages was getting too convoluted and is better
1132 contained in page-turn-page-breaking.
1134 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1136 (breakable_column): typo
1138 * lily/source-file.cc (get_line): fix off-by-one error
1139 and clean up some of the logic
1141 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1143 * lily/page-breaking.cc (make_pages): honour the first-page-number
1146 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1148 * VERSION (PACKAGE_NAME): bump version.
1150 2006-09-26 Pal Benko <benko.pal@gmail.com>
1152 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1153 (the latter is the same as petrucci-f which is kept for compatibility)
1155 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1157 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1159 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1161 * lily/global-context.cc (run_iterator_on_me): break out of loop
1162 if moment doesn't increase.
1164 * scm/define-grob-properties.scm (all-user-grob-properties): add
1167 * lily/accidental.cc (after_line_breaking): read forced property.
1169 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1172 * input/regression/accidental-forced-tie.ly: new file.
1174 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1176 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1178 * lily/figured-bass-engraver.cc: only listen to rest events if
1179 ignoreFiguredBassRest is not set.
1181 * scm/define-context-properties.scm
1182 (all-user-translation-properties): add ignoreFiguredBassRest property
1184 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1186 * lily/paper-book.cc (get_system_specs):
1187 (set_system_penalty): fix breakbefore.
1188 We used to set a penalty on the system after the break, now we
1189 set a permission on the system before the break
1191 * lily/grob-property.cc: add scm debugging hooks into
1192 property modification
1194 * lily/context-property.cc:
1196 rename make_foo_from_properties to internal_make_foo and
1197 move it from context-property.cc to a member function of
1200 * lily/include/lily-guile-macros.hh:
1201 overload ly_symbol2scm macro so that there is no more need
1204 * lily/volta-repeat-iterator.cc:
1205 * lily/tweak-engraver.cc:
1206 * lily/tuplet-bracket.cc:
1207 * lily/span-bar-engraver.cc:
1208 * lily/script-engraver.cc:
1209 * lily/prob-scheme.cc:
1210 * lily/pointer-group-interface.cc:
1212 * lily/grob-scheme.cc:
1213 * lily/grob-property.cc:
1215 * lily/context-property.cc:
1216 * lily/break-substitution.cc:
1217 * lily/break-align-engraver.cc:
1218 * lily/axis-group-interface.cc:
1219 * lily/align-interface.cc:
1220 remove calls to internal_FOO
1222 * lily/system-start-delimiter-engraver.cc:
1223 * lily/parenthesis-engraver.cc:
1224 * lily/accidental-engraver.cc:
1225 remove calls to make_foo_from_properties
1227 2006-09-23 Graham Percival <gpermus@gmail.com>
1229 * Documentation/user/programming-iterfaces.itely: fix
1230 def-music-function -> define-music... leftover.
1232 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1234 * lily/page-spacing.cc (min_page_count): by running the loop
1235 backwards, we can calculate ragged_last properly.
1237 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1239 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1240 printfirst-page-number -> print-first-page-number
1242 * python/convertrules.py: corresponding rule.
1244 * Documentation/user/page.itely (Page formatting): Document the
1245 default values of all page layout parameters.
1247 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1249 * lily/lexer.ll: remove limitation on music function arity. New
1250 mode extratoken, which inserts extra EXPECT_* tokens after
1251 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1253 * lily/parser.yy: Change grammar for music function accordingly.
1255 * lily/include/lily-parser.hh: New method get_state, new member
1256 hidden_state. Works around a problem when parser fetches
1257 MUSIC_FUNCTION token but not the following EXPECT_* token.
1259 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1262 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1263 references to Music; use ASSIGN_EVENT_ONCE everywhere
1265 * lily/grob-info.cc: junk *music_cause
1267 * lily/music.cc: copy eventified articulations to stream event
1269 * lily/part-combine-iterator.cc: Cleanup using enums
1271 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1274 * lily/include/engraver.hh: Junk music.hh include
1276 * lily/stream-event.cc: Changed constructors
1278 2006-09-21 Graham Percival <gpermus@gmail.com>
1280 * Documentation/user/tweaks.itely (Fitting music onto fewer
1281 pages): change settings to avoid warning messages.
1283 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1285 * Documentation/user/tweaks.itely (Fitting music onto fewer
1286 pages): Add between-system-space setting.
1288 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1290 * lily/accidental-placement.cc (calc_positioning_done): don't
1291 trigger Y-extent calculation too early. Use pure_height instead.
1293 * lily/scale.cc (LY_DEFINE): new file.
1295 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1297 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1298 that happen at the start of a score: having a zero-length
1299 chunk was messing up min_system_count calculations.
1301 * lily/source-file.cc (get_line): lower_bound, not
1302 binary_search. Fixes problem where point-and-click would
1303 always point to the first line.
1305 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1307 * lily/accidental-placement.cc (calc_positioning_done): also put
1308 stems into accidental support.
1310 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1313 * scm/script.scm (default-script-alist): avoid-slur and
1314 slur-padding for portato script.
1316 * lily/stem-tremolo.cc (translated_stencil): new function.
1317 (height): use new function. Fixes tremolos on whole notes.
1319 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1322 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1324 * scripts/abc2ly.py (try_parse_comment): idem.
1326 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1327 bar_string iso. string.find()
1331 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1334 2006-09-18 Graham Percival <gpermus@gmail.com>
1336 * Documentation/user/basic-notation.itely: add bug
1337 warning about ties and octavation/clef.
1339 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1341 * VERSION (PACKAGE_NAME): release 2.9.18
1343 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1345 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1346 figure out midi file names right here.
1348 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1350 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1352 * scm/backend-library.scm: option naming: gs-font-load*s*
1354 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1357 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1359 * scm/define-music-types.scm (music-descriptions): remove
1360 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1361 Music::to_event doesn't complain.
1363 * lily/accidental-placement.cc (ape_compare):
1364 * lily/semi-tie.cc (compare):
1365 * lily/note-column.cc (shift_compare): replace by XXX_less
1367 * lily/tie-formatting-problem.cc (set_chord_outline):
1368 * lily/tie-column.cc (calc_positioning_done):
1369 * lily/system.cc (post_processing)
1371 * lily/stem.cc (note_head_positions)
1372 (calc_positioning_done):
1373 * lily/spanner.cc (do_break_processing)
1374 (find_broken_piece):
1375 * lily/span-bar.cc (print):
1376 * lily/semi-tie-column.cc (calc_positioning_done):
1377 * lily/rest-collision.cc (calc_positioning_done):
1378 * lily/program-option.cc (get_help_string):
1379 * lily/note-collision.cc (get_clash_groups):
1380 * lily/new-fingering-engraver.cc (position_scripts):
1381 * lily/keyword.cc (Keyword_table):
1382 * lily/hara-kiri-group-spanner.cc (request_suicide):
1383 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1384 * lily/accidental-placement.cc (calc_positioning_done):
1386 * lily/beam.cc (get_beam_segments):
1387 * lily/grob-array.cc (remove_duplicates):
1390 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1391 ragged-last-bottom = ##f (test the new page breaker)
1393 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1395 * scm/define-context-properties.scm
1396 (all-internal-translation-properties): remove properties that
1397 were used to communicate page-turn stuff to the paper-column
1400 * lily/lily-guile.cc (robust_scm2string): new function
1402 * lily/paper-column-engraver.cc: Clean up page turn stuff
1404 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1405 instead of cluttering up paper-column-engraver.cc
1407 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1409 * scm/layout-page-dump.scm (scm): export utility function names,
1410 to allow user writing cutsom dumping functions.
1412 * scm/layout-page-layout.scm: export utility function names to
1413 enable custom page breaking function writing. Tabify.
1414 (line-next-space): use ?-suffix only for predicates
1415 (page-maximum-space-to-fill): new function. Return the space
1416 between first and bottom system of a page, to give to
1418 (space-systems): use a space-to-fill argument (for instance as
1419 computed by page-maximum-space-to-fill) instead of computing
1420 internaly this space with the page height. That way, the caller
1421 can adjust the space to use.
1422 (make-page-from-systems, walk-paths): compute space to fill before
1423 calling space-systems.
1425 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1427 * scm/script.scm (default-script-alist): set paddings for every
1428 type here, increase for portato mark.
1430 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1433 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1435 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1436 use spanner::set-spacing-rods
1438 * lily/note-column.cc: reformat.
1440 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1441 step positioning for note/rest combinations.
1443 * input/regression/rest-note-collision.ly: new file.
1445 * scm/define-grobs.scm (all-grob-descriptions): add
1448 * flower/include/std-vector.hh: switch off again.
1450 * VERSION (PATCH_LEVEL): bump to 2.9.18
1452 * flower/include/std-string.hh: idem.
1454 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1456 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1458 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1461 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1463 * Documentation/user/page.itely: update page breaking documentation
1465 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1467 * lily/note-collision.cc (calc_positioning_done): only access
1468 first head if available.
1470 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1472 * scm/framework-ps.scm (output-preview-framework): use new name.
1474 * lily/program-option.cc (internal_set_option): use new names.
1476 * Documentation/user/SConscript (lilypond_book_flags): update -d
1479 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1480 output into other programs): new variable names.
1482 * scm/lily.scm (define-scheme-options): uniformize var names.
1484 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1485 tuplets_ is non-empty before popping.
1487 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1489 * lily/spanner.cc (find_broken_piece):
1490 * lily/spacing-spanner.cc (get_columns):
1491 * lily/source-file.cc (get_line):
1492 * lily/simple-spacer.cc (get_column_description):
1493 * lily/keyword.cc (lookup):
1494 use the new binary search.
1496 * flower/include/std-vector.hh: replace binary_search with
1497 a more STL-like version
1499 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1501 * lily/tie-performer.cc: remove unused last_event_ property.
1502 (class Tie_performer): add now_tied_heads_ property for
1503 partially-tied heads.
1504 (acknowledge_audio_element): when adding an Audio_note, put the
1505 note in now_tied_heads_ if the audio note is partially tied.
1506 (stop_translation_timestep): always include entries in
1507 now_tied_heads_ in heads_to_tie_.
1509 * lily/drum-note-performer.cc (process_music): look for tie-events
1510 in the articulations; pass to Audio_note constructor.
1512 * lily/note-performer.cc (process_music): look for tie-events in
1513 the articulations; pass to Audio_note constructor.
1515 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1518 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1519 include initializer in constructor.
1521 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1523 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1524 unless they are breakable. This fixes discrepancies between the forces
1525 calculated here and the forces calculated in get_line_configuration.
1527 * lily/grob.cc (pure_relative_y_coordinate): fix some
1528 mis-estimation that was happening with piano staves.
1530 * lily/constrained-breaking.cc (resize): don't choke if we get a
1531 measure that won't fit on a line.
1532 (combine_demerits): don't consider uniformity when ragged
1534 * lily/page-spacing.cc (solve): why the f* were there two of these?
1535 (calc_subproblem): properly handle the case where a system is taller
1538 * lily/system.cc (get_paper_system): ensure that all the permissions
1539 and penalties are passed to the paper systems.
1541 * lily/page-breaking.cc (create_system_list): support system-count.
1543 * scm/define-grobs.scm (pure-print-callbacks): add
1544 ly:script-interface::print
1546 * lily/page-spacing.cc (min_page_count): fix calculation of min
1547 pages if we are ragged and there are non-zero springs.
1549 * scm/layout-page-layout.scm: if the pure-height estimates are under
1550 the real height, allow space-systems to ignore padding if it is
1551 needed in order to fit the systems on one page
1553 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1555 (solve): fix performance problem. Make sure we always get at least
1558 * lily/page-breaking.cc (make_pages): include write-page-breaks
1561 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1563 * scm/define-grobs.scm: add the new slur-callback
1564 fix pure-relevant to not exclude grobs whose extent is already
1567 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1570 * lily/slur.cc (pure_height): new callback to estimate the height
1573 2006-09-02 Graham Percival <gpermus@gmail.com>
1575 * Documentation/user/invoking.itely: small update on
1576 MacOS X notes; thanks Trevor!
1578 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1580 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1582 * lily/lexer.ll: accept EOF in all states.
1584 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1586 * lily/source-file.cc (Source_file): always 0-terminate character
1587 array, to prevent Flex from barfing.
1589 * lily/global-context.cc (get_output): robustness: don't crash if
1590 no Score context found.
1592 * lily/include/book.hh (class Book): idem.
1594 * lily/include/context-def.hh (struct Context_def): idem.
1596 * lily/include/score.hh (class Score): don't derive from Input.
1598 * lily/book.cc (Book): add a copy ctor.
1600 * buildscripts/output-distance.py (FileLink.calc_distance): count
1601 orphans in distance too.
1603 * python/midi.c (midi_parse_track): robustness: don't read past
1606 * ly/performer-init.ly: add Control_track_performer, move
1607 Tempo_performer and Time_signature_performer to Score.
1609 * lily/score-performer.cc (acknowledge_audio_elements): override
1610 from base class: add to audio-columns
1612 * lily/control-track-performer.cc (add_text): new file: generate
1615 * lily/performance.cc: move output_header_track to
1616 Control_track_performer ()
1618 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1620 * lily/include/midi-item.hh (class Midi_channel_item): insert
1621 class into hierarchy, for items that can have a channel setting. Dehungarify.
1623 * lily/include/performer.hh (class Performer): remove
1624 play_element(); move functionality into announce/acknowledge.
1626 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1628 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1629 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1631 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1633 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1636 * lily/all-font-metrics.cc: remove TFM support.
1638 * lily/include/tfm.hh: remove TFM support, TFM reader.
1640 * lily/include/binary-source-file.hh: remove Binary_source_file.
1642 2006-08-27 Graham Percival <gpermus@gmail.com>
1644 * Documentation/topdocs/NEWS.itely: add @c marker for
1645 stuff I've processed.
1647 * Documentation/user/ various: info from NEWS.
1649 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1651 * lily/paper-column-engraver.cc (finalize): Oops, this change
1652 should have gone in on 2006-08-23
1654 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1656 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1657 quotes to quote arguments. Fixes Windows problem.
1659 * python/lilylib.py (progress): idem
1661 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1663 * scripts/musicxml2ly.py: fix for importing
1664 minor key signatures from MusicXML. (Phillip Kirlin)
1666 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1668 * python/musicxml.py:
1669 (Attributes.get_key_signature): now correctly retrieves mode from
1672 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1674 * lily/parser.yy (output_def_body): take ownership of identifier
1677 * Documentation/user/advanced-notation.itely (Metronome marks):
1678 update use of \tempo in \midi.
1680 * VERSION: release 2.9.16
1682 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1684 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1687 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1689 * input/regression/tie-chord-partial.ly: clarify example.
1691 * scm/define-music-properties.scm (all-music-properties): remove
1694 * ly/music-functions-init.ly: remove \untied.
1696 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1697 stream events and music events.
1698 (stop_translation_timestep): search acknowledged heads for
1701 * input/regression/tie-chord-partial.ly: new file.
1703 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1704 for \char markup command.
1706 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1708 * scm/define-music-types.scm (music-descriptions): consistency:
1709 Use solo-{one,two}-event iso. solo-[12]-event.
1711 * lily/part-combine-engraver.cc (process_music):
1712 Use solo-{one,two}-event iso. solo-[12]-event.
1714 * ly/declarations-init.ly (partCombineListener): add Timing as
1717 * flower/std-string.cc (string_copy): use copy ()
1719 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1721 2006-08-24 Graham Percival <gpermus@gmail.com>
1723 * Documentation/user/changing-defaults.itely, global.itely,
1724 lilypond-book.itely, page.itely: minor changes from mailist.
1726 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1728 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1731 * scm/define-context-properties.scm
1732 (translator-property-description): robustness: detect type errors
1733 in property definitions.
1735 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1736 after getting it from SCM.
1738 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1741 * lily/include/performer.hh (class Performer): strip get_tempo()
1744 * lily/midi-def.cc: strip file.
1746 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1748 * lily/include/context-def.hh (struct Context_def): use
1749 VIRTUAL_COPY_CONSTRUCTOR().
1751 * lily/source-file.cc: smobification.
1753 * lily/include/source-file.hh (class Source_file): smobify
1754 Source_file. Trim redundant members.
1756 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1757 clones after creation. This plugs a huge memory leak.
1759 * python/convertrules.py (FatalConversionError.sub_tempo):
1760 complete rule for \midi{ \tempo }
1762 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1764 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1766 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1768 * input/regression/optimal-page-breaking-hstretch.ly: test for
1769 ragged-last-bottom also
1771 * lily/paper-column-engraver.cc (finalize): make the end of a score
1772 breakable by default. This is to balance out a change in behaviour
1773 of the page-turn-breaker which no longer makes the end of a score
1776 * lily/paper-book.cc (pages): set the systems_ once the pages are
1779 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1780 Page_breaking interface.
1782 * lily/page-breaking.cc (class Page_breaking): make the interface
1783 more consistent and provide abstractions for dealing with
1786 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1787 algorithm. Use the new interface to Page_breaking.
1789 * lily/page-spacing.cc: better support for ragged-bottom and
1792 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1794 * python/convertrules.py (conv): warning on \tempo{}
1796 * ly/performer-init.ly: set tempoWholesPerMinute.
1798 * ly/midi-init.ly: remove \midi
1800 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1803 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1804 tempoUnitDuration for determining what to print.
1806 * lily/lyric-extender.cc: typo.
1808 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1810 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1813 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1815 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1816 eps-pad-boxes is set.
1818 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1820 * THANKS: update sponsors.
1822 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1824 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1826 * input/regression/tie-chord-untied.ly: new file.
1828 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1830 * scm/define-music-properties.scm (all-music-properties): add
1833 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1835 (headertext_nopics): sanitize no-examples text.
1837 * scm/page.scm (make-page-stencil): don't rely on extents of
1838 page-stencil. This fixes spurious space around .EPS files produced
1839 with the EPS backend.
1841 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1843 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1845 * lily/hara-kiri-engraver.cc (process_music): remember
1846 keepAliveInterfaces after processing \set
1848 * lily/lyric-extender.cc (print): support left/right-padding for
1851 * scm/documentation-generate.scm (string-append): revert lilypond/
1854 2006-08-20 Graham Percival <gpermus@gmail.com>
1856 * Documentation/user/lilypond.tely: clarification to
1857 license presentation (not to actual license).
1859 * Documentation/user/basic-notation.itely,
1860 instrument-notation.itely: minor changes.
1862 * input/ {regression, test}/+.ly: clarification to
1863 text (you can click on examples). Thanks, Mats!
1865 * input/manual/bar-lines.ly: adds ||: repeats.
1867 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1869 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1871 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1873 * Documentation/user/lilypond.tely: strip lilypond/ from info
1874 links, rename to category LilyPond
1876 * lily/pango-font.cc (description_string): new function.
1878 * VERSION: release 2.9.15
1880 * lily/spacing-engraver.cc (stop_translation_timestep): use
1881 Dscho's fix for spacing spanner.
1883 * scm/define-music-types.scm (music-descriptions): use
1884 apply-output-event for ApplyOutputEvent
1886 * lily/output-property-engraver.cc (listen_apply_output): rename
1887 from listen_layout_instruction.
1889 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1892 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1894 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1895 commandline args with contains, split by \n.
1897 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1898 write snippet-names file, call with -dread-file-list. Fixes
1899 command limitations on 64-bit systems.
1901 * input/regression/stencil-color-rotation.ly: new file.
1903 * lily/include/translator.hh (struct Acknowledge_information):
1904 revert: don't use Protected_scm in global objects, as GUILE can't
1905 handle gc_unprotect from automated destructors on MacOS X.
1907 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1908 color, not the original stencil. Fixes combinations of
1909 color/transparency/rotation.
1911 * scripts/lilypond-book.py (main): add --formats=eps for
1914 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1915 crash if spacing_ is nonexistent.
1917 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1919 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1920 \catcode`\@=12 in the LaTeX output.
1922 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1924 * scm/define-music-types.scm (music-descriptions):
1925 use sustain-event iso. sustain-pedal-event.
1927 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1929 * scripts/convert-ly.py: honour the -n command-line switch
1931 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1933 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1934 break specification.
1936 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1938 * Documentation/user: convert-ly the user manual
1940 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1942 * stepmake/aclocal.m4: version check patch (thanks MWD)
1944 * ly/music-functions-init.ly: robustness. Don't crash if
1945 currentBarNumber is not a number.
1947 * VERSION (PATCH_LEVEL): bump.
1949 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1951 * stepmake/aclocal.m4: better version check; handle fooX.Y
1954 * ly/performer-init.ly: instrument name fixup.
1956 * input/manual/chord-names-jazz.ly (banterProperties):
1957 instrumentName update
1959 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1961 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1963 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1964 function. Use hash tables to check membership.
1966 * lily/general-scheme.cc (LY_DEFINE): new function.
1968 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1970 * lily/include/translator.hh (struct Acknowledge_information): add
1973 * ly/music-functions-init.ly: change name to BreathingEvent
1975 * input/regression/*.ly: apply it.
1977 * python/convertrules.py (conv): better instrumentName conversion
1980 * scm/define-music-types.scm (music-descriptions): add
1981 line-break-event to LineBreakEvent music
1983 * lily/music.cc (to_event): don't crash if music type not set.
1985 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1988 * lily/spacing-engraver.cc (stop_translation_timestep): set
1989 spacing for proportional notation too.
1991 * scm/translation-functions.scm (format-bass-figure): inspect
1994 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1996 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1998 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2000 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2002 * scm/layout-page-layout.scm (make-page-from-systems): new function
2003 (optimal-page-breaks): use the new page-breaking calling convention
2005 * scm/define-context-properties.scm (all-user-translation-properties):
2008 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2009 revokePageTurns functionality. If there is a special barline within
2010 the breakable region, break there instead of at the end of the region.
2012 * lily/paper-book.cc (pages): use the new page-breaking calling
2015 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2017 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2019 * scripts/lilypond-book.py: insert \sourcefileline command in
2020 output, so lilypond error messages refer to the spot in the
2021 original .lytex / .itely sourcefile.
2023 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2025 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2026 space to next column for distance to fixed col.
2028 * VERSION (PACKAGE_NAME): release 2.9.14
2030 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2033 * lily/accidental-engraver.cc (process_acknowledged): don't create
2034 accidental for trill span event. This fixes spurious accidentals
2037 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2039 * scm/define-grob-properties.scm (all-user-grob-properties):
2040 Clarify documentation of side-axis and direction. Thanks to Paul
2041 for the inspiration.
2043 * lily/bar-line.cc: Add documentation for "||:" also in the
2044 interface documentation.
2046 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2048 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2050 * lily/paper-column.cc (set_system): new function.
2052 * lily/spacing-engraver.cc (stop_translation_timestep): store
2053 SpacingSpanner refs in Paper_column.
2055 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2056 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2058 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2060 * lily/beam-engraver.cc (listen_beam): add method for
2061 Grace_beam_engraver too.
2063 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2065 * python/convertrules.py: Fix indentation bug that broke
2066 conversion of files older than 1.3.117.
2067 Fix escape error in the description for 2.9.6.
2069 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2071 * lily/*-engraver.cc: convert all try_music functions to listen_*
2074 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2075 enums to represent pedal types, and calculate more data statically.
2077 * scm/part-combiner.scm (recording-group-emulate): create a
2078 softcoded substitute for recording-group-engraver.cc.
2080 * lily/music.cc: make a common transpose function for events and
2083 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2084 ManualMelismaEvent, and obsoletes Melisma_translator.
2086 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2088 * input/test/instrument-name-align.ly: update version.
2090 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2092 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2093 Doc the --pdf flag to lilypond-book.
2095 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2097 * Documentation/topdocs/NEWS.tely (Top): add description.
2099 * input/regression/tuplet-full-length-note.ly: add file.
2101 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2102 always store axis group.
2104 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2106 * input/regression/instrument-switch.ly: new file.
2108 * lily/instrument-switch-engraver.cc (process_music): new file.
2110 * ly/engraver-init.ly: add Instrument_switch_engraver
2112 * ly/music-functions-init.ly: \instrumentSwitch
2114 * scm/define-context-properties.scm
2115 (all-user-translation-properties): add instrumentCueName
2117 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2119 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2121 * ly/music-functions-init.ly: music function \transposition.
2123 * lily/parser.yy (command_element): softcode \transposition.
2125 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2126 (process_music): oops.
2128 * lily/instrument-name-engraver.cc (start_spanner): new
2129 function. Create spanner when property changes.
2130 (stop_spanner): new function.
2132 * python/convertrules.py (conv): add rule.
2134 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2135 shortInstrumentName iso. instr.
2137 * scm/output-ps.scm (dashed-line): add phase argument to
2140 * lily/bar-line.cc (dashed_bar_line): new function.
2141 (compound_barline): support \bar "dashed".
2143 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2144 --output=DIR to DIR/BASE if it is a dir.
2146 * flower/file-name.cc (file_part): new function
2147 (dir_part): new function
2149 * lily/lily-parser-scheme.cc (LY_DEFINE):
2151 * DEDICATION: update
2153 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2155 * lily/instrument-name-engraver.cc: formatting.
2157 * python/convertrules.py (conv): bugfix for \epsfile.
2159 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2163 * lily/gourlay-breaking.cc: Oops, these should have been included
2166 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2168 * scripts/*.py (program_name): cleanup relocation snippets.
2170 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2172 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2174 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2175 page-breakable by default
2177 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2178 correctly calculated for a single-system page
2180 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2181 bigger than the second number
2183 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2184 acknowledge that we aren't satisfying constraints)
2186 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2189 * lily/grob.cc (pure_height): add minimum-Y-extent
2191 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2194 * lily/constrained-breaking.cc: convert code to use new Matrix class
2195 (get_best_solution): new function
2197 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2198 is a page with no systems
2200 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2202 * VERSION (PACKAGE_NAME): release 2.9.13
2204 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2207 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2209 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2211 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2214 * scm/define-grob-properties.scm (all-user-grob-properties):
2215 remove grace-space-factor.
2217 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2218 grace-spacing-interface
2219 (spacing-options-interface): add.
2221 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2223 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2225 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2226 GraceSpacing object.
2228 * lily/note-spacing.cc: fix prop list formatting
2230 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2231 beaming for grace notes too.
2233 * input/regression/spacing-grace.ly: update.
2235 * lily/grace-spacing-engraver.cc: new file.
2237 * lily/spacing-spanner.cc: add strict-grace-spacing.
2239 2006-07-20 Graham Percival <gpermus@gmail.com>
2241 * lily/parser.yy: compile fix.
2243 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2245 * scm/define-grobs.scm (all-grob-descriptions): typo.
2247 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2248 .eps extension from includegraphics.
2250 * scripts/lilypond-book.py (main): add support for --pdf.
2252 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2253 callback to compute common shortest duration.
2254 (set_springs): typo.
2256 * scm/define-grob-properties.scm (all-user-grob-properties): add
2257 strict-grace-spacing.
2259 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2260 support float_grace_columns_.
2262 * lily/spacing-options.cc (init_from_grob): new file.
2264 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2266 * input/regression/spacing-loose-grace.ly: new file.
2268 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2270 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2271 tupletFullLengthNote too. Choose right bound depending on value.
2273 * input/regression/tuplet-full-length-note.ly: new file.
2275 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2277 * lily/*-performer.cc: Converted try_music to listen_*
2279 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2280 as a stream-event internally. Introduce event_cause (), deprecate
2283 * scm/define-music-types.scm: Removed BusyPlayingEvent
2285 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2287 * Documentation/user/advanced-notation.itely (Font selection):
2288 Document how to get a list of available fonts using 'lilypond
2289 -dshow-available-fonts blabla'.
2291 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2293 * GNUmakefile.in: filter lily-XXX.pdf files.
2295 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2297 * scm/define-grob-properties.scm (all-internal-grob-properties):
2298 remove delta-pitch. Use delta-position everywhere.
2300 * scm/output-lib.scm (fall::print): use new order.
2302 * scm/output-ps.scm (path): reorder arguments.
2304 * scm/output-svg.scm (path): support for path primitive.
2306 * input/regression/bend-after.ly: new file.
2308 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2309 recipe for eps -> pdf conversion.
2311 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2313 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2316 2006-07-19 Graham Percival <gpermus@gmail.com>
2318 * input/manual/screech-boink.ly: moved to here.
2320 * input/screech-boink.ly: deleted.
2322 * scm/define-grob-properties.scm: clarify doc string.
2324 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2326 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2328 * scm/output-ps.scm (path): define path.
2330 * scm/define-stencil-commands.scm
2331 (ly:register-stencil-expression): add path.
2333 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2335 * ly/engraver-init.ly: add Fall_engraver
2337 * lily/parser.yy (music_function_event): allow musicfunction
2338 without music arg as music_function_event.
2340 * lily/grob-scheme.cc (LY_DEFINE):
2341 ly:grob-robust-relative-extent. New function.
2343 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2345 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2347 * scm/output-lib.scm (fall::print): new function
2349 * lily/fall-engraver.cc (stop_fall): new file.
2351 * ly/music-functions-init.ly: alphabetise.
2353 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2356 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2358 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2360 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2363 * lily/translator-group.cc (connect_to_context): non const error message.
2365 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2367 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2370 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2372 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2374 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2377 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2379 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2381 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2383 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2385 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2387 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2389 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2391 * scm/layout-page-layout.scm: Define module, tidy code, use more
2392 functions iso. a single big one.
2394 * scm/layout-page-dump.scm: move page dump functions used in two
2395 pass spacing to this file. Define module.
2397 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2400 * ly/paper-defaults.ly: use module layout-page-layout.
2402 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2404 * lily/music.cc: Revised MusicEvent event class. It now contains
2405 event data directly instead of encapsulating it in music. The
2406 previously used class is renamed to OldMusicEvent.
2408 * lily/stream-event.cc: Stream events are now probs.
2410 * lily/translator-group.cc, lily/translator.cc: Translators can
2411 now listen directly to stream events, by using macros
2412 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2414 * lily/arpeggio-engraver.cc: Converted to use new event system
2416 * THANKS: Corrected spelling mistake.
2418 2006-07-12 Graham Percival <gpermus@gmail.com>
2420 * Documentation/user/SConscript, make/lilypond-vars.make,
2421 input/GNUmakefile: doc build looks in input/manual instead
2424 * input/manual/ GNUmakefile, SConscript: build files for
2427 * input/test/ various: some files moved to input/manual/
2429 * Documentation/user/basic-notation.itely: small updates;
2430 thanks Kieren and Charles!
2432 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2434 * VERSION (PACKAGE_NAME): release 2.9.11
2436 * Documentation/topdocs/NEWS.tely (Top): update prop value
2438 * Documentation/user/basic-notation.itely (Tuplets): new property
2441 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2443 * python/convertrules.py (conv): tweaks.
2445 * VERSION (PATCH_LEVEL): bump version.
2447 * python/convertrules.py (conv): add rule for
2448 tupletNumberFormatFunction.
2450 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2451 tupletNumberFormatFunction.
2453 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2454 text through 'text callback.
2456 * lily/time-scaled-music-iterator.cc (construct_children): copy
2457 tweaks generated events.
2459 * scm/define-context-properties.scm
2460 (all-user-translation-properties): remove tupletNumberFormatFunction
2462 * lily/tuplet-engraver.cc (process_music): don't read
2463 tupletNumberFormatFunction
2465 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2468 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2470 * lily/global-context-scheme.cc: Separated ly:run-translator into
2473 * lily/score-engraver.cc, lily/score-performer.cc,
2474 scm/define-context-properties.scm: Make paper/midi output
2475 accessable as a context property.
2477 * lily/score-translator.cc, lily/score-context.cc: Removed.
2479 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2481 * scm/ps-to-png.scm (Module):
2482 * scm/framework-tex.scm (Module):
2483 * scm/framework-ps.scm (Module):
2484 * scm/backend-library.scm (Module):
2485 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2486 "dDEVICEHEIGHTPOINTS".
2488 2006-07-04 Graham Percival <gpermus@gmail.com>
2490 * Documentation/user/ various: general improvements to
2491 "working with lilypond files" section.
2493 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2495 * lily/sequential-iterator.cc: Change the default get_music_list
2496 to read elements-callback music property
2498 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2499 processing of multimeasure rests. Softcoded
2500 sequential-music-iterator.
2502 * lily/sequential-music-iterator.cc: Removed.
2504 2006-06-28 Graham Percival <gpermus@gmail.com>
2506 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2508 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2510 * lily/parser.yy: Wrap non-post-events in EventChords before
2511 assigning them to identifiers.
2513 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2515 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2516 gives correct vertical placement of \bar ":" in all staff
2517 sizes. Thanks Martial!
2519 2006-06-26 Graham Percival <gpermus@gmail.com>
2521 * Documentation/user/invoking.itely : minor update from mailist.
2523 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2525 * lily/ various: Introduce stream events of types Prepare,
2526 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2527 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2529 * lily/global-context*.cc: Time is now -inf before iteration
2532 * lily/include/context.hh: Removed unique_, init_
2534 * Documentation/topdocs/NEWS: Make the feathered beam example
2535 avoid triggering a bug.
2537 2006-06-24 Graham Percival <gpermus@gmail.com>
2539 * Documentation/user/ various: small additions from mailist.
2541 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2543 * ly/performer-init.ly: Add some missing links in the context
2544 hierarchy for MIDI output. There are probably some more missing!
2546 2006-06-21 Graham Percival <gpermus@gmail.com>
2548 * Documentation/user/ various: minor spelling fixes;
2549 thanks Dave Luttinen!
2551 * Documentation/user/ various: small clarifications;
2552 thanks Anthony Youngman!
2554 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2556 * po/fr.po: add \n appropriately.
2558 * lily/lexer.ll: remove ? from version-seen?
2560 2006-06-19 John Mandereau <john.mandereau@free.fr>
2562 * po/fr.po; update translation, by Jean-Charles Malahieude and
2565 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2567 * THANKS: add Markus Schneider.
2569 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2570 Staff_symbol_engraver
2572 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2573 replace staff_engraver
2575 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2578 * lily/staff-collecting-engraver.cc
2579 (acknowledge_end_staff_symbol): new function
2581 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2583 * lily/staff-collecting-engraver.cc
2584 (acknowledge_end_staff_symbol): new function.
2586 * lily/main.cc: switch on relocation by default.
2588 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2590 * lily/spacing-spanner.cc (musical_column_spacing): set
2591 compound_fixed_note_space to 0.0. Document why.
2593 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2594 range of inverse_hooke_
2595 (Simple_spacer): init completely.
2597 (get_line_configuration): don't use cols.resize(); it introduces
2600 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2602 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2604 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2605 try. Divide by beatlength.
2607 * input/regression/beaming-ternary-metrum.ly: update doc.
2608 add beatLength hack.
2610 * scm/music-functions.scm (make-time-signature-set): add
2611 standard-beat-grouping.
2613 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2615 * input/regression/tie-whole.ly: new file.
2617 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2618 cross center of note head in case of invisible stem.
2620 2006-06-16 Graham Percival <gpermus@gmail.com>
2622 * Documentation/user/ various: small fixes from mailist.
2624 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2626 * lily/breathing-sign.cc (offset_callback): idem.
2628 * lily/align-interface.cc (align_to_fixed_distance): remove
2631 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2634 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2636 * VERSION (PACKAGE_NAME): release 2.9.9
2638 * ly/lilypond-book-preamble.ly: add \version
2640 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2642 * scripts/lilypond-book.py (PREAMBLE_LY): include
2643 lilypond-book-preamble.ly
2645 * lily/stem.cc (get_beaming): return max of 0 and
2646 scm_ilength. Fixes slurring from/to beams.
2648 * ly/lilypond-book-preamble.ly: new file.
2650 * lily/slur.cc: add inspect-index feature.
2652 2006-06-13 Graham Percival <gpermus@gmail.com>
2654 * Documentation/user/tutorial.itely: trivial fix.
2656 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2658 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2659 all non-event music in the parser via MAKE_SYNTAX.
2661 * lily/parser-scheme.cc: Add ly:parser-error function
2663 * scm/paper.scm: fix typo
2665 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2669 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2672 * buildscripts/output-distance.py (test_compare_signatures):
2674 (read_signature_file): use new signature format.
2676 * scm/stencil.scm (write-system-signature): simpler signature
2679 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2682 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2683 stem_end_position, but estimate instead.
2685 * lily/tuplet-bracket.cc (calc_positions): look at
2686 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2687 brackets narrower than beams.
2689 * lily/lexer.ll: set version-seen? even if version is
2692 * lily/rest.cc (y_offset_callback): bugfix: decide position
2693 override based on scm_is_number(). Fixes \rest on center staff
2696 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2697 patterns for 16th triplets.
2699 2006-06-10 Graham Percival <gpermus@gmail.com>
2701 * Documentation/user/ page.itely, global.itely: editing
2704 * Documentation/user/ various: findex -> funindex.
2706 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2708 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2709 insert extra tuplet events.
2711 2006-06-10 Graham Percival <gpermus@gmail.com>
2713 * Documentation/user/programming-interfaces.itely: add
2716 * python/convertrules.py: add annotatefoo -> annotate-foo
2719 * Documentation/user/global.itely: start editing.
2721 * Documentation/user/page.itely: major editing, new spacing
2724 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2726 * scm/define-markup-commands.scm (wordwrap-markups): use
2727 output-def 'line-width if undefined.
2729 * HACKING: trim outdated info.
2731 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2733 * scm/define-grobs.scm (all-grob-descriptions): Add
2734 line-spanner-interface to all grobs that already have
2735 text-spanner-interface or dynamic-text-spanner-interface
2737 * scm/page.scm: Rename annotate{headers,systems,page}->
2740 * input/regression/page-spacing.ly,
2741 input/regression/page-layout-manual-position.ly: idem
2743 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2745 * lily/line-spanner.cc: cleanup property list.
2747 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2748 generator expressions (2.3 compat).
2750 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2752 * lily/vertical-align-engraver.cc: Make sure that the
2753 align{Above,Below}Context properties are included in the automatic
2756 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2758 * scm/paper-system.scm (paper-system-annotate): also annotate the
2759 estimated pure-Y-extent
2761 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2763 * lily/system.cc (break_into_pieces): set the estimated height
2764 of each child system
2766 * lily/stem.cc (pure_height): new pure-Y-extent callback
2768 * lily/staff-symbol-referencer.cc (callback): don't destroy
2769 the staff-position property
2771 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2772 consider_suicide into two functions
2774 * lily/constrained-breaking.cc (resize): use the new pure
2775 callbacks to estimate the height of a system
2777 * lily/axis-group-interface.cc (pure_group_height): new
2778 side-effect-free VerticalAxisGroup height-callback
2780 * lily/align-interface.cc (get_extents_aligned_translates):
2781 split align_elements_to_extents into two functions
2782 (get_pure_child_y_translation): new function
2784 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2786 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2788 * lily/paper-score.cc: cache break_indices and columns
2790 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2792 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2794 * lily/font-config.cc (init_fontconfig): do the init if
2795 cache_file, but don't look at cache_file.
2797 * input/regression/quote-tie.ly: new file.
2799 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2800 to Head_event_tuple, so we deal gracefully with ties on
2803 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2806 2006-06-08 Graham Percival <gpermus@gmail.com>
2808 * input/test/ smart-transpose.ly, reverse-music.ly:
2809 \applyMusic to music functions update, thanks Michael!
2811 2006-06-07 Graham Percival <gpermus@gmail.com>
2813 * input/test/ add-staccato.ly, add-text-script.ly,
2814 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2815 music functions update, thanks to Michael Meixner.
2817 * Documentation/user/music-glossary.tely: small fix
2820 * Documentation/user/ various: minor additions from mailist.
2822 * Documentation/user/lilypond.tely, basic-notation.itely:
2823 small test of @funindex. (works here)
2825 * input/test/font-table.ly: reduce size to partially
2826 de-ugly version in manual.
2828 * Documentation/user/page.itely: new file (split former
2829 "global issues" into "page settings" and "non-musical
2832 * Documentation/user/ various: fix @ref{}s to match
2833 new chapter names (above).
2835 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2837 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2839 2006-06-06 Graham Percival <gpermus@gmail.com>
2841 * Documentation/user/advanced-notation.itely: add example
2842 for segno/coda on barline.
2844 * tex/texinfo.tex: merge from upstream.
2846 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2848 * scripts/lilypond-book.py (process_snippets): Argument fix.
2851 * buildscripts/builder.py:
2854 * Documentation/user/SConscript: More SCons fixes.
2856 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2858 * lily/font-config.cc (init_fontconfig): Only initialize if
2859 global cache_file is found.
2861 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2863 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2866 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2868 * VERSION (PACKAGE_NAME): release 2.9.8
2870 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2871 function. Delay ledger modifying ledgered grobs to
2872 stop_translation_timestep(), to ensure that we're ledgering
2873 according to the new spanner.
2874 (acknowledge_staff_symbol): don't check for non-NULL
2875 staff_sym->get_bound()
2877 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2880 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2883 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2884 directly from srcdir/stepmake/aclocal.m4
2886 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2889 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2891 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2893 * lily/simple-spacer.cc (get_line_configuration): add
2894 keep-inside-line rods
2895 (struct Column_desc): add constructor
2896 (struct Rod_desc): add constructor
2897 (get_line_forces): check for forced page breaks here too
2899 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2900 support/elements cycles between InstrumentNames and AxisGroups
2902 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2904 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2906 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2907 make-txt-files target.
2909 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2910 make-txt-files target.
2912 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2914 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2917 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2919 * Documentation/user/instrument-notation.itely,
2920 input/regression/breathing-sign-ancient.ly,
2921 input/test/divisiones.ly: Removed redundant property settings for
2924 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2925 fix lyrics alignment problems. They are implemented now as scheme
2926 functions that add the appropriate unicode char to the first lyric
2927 event rather than adding a separate lyric event. Minor edit of
2930 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2932 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2933 pollute src dir with built .txt files, but install directly from
2934 Documentation/topdocs/out/
2936 * buildscripts/output-distance.py
2937 (ComparisonData.create_html_result_page): put version/directories
2940 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2943 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2944 Patch by Karl Hammar
2946 * buildscripts/readlink.py: add file.
2947 Patch by Karl Hammar
2949 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2951 * lily/tuplet-number.cc (print): prevent stencil from being
2954 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2956 * scm/stencil.scm (write-system-signature): explicitly
2957 -well, superfluously- close output port.
2959 * buildscripts/output-distance.py (main): oops. Add extra argument.
2961 2006-06-05 Graham Percival <gpermus@gmail.com>
2963 * Documentation/user/music-glossary.tely: clarified example
2964 from Francisco Vila, thanks!
2966 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2968 * input/regression/spacing-section.ly: new file.
2970 * lily/input.cc (programming_error): new function.
2972 * lily/spacing-engraver.cc (try_music): new function. Accept
2973 spacing-section-event
2975 * lily/spacing-spanner.cc (set_springs): take slices of all
2976 columns for spacing.
2978 * lily/include/paper-column.hh (class Paper_column): add
2979 Paper_column::compare.
2981 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2983 * scm/define-music-types.scm (music-descriptions): add
2986 * lily/music-iterator.cc (report_event): use programming_error for
2987 sending non-event error.
2989 * lily/input.cc (programming_error): new function
2991 * buildscripts/output-distance.py (main): use compare-XXX for
2993 (main): --threshold option, default at 0.30
2995 * output-distance.py (main): add --threshold option.
2997 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2999 * scm/paper-system.scm (paper-system-annotate): fix problem when
3000 annotating an empty system
3002 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3004 * GNUmakefile.in: reinstate old web tar/copying.
3006 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3008 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3009 nothing changes. (Erik S)
3011 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3014 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3016 * scm/define-markup-commands.scm (whiteout): do not force
3017 foreground color of argument markup to black.
3019 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3020 the left of the arrow, instead of below the arrow name, so that,
3021 when two little arrows are vertically stacked, their dimensions
3022 and name should not overlap. Add a color key parameter.
3024 * scm/paper-system.scm (paper-system-annotate): Annotate
3025 next-space+next-padding instead of next-space. Annotate space
3026 between next-padding and next-space+padding, respectively, and
3027 following system extent and refpoint-Y-extent. Use colors.
3029 * scm/page.scm (annotate-page): translate annotations slightly to
3032 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3034 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3035 fix for x-staff slurs. Thanks Joe!
3037 * buildscripts/output-distance.py
3038 (SystemLink.output_expression_change_count): keep track of changed
3039 details, and dump in details html page.
3041 * input/regression/figured-bass-staff.ly: add note about setting
3042 properties in Staff context.
3044 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3045 add slurs and ties to support too.
3047 * buildscripts/output-distance.py (main): set dest_dir
3048 argument. Add --max-count option.
3050 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3052 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3053 shortcuts for special unicode chars that are useful in chant
3054 notation. Revised exisiting and added new comments.
3056 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3058 * make/mutopia-rules.make: remove duplicate recipe.
3060 2006-06-02 Werner Lemberg <wl@gnu.org>
3062 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3063 Add support for U+0132 (IJ) and U+0133 (ij).
3065 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3067 * buildscripts/output-distance.py (FileLink): new class. collect
3068 info systems from one .ly file.
3069 (FileLink.link_files_for_html): further tweaks.
3071 2006-06-02 Graham Percival <gpermus@gmail.com>
3073 * tex/texinfo.tex: partial fix for @funindex.
3075 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3078 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3080 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3082 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3083 @example too. Backportme.
3085 2006-06-02 Graham Percival <gpermus@gmail.com>
3087 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3088 from Werner Lemberg.
3090 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3092 * Documentation/user/music-glossary.tely: additional spanish
3093 updates and a lyrics fix in an example.
3095 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3097 * scm/define-grob-properties.scm: Previous patch contained
3098 spurious line from another patch not yet committed. Fixed.
3100 * scm/define-grob-properties.scm: Add missing doc strings for
3103 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3105 * buildscripts/output-distance.py
3106 (ComparisonData.write_text_result_page): separate the scores, sort
3109 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3112 * buildscripts/output-distance.py (me_path): use argv[0] for
3114 (ComparisonData.img_cell): use colored borders.
3116 * scm/stencil.scm (write-system-signature): escape newlines too.
3117 (write-system-signature): use (1,-1) interval for empty interval
3119 2006-01-01 Graham Percival <gpermus@gmail.com>
3121 * Documentation/user/music-glossary.tely: Spanish updates
3122 from Francisco Vila.
3124 * Documentation/user/lilypond-book.itely: addition from
3127 * Documentation/user/ various: edits, small additions
3130 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3132 * GNUmakefile.in (tree-lib-prefix-current):
3133 (tree-share-prefix-current): Use version number in tree, add
3136 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3138 * GNUmakefile.in: write VERSION, again.
3140 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3141 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3143 * stepmake/aclocal.m4: robuster version detection.
3145 * buildscripts/output-distance.py
3146 (ComparisonData.create_html_result_page): copy only if file
3147 exists, fixup src paths.
3149 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3151 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3153 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3154 Another datarootdir reto.
3156 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3157 available. This should be moved to postinstall-lilypond-doc.
3159 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3161 * GNUmakefile.in: simplify local-WWW-post.
3162 remove -type l from find.
3164 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3165 fixes. Don't follow symlinks.
3166 (ComparisonData.create_html_result_page): remove previous results.
3167 insert ../python in path.
3169 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3171 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3173 * config.make.in (datadir): Add datarootdir to silence autoconf.
3175 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3177 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3179 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3181 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3182 slash beams too wide.
3184 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3186 * VERSION: release 2.9.7
3188 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3190 * lily/relocate.cc (read_relocation_dir): Do not blindly
3193 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3195 * lily/parser.yy: replace THIS by PARSER
3197 * Documentation/index.html.in: add link to test-results.html page.
3199 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3201 * scm/translation-functions.scm (format-bass-figure): translate
3202 digits over 10 to the left
3204 * scm/define-markup-commands.scm (translate-scaled): new markup.
3206 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3209 * ly/engraver-init.ly: add Figured_bass_engraver
3211 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3213 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3215 * lily/score-engraver.cc (announce_grob): only note START announces.
3217 * lily/include/engraver-group.hh (Translator_group):
3218 acknowledge_hash_table_ is now drul.
3220 * lily/engraver.cc (announce_end_grob): new method.
3222 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3224 * lily/translator-dispatch-list.cc (create): take start_end argument.
3226 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3227 acknowledge_static_array_ to drul
3229 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3231 * scm/define-grob-interfaces.scm
3232 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3234 * scm/define-grobs.scm (all-grob-descriptions): add
3235 BassFigureAlignmentPositioning
3237 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3238 number stays up to date. Backportme.
3240 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3242 * Documentation/user/basic-notation.itely (Bar lines): Document
3245 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3247 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3249 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3250 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3253 * Resurrect `scons lily' build.
3255 * SConstruct (symlink_tree): Bugfix: link
3256 music-drawing-routines.ps to file iso directory.
3258 * lily/SConscript: Remove kpath-guile from LIBS.
3260 * SConstruct (libdir_package_version): Typo.
3261 (configure): Comment-out fontforge for lack of fontforge.pc .
3262 Also add libdir* to environment.
3264 2006-05-30 Graham Percival <gpermus@gmail.com>
3266 * Documentation/user/ various: minor additions from mailist and
3269 2006-05-30 Paco <fravd@ya.com>
3271 * Documentation/user/music-glossary.tely: numerous corrections and
3272 some new translations.
3274 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3278 * buildscripts/output-distance.py
3279 (ComparisonData.create_html_result_page): new routine: summarise
3280 results in HTML page with images.
3281 (ComparisonData.create_text_result_page): create summary text files too.
3283 * GNUmakefile.in (web-ext): package .signature files too. They
3286 * scm/stencil.scm (write-system-signature): typo.
3288 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3290 * scm/stencil.scm (write-system-signature): better escaping.
3291 only write signature for music systems, not for markup systems.
3293 * scm/framework-ps.scm (output-framework): dump-signatures support
3296 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3298 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3299 for -dno-point-and-click
3301 * lily/grob.cc (get_print_stencil): don't read
3302 point_and_click_global to determine whether to set grob-cause.
3304 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3306 * buildscripts/output-distance.py (main): new function.
3307 (ComparisonData): new class.
3309 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3310 careful with generating new LedgerLineSpanners.
3312 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3314 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3315 context. This fixes double ledger lines in output.
3317 * lily/system.cc (get_paper_system): remove 3 layer limit.
3319 * buildscripts/output-distance.py (SystemLink.distance): new
3320 file. Compare signatures.
3322 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3324 * lily/grob-array.cc (remove_duplicates): rename from
3325 uniq(). Sort before calling uniq() so it actually works.
3327 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3329 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3330 \version from lilypond file snippet.
3331 (Lilypond_file_snippet.ly): oops. typo.
3332 (find_toplevel_snippets): urgh. again.
3334 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3335 prevent duplicated broken items in output.
3337 * scm/framework-eps.scm (output-classic-framework): only dump if
3338 dump-signatures is set.
3340 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3342 * scm/stencil.scm (write-system-signature): new routine: write
3343 python parseable signature of a separate paper system.
3346 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3348 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3352 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3354 * translator-group.cc: send music events to engravers in
3355 non-bottom contexts.
3357 * tuplet-engraver.cc: process tuplet brackets in correct order.
3359 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3361 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3362 arg 2 might point us to a new binary (patch by Karl Hammar)
3364 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3366 * VERSION (PACKAGE_NAME): release 2.9.6
3368 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3370 * Documentation/user/*.itely: 2nd
3371 attempt: replace funindex -> findex globally.
3373 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3375 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3376 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3378 * scm/define-music-display-methods.scm: display methods for
3379 breaks. Fix \applyOutput.
3381 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3383 * Documentation/user/macros.itexi: comment out funindex expansion.
3385 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3388 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3389 Karl Hammar. Backportme.
3391 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3393 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3395 * Documentation/user/programming-interface.itely (Running a
3396 function on all layout objects): idem.
3398 * Documentation/user/introduction.itely (Automated engraving):
3399 update \applyOutput syntax
3401 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3402 remove debugging hook.
3404 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3407 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3409 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3410 TEXI2DVI_FLAGS to texi2dvi invocation.
3412 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3414 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3415 works. More work is done by iterator now, and engraver has been
3416 very much simplified.
3418 * lily/translator-group.cc: try_music is now invoked through a
3421 * lily/*-iterator.cc: Massive cleanups. Junked
3422 try_music_in_children globally. Renamed try_music to report_event,
3423 and made that method descend to a bottom context automatically.
3425 * lily/event-iterator.cc: New file.
3427 * lily/output-property-iterator.cc,
3428 lily/old-lyric-combine-music-iterator.cc: Removed.
3430 * python/convert-rules.py: Modified the syntax for \applyOutput.
3432 2006-05-23 Graham Percival <gpermus@gmail.com>
3434 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3437 * Documentation/user/ various: stuff that might have helped
3438 to fix the pdf creation, plus some minor doc additions.
3440 * Documentation/user/changing-defaults.itely: remove @b from
3441 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3443 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3445 * lily/beaming-pattern.cc (beamify): deal with negative start
3446 moments for beaming patterns.
3448 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3450 * lily/beaming-info.cc (beamify): new function: read beatLength
3451 and beatGrouping from context.
3453 * input/regression/beam-beat-grouping.ly (Module): new file.
3455 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3457 * lily/beam.cc (get_beam_segments): generate events for
3458 max_connect_ case too.
3459 (get_beam_segments): read Stem::max-beam-connect.
3461 * input/regression/beam-single-stem.ly: new file.
3463 * lily/stem.cc (set_beaming): use #f as signaling value for
3466 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3468 * lily/beam.cc (set_beaming): read clip-edges property.
3469 (calc_direction): don't suicide for single stem.
3471 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3472 argument, remove 1<<15 hack. Remove clip_edges()
3474 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3476 2006-05-21 Graham Percival <gpermus@gmail.com>
3478 * Documentation/user/basic-notation.itely: reorg.
3480 * Documentation/user/ various: minor fixes.
3482 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3484 * lily/stencil-expression.cc (register_stencil_head): opps, append
3485 to cdr of static SCM object.
3487 2006-05-19 Graham Percival <gpermus@gmail.com>
3489 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3490 update framework for command index. DOC WRITERS: use @funindex
3491 instead of @cindex @code{}.
3493 * Documentation/user/ various: replace @cindex @code{} => @funindex
3495 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3497 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3498 case positions is set manually.
3500 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3502 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3505 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3507 * Documentation/user/changing-defaults.itely (Contexts explained):
3508 use absolute dimension for @image.
3510 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3511 out image for illustration too.
3512 ($(outdir)/%.png): add more png <-> eps rules.
3514 2006-05-17 Graham Percival <gpermus@gmail.com>
3516 * Documentation/user/ various: remove trailing whitespace, cosmetic
3517 change to reduce changes produced by diff.
3519 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3521 * lily/main.cc (do_chroot_jail): correctness tweak.
3523 * python/lilylib.py (system): import subprocess in system () only.
3525 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3527 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3528 variable. Backportme.
3530 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3532 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3534 2006-05-17 Werner Lemberg <wl@gnu.org>
3536 * lily/lexer.ll (init_signature_has_table): Add
3537 `scm-scm-music-music'.
3539 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3540 (Generic_prefix_music_scm): Add rule for it.
3542 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3543 `quoted-transposition' property.
3545 * ly/music-functions-init.ly (transposedCueDuring): New function.
3547 * scm/define-music-properties.scm (all-music-properties): Updated.
3549 * Documenation/topdocs/NEWS.itely: Document it.
3551 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3553 * python/lilylib.py (system): move import subprocess to system()
3556 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3558 * VERSION (PATCH_LEVEL): release 2.9.5
3560 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3563 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3565 2006-05-16 Graham Percival <gpermus@gmail.com>
3567 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3569 * Documentation/user/ various: minor fixes.
3571 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3573 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3575 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3577 * Documentation/user/advanced-notation.itely (Instrument names):
3578 Modified obsolete instruction on how to move instrument names away
3579 from the staves. Hmm, at second thought the bug probably has been
3580 solved, so the full bug description should probably be removed.
3582 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3584 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3585 currentCommandColumn.
3587 * lily/hairpin.cc (print): also add padding for non-neighbor
3590 * scm/define-context-properties.scm
3591 (all-user-translation-properties): add hairpinToBarline
3593 * input/regression/hairpin-to-barline.ly: new file.
3595 * lily/context.cc (internal_send_stream_event): thinko fix.
3597 * lily/tie.cc (set_default_control_points): robustness fix.
3599 * python/musicxml.py (Part.interpret): don't complain about
3600 incomplete measures.
3602 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3603 new music if last_event_chord() returned None.
3605 * python/musicxml.py (Part.interpret): skip back over chord notes.
3607 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3609 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3610 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3611 lily/slash-repeat-engraver.cc,
3612 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3613 iterator sends PercentEvents
3615 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3616 rework tuplets: send start/stop events to engraver
3618 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3619 dispatchers event-source and events-below to Context
3621 2006-05-15 Graham Percival <gpermus@gmail.com>
3623 * Documentation/user/README.txt: update info for doc writers.
3625 * Documentation/user/programming-interface.itely: integrate
3626 Nicolas' fixes for chapter rewrite.
3628 * Documentation/user/ various: minor fixes.
3630 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3632 * lily/clef-engraver.cc: cleanup.
3634 * Documentation/user/GNUmakefile: dist context-example.eps too.
3636 * lily/key-engraver.cc (create_key): use
3637 explicitKeySignatureVisibility for cancellation too.
3639 * lily/font-config.cc (init_fontconfig): don't close file if
3642 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3644 * Documentation/topdocs/NEWS.tely: niente and rotation news
3646 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3648 * lily/include/stencil.hh
3649 * lily/stencil.cc (rotate): new function. Makes it possible
3650 to rotate a stencil around a given offset.
3652 * lily/grob.cc (get_print_stencil): add rotation support
3654 * lily/stencil-interpret.cc (interpret_stencil_expression):
3655 add rotation support
3657 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3659 * scm/define-grob-properties.scm: add 'rotation property
3661 * scm/define-markup-commands.scm: add rotate markup command
3663 * scm/output-ps.scm: add rotation support in PostScript backend
3665 * scm/output-svg.scm: add rotation support in SVG backend
3667 2006-05-13 Graham Percival <gpermus@gmail.com>
3669 * Documentation/user/music-glossary.itely: French correction.
3671 * Documentation/user/programming-interface.itely: major
3672 new docs, some reorg, some info from Nicolas.
3674 * Documentation/user/ various: small fixes.
3676 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3678 * Documentation/user/programming-interface.itely (Markup
3679 programmer interface): Remove duplicate text.
3681 2006-05-12 Graham Percival <gpermus@gmail.com>
3683 * Documentation/user/context-example.eps: new file.
3685 * Documentation/user/changing-defaults.itely: set up file to
3688 * Documentation/user/programming-interface.itely: changes
3691 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3693 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3695 2006-05-11 Graham Percival <gpermus@gmail.com>
3697 * Documentation/user/programming-interface.itely: first round of
3698 editing and merging emails from Nicolas.
3700 * Documentation/user/scheme-tutorial: minor edit.
3702 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3704 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3706 (Xml_node.message): use it.
3708 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3709 oops. Add duration argument.
3711 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3713 * lily/paper-column-engraver.cc (make_columns):
3714 * scm/define-grobs.scm: Revert my previous change and set the default
3715 in define-grobs.scm instead.
3717 2006-05-09 Graham Percival <gpermus@gmail.com>
3719 * Documentation/user/changing-defaults.itely: general editing,
3720 info about \set and \override.
3722 * Documentation/user/tweaking.itely, advanced-notation.itely:
3723 fixes from Dave Luttinen, thanks!
3725 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3727 * lily/paper-column-engraver.cc (make_columns): By default, a column
3728 needs to be breakable.
3730 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3732 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3734 (musicxml_time_to_lily): idem
3735 (musicxml_key_to_lily): idem
3736 (instrument_drumtype_dict): dict for supported drumtypes.
3737 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3738 moments and pending mm rests
3739 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3740 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3741 (musicxml_voice_to_lily_voice): add mode change.
3742 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3743 speed and less memory usage (factor 5 to 10).
3744 (convert): write -defs.ly and driver file separately so people
3745 can script their own part extraction.
3747 * python/musicxml.py (minidom_demarshal_node): new function:
3748 separate minidom handling.
3749 (lxml_demarshal_node): new function: support lxml.etree too.
3750 (Xml_node.message): new function: verbose error message, with XML
3751 path to offending node.
3752 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3753 (Part_list.generate_id_instrument_dict): new method: collect
3754 instrument names, to be able to set drum_type.
3755 (Part.interpret): handle underfull measures
3756 (Part.interpret): assign instrument names.
3758 * python/musicexp.py (Output_printer.close): new method
3759 (MusicWrapper.print_ly): new class: support other modes,
3761 (BarCheck.print_ly): new class. Support bar checks, with comments
3762 and fancy barchecks.
3763 (NoteEvent.__init__): also set drum_type for drum notes.
3764 (MultiMeasureRest.lisp_expression): dump mm rests.
3766 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3767 line-break-permission if forbidBreak is not set.
3769 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3771 * scm/define-context-properties.scm:
3772 * scm/define-grob-properties.scm:
3773 * scm/define-grobs.scm:
3774 * scm/define-music-display-methods.scm:
3775 * scm/define-music-properties.scm:
3776 * scm/define-music-types.scm:
3777 * scm/music-functions.scm:
3778 * ly/declarations-init.ly:
3779 * lily/include/constrained-breaking.hh:
3781 * lily/spaceable-grob.cc:
3782 * lily/simple-spacer.cc:
3783 * lily/paper-score.cc:
3784 * lily/paper-column.cc:
3785 * lily/paper-column-engraver.cc:
3787 * lily/gourlay-breaking.cc:
3788 * lily/constrained-breaking.cc:
3789 * python/convertrules.py:
3790 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3791 "page-break-penalty" and "line-break-permission".
3792 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3793 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3795 * lily/bar-engraver.cc:
3796 * lily/beam-engraver.cc:
3797 * lily/forbid-break-engraver.cc:
3798 * lily/ligature-engraver.cc:
3799 * lily/paper-column-engraver.cc:
3800 * lily/percent-repeat-engraver.cc:
3801 * lily/score-engraver.cc:
3802 * lily/score-engraver.hh:
3803 * lily/paper-column-engraver.hh:
3804 Inter-engraver communication regarding line breaks is done through context
3805 properties (Score.forbidBreak) instead of function calls.
3807 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3809 * VERSION (PACKAGE_NAME): release 2.9.4
3811 2006-05-08 Graham Percival <gpermus@gmail.com>
3813 * Documentation/user/working.itely: proofreading from Dave
3816 * Doucmentation/user/README.txt: updated with manual style info.
3818 * Documentation/user/ various: trim linewidth to 78 chars.
3820 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3822 * scm/define-grob-properties.scm (all-internal-grob-properties):
3823 remove chord-tremolo property.
3825 * lily/beam.cc (get_beam_segments): don't use stem position as
3826 base for broken ends.
3828 2006-05-06 Graham Percival <gpermus@gmail.com>
3830 * Documentation/user/putting.itely: proofreading from Dave
3833 * Documentation/user/ various: more reorg and clarifications.
3835 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3837 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3839 * ly/music-functions-init.ly: new function featherDurations
3841 * lily/beam.cc: read grow-direction for feathered beaming.
3843 * Documentation/topdocs/NEWS.tely (Top): typo.
3845 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3847 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3850 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3851 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3852 used by music streams.
3854 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3855 lily/stream-event.cc, lily/stream-event-scheme.cc,
3856 lily/listener.cc, lily/scheme-listener.cc,
3857 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3858 lily/include/stream-event.hh, lily/include/listener.hh,
3859 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3860 Created data structures for music streams.
3862 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3864 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3865 construction of a beam.
3868 * flower/include/std-vector.hh (default_compare): use only one comparison.
3870 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3871 (note-by-number): further attachment fixes.
3873 * scm/lily-library.scm (ordered-cons): new function.
3874 (interval-index): new function
3876 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3878 * lily/note-head.cc (get_stem_attachment): new function.
3880 * scm/define-markup-commands.scm (note-by-number): read 'style
3883 * input/regression/markup-note.ly: show note-head style option.
3885 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3888 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3890 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3892 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3894 * lily/include/constrained-breaking.hh: GCC 4 fix.
3896 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3898 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3899 Replace it with functions get_line_forces and get_line_configuration.
3900 (class Simple_spacer): Make data private.
3901 Rewrite compression algorithm to be faster and simpler.
3903 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3904 * lily/gourlay-breaking.cc (solve):
3905 * lily/constrained_breaking.cc (space_line):
3906 Change it to the new simple-spacer code.
3908 * lily/paper-score.cc (get_paper_systems):
3911 Delay breaking the systems until they are requested.
3912 (find_break_indices):
3913 Use vsize for indices.
3915 Move the "Calculating line breaks" message here.
3917 * lily/system.cc (pre_processing):
3918 Move the "Calculating line breaks" message away from here.
3919 (break_into_pieces):
3920 Allow multiple calls to this function in sequence (with touching-but-
3921 not-overlapping breakpoints).
3923 * lily/constrained-breaking.cc:
3924 Replace most of the get_XXXX functions with get_line_details.
3925 Only calculate the force for each line. Calculate configurations only
3926 for the lines we will actually use.
3927 Replace cols_ with lines_.
3929 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3931 * mf/GNUmakefile (depth): remove FC_FIND.
3933 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3935 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3937 * scm/framework-ps.scm (write-preamble): new function.
3938 (write-preamble): load mac fonts via fondu, even if gs-font-load
3941 2006-05-03 Werner Lemberg <wl@gnu.org>
3943 * mf/GNUmakefile (FC_FIND): Fix typo.
3945 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3947 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3949 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3951 * stepmake/aclocal.m4: run python-config for crosscompiling
3954 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3955 -f png for HTML, TEXINFO formats.
3957 * input/tutorial/lbook-html-test.html: new file.
3959 * lily/include/tie-formatting-problem.hh (class
3960 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3961 [column, direction]. This fixes laissez vibrer ties.
3963 * flower/include/tuple.hh (struct Tuple2): new file.
3965 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3966 $(FCMATCH), only if $(NCSB_DIR) not set.
3968 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3970 * config.make.in (DOCUMENTATION): set FCMATCH.
3972 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3974 2006-05-03 Graham Percival <gpermus@gmail.com>
3976 * Documentation/user/ various: final round of reorg.
3978 * Documentation/user/instrument-notation.itely: some more
3979 fixes from Eduardo, thanks!
3981 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3983 * VERSION (PACKAGE_NAME): release 2.9.3
3985 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3987 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3989 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3991 * scm/define-grob-properties.scm (all-user-grob-properties):
3992 Correct typo, thanks to Eduardo.
3994 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3996 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3998 * buildscripts/lilypond-words.py (F): indent fix.
4000 * input/regression/tie-arpeggio-collision.ly: new file.
4002 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4003 function: store outlines per column rank.
4005 * lily/include/tie-configuration.hh (class Tie_configuration): add
4006 column_ranks_ to specification and configuration, to distinguish
4007 between ties for different heads in arpegiated chords.
4009 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4011 * *.py: more 4 space indents.
4013 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4015 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4017 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4019 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4021 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4023 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4025 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4027 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4029 * python/convertrules.py (conv): indent 4 for python files.
4031 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4033 * Documentation/user/changing-defaults.itely (Creating contexts):
4034 Clarify \new semantics.
4036 2006-04-28 Graham Percival <gpermus@gmail.com>
4038 * Documentation/user/ various: major new sections in the
4039 Learning manual, slight reorg elsewhere.
4041 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4043 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4045 * scm/framework-ps.scm (output-framework): remove PageMedia
4047 2006-04-27 Graham Percival <gpermus@gmail.com>
4049 * Documentation/user/ tweaks.itely, working.itely: new
4050 files, being more advanced "learning manual" chapters.
4052 * Documentation/user/ tutorial, putting, lilypond: reorg.
4054 2006-04-26 Graham Percival <gpermus@gmail.com>
4056 * input/regression/lyric-combine-polyphonic.ly: fixed test
4057 (no more "can't find context `one'" error).
4059 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4061 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4063 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4065 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4067 * lily/relocate.cc (read_relocation_dir): new function.
4069 2006-04-26 Graham Percival <gpermus@gmail.com>
4071 * Documentation/user/instrument-notation.itely: a few more fixes
4072 from Eduardo, thanks!
4074 * Documentation/user/README.txt: new file; contains info on
4075 style that used to be in lilypond.tely.
4077 * Documentation/user/ various: first round of doc reorg.
4079 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4080 graphic; this probably causes problems on some pdf
4081 viewers, notably Adobe Acrobat.
4083 2006-04-24 Graham Percival <gpermus@gmail.com>
4085 * Documentation/user/instrument-notation.itely: many alterations
4086 to Vocal music, from Eduardo Viera.
4088 2006-04-23 Graham Percival <gpermus@gmail.com>
4090 * Documentation/user/instrument-notation.itely: fix \new
4091 instead of \context problem.
4093 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4095 * lily/relocate.cc (expand_environment_variables): new function.
4097 (read_relocation_file): id.
4099 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4101 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4103 * ly/engraver-init.ly: remove old comments from TabVoice
4105 2006-04-20 Graham Percival <gpermus@gmail.com>
4107 * Documentation/user/instrument-notation.itely: added Erlend's
4108 latest doc patch, thanks!
4110 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4112 * lily/include/slur.hh:
4114 * lily/phrasing-slur-engraver.cc:
4115 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4116 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4117 Slur_engraver:: and putting it in
4118 Slur::auxiliary_acknowledge_extra_object ().
4120 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4122 * lily/note-collision.cc: fix a comment
4124 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4126 * stepmake/bin/add-html-footer.py: fix footer position in
4127 generated html files: before </body> and </html> tags.
4129 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4131 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4132 Earlier successive `make' commands finally compiled ok.
4134 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4136 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4138 * lily/include/stem-tremolo.hh:
4139 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4143 * lily/include/lookup.hh: add rotated_box ()
4145 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4147 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4148 been generated. Fixes "can't get `--help'" bug after make clean.
4150 * THANKS: alphabetize contributors.
4152 2006-04-17 Graham Percival <gpermus@gmail.com>
4154 * Documentation/user/instrument-notation.itely: added Erlend's
4155 tabs and banjo doc patch. Thanks!
4157 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4159 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4161 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4163 * scm/output-lib.scm: add some more predefined string tunings.
4165 * Documentation/user/instrument-notation.itely: and doc them.
4167 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4169 * ly/engraver.ly: Remove obsolete comments.
4171 * ly/gregorian-init.ly: Define default layout block.
4173 * input/puer-fragment.ly: Updated and extended.
4175 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4177 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4178 pdf conversion behaviour.
4180 * flower/file-name.cc (dir_name)
4181 (get_working_directory): Move from relocate.cc.
4183 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4185 * lily/relocate.cc: Encapsulate sys/stat.h in
4188 2006-04-14 Graham Percival <gpermus@gmail.com>
4190 * Documentation/user/ various: small updates from Cameron
4191 and Juergen, thanks!
4193 * Documentation/user/ various: small updates of my own.
4195 * THANKS: 2.7 -> 2.8.
4197 2006-04-11 Graham Percival <gpermus@gmail.com>
4199 * scm/define-context-properties.scm: typo.
4201 * Documentation/user/ : many more small updates.
4203 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4205 * scm/define-music-types.scm: disposed "docme".
4207 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4209 * lily/hairpin.cc: make niente circles a bit smaller.
4211 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4213 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4214 get-pfa and get-*-fonts targets.
4216 2006-04-10 Graham Percival <gpermus@gmail.com>
4218 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4219 music-glossary, programming-interface: more minor fixes
4222 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4224 * scm/define-context-properties.scm: another old \property update.
4225 This time tested for compiling!
4227 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4229 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4231 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4233 * scm/define-context-properties.scm (all-user-translation-properties):
4234 * Documentation/user/global.itely (Page formatting): Compile fix.
4236 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4238 * Documentation/user/advanced-notation.itely (Polymetric
4239 notation): Update the example to use the "+" symbol and add link
4240 to input/test/compound-time.ly.
4242 2006-04-08 Graham Percival <gpermus@gmail.com>
4244 * scm/define-grob-properties.scm: clarify docs for #'direction.
4246 * scm/define-context-properties.scm: update old \property override.
4248 * Documentation/user/ advanced-notation, global, lilypond-book:
4249 more minor doc updates.
4251 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4253 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4255 * scm/backend-library.scm (search-gs): oops.
4257 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4259 * scripts/lilypond-book.py (output): use base, not filename for href.
4261 * scm/backend-library.scm: only look for gs.
4263 * scripts/lilypond-book.py (output): fix printfilename.
4265 * lily/parser.yy (music_function_musicless_prefix): fold together
4266 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4268 * lily/slur.cc (print): only set font-size if not set yet.
4270 * lily/slur-configuration.cc (add_score): improved layout of debug
4273 2006-04-05 David Feuer <David.Feuer@gmail.com>
4275 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4276 (draw_circle): Hopefully fixed regression.
4277 Improved documentation for several procedures.
4279 2006-03-04 Werner Lemberg <wl@gnu.org>
4281 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4283 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4285 * scripts/musicxml2ly.py (bindir): add dynamic
4288 2006-04-04 Graham Percival <gpermus@gmail.com>
4290 * Documentation/user/ basic-notation, advanced-notation, putting,
4291 instrument-notation, invoking, lilypond, THANKS: another ream of small
4292 fixes from the Doc Helpers.
4294 2006-04-03 David Feuer <David.Feuer@gmail.com>
4296 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4298 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4300 * Cleaned up interfaces between PostScript and Scheme, and moved
4301 computations from PostScript to Scheme:
4303 * music-drawing-routines.ps
4304 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4305 with stroke_and_fill throughout.
4306 (euclidean_length, print_letter, draw_box): Deleted unused
4307 procedures. If someone needs draw_box, implement it using
4308 draw_round_box; don't duplicate code.
4309 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4310 Refactored/cleaned up interfaces.
4313 * output-ps.scm: reordered arguments to PostScript functions to
4314 match new interfaces
4315 (glyph-string): Rewrote glyph-string.
4316 (grob-cause): Replaced string-append with format.
4317 (repeat-slash): Rewrote to do computation here.
4318 (round-filled-box): Rewrote to do computation here.
4320 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4322 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4324 * stepmake/stepmake/toplevel- targets.make: print help info about
4327 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4329 * input/regression/hairpin-circled.ly: new file
4331 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4333 * lily/hairpin.cc (print): add support for circled tip
4335 * scm/define-grob-properties.scm: add circled-tip parameter
4337 * scm/define-grobs.scm: init circled-tip to false
4339 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4341 * scm/music-functions.scm (quote-substitute): set
4344 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4346 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4349 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4351 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4353 2006-03-31 David Feuer <david.feuer@gmail.com>
4355 * scm/framework-ps.scm:
4357 * scm/output-ps.scm: glyph-string now produces smaller, more
4358 readable, and probably faster PostScript. Several findfont
4359 scalefont setfont instances changed to selectfont
4360 Hacked-up string-appends changed to formats.
4362 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4364 2006-03-30 Graham Percival <gpermus@gmail.com>
4366 * scm/lily-library.scm: make "no version" warning message more polite.
4368 * lily/music.cc: add double quotes to failed octave check.
4370 * Documentation/user/ advanced-notation, changing-defaults,
4371 instrument-notation, invoking, music-glossary: whole bunch of minor
4374 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4376 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4377 $(buildscriptdir) iso. depth.
4379 * VERSION (PACKAGE_NAME): release 2.9.1
4381 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4383 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4385 * VERSION (PATCH_LEVEL): bump version number.
4387 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4390 * lily/pango-font.cc (pango_item_string_stencil): use
4393 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4394 $(outdir)/emmentaler-%.svg): remove canary.
4396 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4397 glyphnames if we have a ttf font.
4399 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4401 * Documentation/user/advanced-notation.itely (Font selection):
4402 Corrected reference to the font-family-override.ly example.
4404 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4406 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4407 stem-tremolo object in the stem (or else the stem might not be
4410 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4412 * lily/ttf.cc (print_trailer): only print existing glyphs.
4414 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4416 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4417 position the tremolo based on the position of the notehead.
4419 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4420 notes and update the texidoc line with the new positioning rules.
4422 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4424 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4426 * scripts/lilypond-book.py (Module): set default for linewidth if
4429 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4431 * VERSION (PACKAGE_NAME): release 2.9.0.
4433 * input/regression/stem-tremolo-position.ly: new file.
4435 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4437 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4439 * lily/stem-tremolo.cc (print): position
4440 the tremolo depending only on the end of the stem
4441 and not on the notehead
4442 (raw_stencil): center, on the middle staff line, the
4443 flag that is closest to the end of the stem (previously
4445 (calc_width): add this callback to shorten a tremolo when
4446 it is beamed or it is stemup with a flag
4447 (style): add this callback to make a tremolo rectangular when
4448 it is beamed or it is stemup with a flag
4449 (rotated_box): this is like Lookup::beam but makes a rotated
4450 rectangle instead of a parallelogram
4452 * lily/stem.cc (calc_stem_info): make sure the stem
4453 is long enough to fit the tremolo
4454 (calc-length): reduce the length of tremolo stems since the
4455 tremolo code is now capable of better positioning
4457 * scm/define-grobs.scm: make calc_width the default beam-width
4458 callback for stem-tremolo and add the style callback
4460 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4462 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4465 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4467 * lily/ttf.cc (make_index_to_charcode_map): restore old
4470 2006-03-28 Werner Lemberg <wl@gnu.org>
4472 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4474 2006-03-28 Graham Percival <gpermus@gmail.com>
4476 * THANKS: update for 2.9, add section for Documentation helpers.
4478 * Documentation/topdocs/NEWS.tely: compile fix.
4480 * Documentation/user/ basic-notation, global, advanced-notation,
4481 examples.itely: minor fixes from mailist.
4483 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4485 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4488 * lily/ttf.cc (print_trailer): use it.
4490 * lily/pango-font.cc (get_unicode_name): new function.
4492 * lily/ttf.cc (make_index_to_charcode_map): move function from
4494 (print_trailer): substitute uniXXXX name if applicable.
4496 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4497 (pango_item_string_stencil): use it to generate uniXXXX names.
4499 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4500 note heads, for uniform widths in shape note output.
4501 (overdone_heads): hmm. remove them again.
4503 * scripts/lilypond-book.py (output): add links to filenames.
4505 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4507 * lily/note-collision.cc (get_clash_groups): only consider when
4508 Note_column::dir <> CENTER.
4510 * scripts/lilypond-book.py (get_option_parser): init output_name
4513 2006-03-24 Graham Percival <gpermus@gmail.com>
4515 * Documentation/topdocs/NEWS.tely: add @end itemize
4517 * Documentation/user/ global, advanced-notation: minor
4520 2006-03-23 Graham Percival <gpermus@gmail.com>
4522 * Documentation/user/ lilypond.tely, music-glossary,
4523 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4525 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4527 * mf/GNUmakefile: don't install .enc files.
4529 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4531 * VERSION (PATCH_LEVEL): bump to 2.9.0
4533 2006-03-22 Graham Percival <gpermus@gmail.com>
4535 * Documentation/user/advanced-notation.itely: minor fixes
4538 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4540 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4542 * branch lilypond_2_8
4544 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4546 * scripts/lilypond-book.py (samefile): new function, for windoze
4549 2006-03-21 Graham Percival <gpermus@gmail.com>
4551 * ly/engraver-init.ly: add info about StaffGroup.
4553 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4555 * input/regression/stem-direction-context.ly: idem.
4557 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4561 * input/regression/page-layout-twopass.ly: comment out \markup so
4564 * lily/instrument-name-engraver.cc (finalize): add to instrument
4565 name global System. This also fixes chopped instrument names, but
4566 doesn't crash when there are slurs/beams.
4568 * lily/slur-configuration.cc (add_score): disallow negative slur
4571 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4573 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4575 * lily/instrument-name-engraver.cc (process_music): kludge: add
4576 InstrumentName spanner to axis group of left bound. Fixes chopped
4577 off instrument names in EPS images.
4579 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4581 * scripts/abc2ly.py (option_parser): update to 2.7.40
4583 2006-03-20 Graham Percival <gpermus@gmail.com>
4585 * THANKS: move small doc contributors to SUGGESTIONS.
4587 * Documentation/user/ basic-notation, advanced-notation,
4588 global: small changes from mailist.
4590 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4592 * Documentation/user/advanced-notation.itely (Text marks): update
4593 for new rehearsalMarkAlignSymbol convention.
4595 * VERSION (PATCH_LEVEL): bump version.
4597 * input/test/instrument-name-align.ly: new file.
4599 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4601 * input/test/instrument-name-align.ly: new file. Document how to
4602 align instrument names.
4604 * lily/mark-engraver.cc: remove properties.
4606 * scm/define-context-properties.scm
4607 (all-user-translation-properties): remove align symbol properties
4608 for barnumber/reh. mark.
4610 * lily/break-align-interface.cc (self_align_callback): new
4611 interface, new function. Look at complete alignment. This handles
4612 tunable break alignments in case break-align-symbols are missing.
4614 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4616 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4618 * python/convertrules.py (conv): mark/bar number alignment rule.
4620 * lily/break-align-interface.cc (calc_positioning_done): also
4621 store offset from last visible break-alignment to its
4622 neighbor. This makes alignment on non-visible objects more reliable.
4624 * po/lilypond.pot (Module): ran po-replace.
4626 * input/regression/tie-single-manual.ly (Module): new file.
4628 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4629 look at has_manual_position_.
4630 (from_ties): set has_manual_position_ if tie has staff-position set.
4632 * lily/tuplet-bracket.cc (calc_positions): idem.
4634 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4637 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4639 * scm/define-markup-commands.scm (smallCaps): new markup command
4640 for turning a text to small caps using smaller font size and upper
4643 2006-03-17 Graham Percival <gpermus@gmail.com>
4645 * Documentation/user/ examples, instrument-notation,
4646 advnaced-notation: minor fixes from mailist.
4648 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4650 * Documentation/user/tutorial.itely (First steps): change example
4653 2006-03-17 Graham Percival <gpermus@gmail.com>
4655 * Documentation/user/ examples, advanced: minor changes from mailist.
4657 * THANKS: add Geoff Horton, for documentation stuff.
4659 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4661 * python/lilylib.py (system): revert have_select kludge.
4663 * Documentation/user/tutorial.itely (Commenting input files):
4664 update version numbers in doc.
4666 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4667 bound-padding to multi-measure-interface
4669 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4671 * input/test/engraver-example.ily: update version number.
4673 * VERSION (PACKAGE_NAME): release 2.7.39
4675 * lily/note-spacing.cc (get_spacing): heighten threshold where
4676 accidentals/arpeggios influence previous spacing fully.
4678 * lily/rest.cc (y_offset_callback): only use direction if
4679 staff-position wasn't set before.
4681 * lily/bar-number-engraver.cc: add support for
4682 barNumberAlignSymbol.
4683 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4685 * lily/pointer-group-interface.cc (set_ordered): new function.
4686 (add_unordered_grob): new function.
4688 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4689 to ordered, unless the opposite has been proved. This fixes
4690 random reordering of large object groups across linebreaks,
4693 * lily/main.cc (do_chroot_jail): printf format fix.
4695 * lily/tie-formatting-problem.cc (generate_configuration):
4696 multiply y-shift for dot with direction.
4698 * scm/define-markup-commands.scm (note-by-number): put (magstep
4699 size) in y-attach too.
4701 * Documentation/topdocs/NEWS.tely (Top): show override.
4703 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4704 direction for stems.
4706 2006-03-15 Graham Percival <gpermus@gmail.com>
4708 * Documentation/user/ changing-defaults, global: minor
4711 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4713 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4715 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4716 breakable items after uniformly stretched notes.
4718 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4719 outline with outer edge of note heads. This prevents infinity
4720 problems with tied whole notes.
4722 * scripts/lilypond-book.py (do_file): use os.popen
4724 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4726 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4728 * Documentation/user/invoking.itely: Add ragged-right to bug report
4731 2006-03-14 Graham Percival <gpermus@gmail.com>
4733 * Documentation/user/global.itely: small fix from mailist.
4735 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4737 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4738 file descriptor returned by tempfile.mkstemp() when writing
4739 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4742 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4744 * po/fi.po: newline bugfix.
4746 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4748 * scm/paper.scm (paper-alist): Rounding fixes.
4750 2006-03-13 Graham Percival <gpermus@gmail.com>
4752 * Documentation/user/ changing-defaults, instrument-notation,
4753 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4755 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4759 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4761 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4764 * python/lilylib.py (print_environment): move ps_page_count to
4767 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4769 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4771 * scm/framework-ps.scm (embed-document): new function. Use to
4774 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4776 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4778 * Documentation/user/instrument-notation.itely (Setting simple
4779 songs): Added \book{...} around the full example, so the separate
4780 markups are included in the printed example.
4782 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4784 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4787 * python/lilylib.py (system): rewrite system() using
4788 subprocess. Remove >& redirection trickery.
4790 2006-03-11 Graham Percival <gpermus@gmail.com>
4792 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4793 notation-appendices.itely: minor fixes from mailist.
4795 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4797 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4798 unsplit man also needs images.
4800 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4802 * VERSION (PACKAGE_NAME): 2.7.38 released.
4804 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4806 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4809 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4811 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4812 respects the Score.skipTypesetting property.
4814 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4816 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4817 Prolog. No %%EOF after CFF file.
4819 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4821 * lily/constrained-breaking.cc (get_max_systems): used to return a
4823 (combine_demerits): use pointers to reduce copying data
4824 (calc_subproblem): idem
4825 (get_page_penalty): add page turn penalties
4827 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4829 * Documentation/user/invoking.itely (Invoking lilypond): better
4830 explanation of -e usage.
4832 * lily/main.cc (main_with_guile): don't append to
4833 init_scheme_code_string
4835 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4837 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4839 * scripts/convert-ly.py (do_options): don't print help for
4842 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4843 @code and @example. Update from texinfo.tex from CVS.
4845 2006-03-08 Graham Percival <gpermus@gmail.com>
4847 * Documentation/user/scheme-tutorial.itely: clarifies distances
4848 measured in staff-spaces.
4850 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4852 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4853 consider[k] is true.
4855 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4857 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4858 consider columns that have originals. Unifies spacing for mm
4859 rests around line breaks.
4861 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4862 (set_text_rods): idem.
4863 (calculate_spacing_rods): new function: share code between
4864 set_text_rods and set_spacing_rods.
4865 (set_text_rods): take extents of bounds into account.
4867 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4869 * Documentation/user/basic-notation.itely (Writing music in
4870 parallel): don't use relative.
4872 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4874 * ly/music-functions-init.ly (Module): add shiftDurations
4876 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4878 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4880 * ly/engraver-init.ly: init vocalName to nil.
4882 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4884 * scm/music-functions.scm (music->make-music): bugfix,
4885 KeyChangeEvents are now handled correctly.
4887 * scripts/lilypond-book.py: Add --debug option.
4889 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4891 * python/lilylib.py: add tempfile.
4893 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4895 * VERSION (PACKAGE_NAME): release 2.7.37
4897 * python/lilylib.py (ps_page_count): remove make_ps_images().
4898 (ps_page_count): remove mkdir_p
4899 (system): remove cleanup_temp.
4900 (exit): remove lilypond_version_(check)
4901 (error_log): remove pseudo_filter_p
4906 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4909 * lily/accidental-engraver.cc (make_standard_accidental): only add
4910 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4912 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4913 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4914 Make incompatibilities.
4916 * scm/output-ps.scm (grob-cause): replace backslashes by /
4917 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4919 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4921 * cygwin/GNUmakefile: Install fixes.
4923 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4925 * lily/note-head.cc (head::get_balltype): Compile fix.
4927 * flower/file-name.cc (dos_to_posix): Flower string fix.
4929 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4931 * python/lilylib.py: pychecker cleanups.
4933 * scripts/lilypond-book.py
4934 (Lilypond_snippet.output_print_filename): pychecker cleanups
4936 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4938 * python/lilylib.py (underscore): remove identify() , warranty()
4940 * ps/music-drawing-routines.ps: change Border routine for GSView
4943 * lily/stem.cc (height): use quantize-positions. This triggers
4944 set_stem_lengths, so scripts on beamed stems are handled correctly.
4946 * lily/side-position-interface.cc (aligned_side): check if edges
4947 of script are inside staff. Fixes accent of edge of the staff.
4949 * input/regression/staccato-pos.ly: more examples.
4951 * stepmake/aclocal.m4 (depth): fix bashism.
4953 * lily/lyric-combine-music-iterator.cc: move from
4954 new-lyric-combine-iterator.cc
4955 (process): add pending_grace_lyric_ member to delay lyrics on
4958 * lily/system-start-text.cc (print): suicide if we don't have any
4959 elements. Fixes hara kiri'd instrument names.
4961 * scripts/mup2ly.py (Module): remove.
4963 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4965 * Documentation/user/global.itely (A single music expression):
4966 close @lilypond properly
4968 * lily/volta-bracket.cc (modify_edge_height): change from
4969 after_line_breaking_callback. Suicide last bracket if appropriate.
4971 * python/lilylib.py: strip getopt support
4973 * scripts/etf2ly.py (do_options): use optparse
4975 * scripts/midi2ly.py: optparse, strip lilylib copy.
4977 * scripts/abc2ly.py (voices): use optparse.
4979 * stepmake/stepmake/generic-vars.make: new function absdir.
4981 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4983 * scripts/lilypond-book.py (find_file): use global_options for
4986 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4989 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4991 * python/lilylib.py (get_global_option): ughness for extracting
4992 global options from lilylib.
4993 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4995 * scripts/lilypond-book.py (get_option_parser): use optparse for
4996 option handling. Put options in global_options variable.
4998 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5000 * Documentation/index.html.in: clarify.
5002 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5004 * scm/layout-page-layout.scm (write-page-breaks): add a
5005 music-system-heights property to the page layout output.
5007 * scm/page.scm (make-page-stencil): take footer into account when
5008 computing the 'space-left page property
5009 (annotate-space-left): take footer into account when annonating
5012 2006-02-28 Graham Percival <gpermus@gmail.com>
5014 * Documentation/user/ advanced-notation, global: more (final)
5015 docs for music expressions, removed special fermatas.
5017 2006-02-27 Graham Percival <gpermus@gmail.com>
5019 * Documentation/user/ basic-notation, global: minor changes
5022 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5024 * scm/framework-ps.scm:
5025 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5026 layer for inf? and nan? from framework-ps to lily-library.
5028 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5030 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5031 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5033 * buildscripts/substitute-encoding.py (Module): remove file.
5035 * mf/GNUmakefile: more PFA strippage.
5037 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5039 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5042 * scm/framework-ps.scm: remove font name munging.
5044 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5046 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5048 * scm/markup.scm (define-markup-command): change
5049 def-markup-command to define-markup-command
5051 * scm/music-functions.scm (define-music-function): change
5052 def-music-function to define-music-function.
5054 * python/convertrules.py (conv): rules for def-music-function
5055 and def-markup-commands
5057 * Documentation/user/programming-interface.itely,
5058 input/no-notation/display-lily-tests.ly,
5059 input/regression/lily-in-scheme.ly,
5060 input/regression/markup-user.ly,
5061 input/regression/music-function.ly, input/regression/tie-chord.ly,
5062 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5063 ly/gregorian-init.ly: use new macro names (define-music-function,
5064 define-markup-command).
5066 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5068 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5069 (output): add comments to lp-book latex output.
5071 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5074 2006-02-23 Graham Percival <gpermus@gmail.com>
5076 * Documentation/user/ tutorial, global: minor changes.
5078 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5080 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5081 blocks (for make 3.80)
5083 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5084 \notemode so that user should not have to explicitely type it.
5086 * scm/define-music-display-methods.scm: various
5087 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5090 * input/no-notation/display-lily-tests.ly: new tests for
5091 \applyOutput and \applyContext
5093 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5095 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5096 changed it slightly so that the number of systems returned by
5097 solve () will be the same as the last value passed to resize
5098 (). I've also added more documentation, removed casts, fixed style
5099 problems and put in some recovery if constraints aren't satisfied."
5101 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5103 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5104 for emacs < 22 compatibility.
5105 (count-rexp): Use it.
5106 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5107 substring juggling (Milan Zamazal).
5109 2006-02-23 Graham Percival <gpermus@gmail.com>
5111 * Documentation/user/ basic-notation, advanced-notation,
5112 global.itely, invoking.itely, tutorial,itely:
5113 minor fixes from mailist.
5115 * scm/define-markup-commands.scm: improve docs of \filled-box.
5117 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5119 * Documentation/index.html.in: changes concern the previous release.
5121 * input/regression/+.ly: cultivate typographical terminology.
5123 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5125 * scm/define-grob-interfaces.scm (parentheses-interface): add
5126 padding to parentheses-interface.
5128 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5129 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5131 * VERSION (PATCH_LEVEL): release 2.7.36
5133 * lily/slur.cc: add avoid-slur (ugh.)
5135 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5136 intersection gets smaller. This fixes slurs over extreme points.
5138 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5139 stems with neutral-direction set.
5141 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5143 * lily/open-type-font.cc (load_table): format error.
5145 * lily/change-iterator.cc (process): format fix.
5147 * flower/include/international.hh (_f): idem.
5149 * flower/include/std-string.hh: add format printf attribute.
5151 * scm/define-grobs.scm (all-grob-descriptions): height of all
5152 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5154 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5157 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5159 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5161 * input/regression/: upgraded syntax for some files.
5163 * THANKS: Add bughunters.
5165 2006-02-22 Graham Percival <gpermus@gmail.com>
5167 * Documentation/user/ invoking.itely, advanced-notation.itely,
5168 global.itely: long-awaited "let's make chapter 10 not suck"
5169 update. Rearrange chapter 10; now called "global issues",
5170 addresses file structure, etc. Some info from other files
5171 moved into global.itely.
5173 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5175 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5176 catch trill-span-event notes.
5178 * Documentation/user/examples.itely (Ancient notation templates): typo.
5181 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5183 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5185 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5187 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5189 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5190 froum Laissez_vibrer_engraver.
5192 * ly/declarations-init.ly (repeatTie): add \repeatTie
5194 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5196 * scm/define-grob-properties.scm (all-user-grob-properties): add
5197 head-direction property.
5199 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5200 from_lv_ties. Take head direction argument.
5202 * lily/semi-tie-column.cc: rename from
5203 laissez-vibrer-tie-column.cc. Rename class too.
5205 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5208 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5210 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5212 (find_breaks): idem.
5214 2006-02-21 Graham Percival <gpermus@gmail.com>
5216 * Documentation/user/advanced-notation.itely: fixed make-moment]
5219 * Documentation/user/basic-notation.itely: more clarification to
5222 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5224 * lily/include/constrained-breaking.hh (class
5225 Constrained_breaking): new file.
5227 * lily/constrained-breaking.cc (resize): new file.
5229 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5231 * Documentation/user/advanced-notation.itely (Clusters): insert
5234 * lily/tie-column.cc (calc_positioning_done): support for
5237 * lily/tie-formatting-problem.cc
5238 (generate_extremal_tie_variations): factor out.
5239 (score_ties_configuration): annotate all tie
5240 (print_ties_configuration): new routine.
5241 (generate_configuration): nudge extremal ties outside of the head
5243 (score_ties_configuration): oops. convert to staff-space before
5244 determining position symmetry.
5246 2006-02-20 Graham Percival <gpermus@gmail.com>
5248 * Documentation/user/*-notation.itely: misc minor editing,
5249 shifting doc sections around.
5251 * Documentation/user/*-notation-itely, global.itely,
5252 changing-defaults.itely: added new stuff from NEWS.
5254 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5258 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5260 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5261 lilypond --verbose for lp-book.
5263 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5264 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5266 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5267 $(buildscript-dir) iso. absolute depth.
5269 * buildscripts/genicon.py (dir): thinko.
5271 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5273 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5275 * scm/output-lib.scm: swap darkcyan/darkyellow
5277 * THANKS: Add bughunters.
5279 2006-02-19 Graham Percival <gpermus@gmail.com>
5281 * Documentation/user/programming-interfaces.itely: fixed example.
5283 * Documentation/user/instrument-notation.itely: fix @{ @}.
5285 * scm/script.scm: add avoid-slur for \open.
5287 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5289 * lily/tie-formatting-problem.cc (score_configuration): use
5290 sliding score for min-length.
5292 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5293 spaghetti for icons.
5295 * buildscripts/genicon.py (program_name): new file.
5297 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5299 (generate_configuration): for small ties, also look for collisions
5300 at Y + DIR*h + DELTA_Y.
5301 (get_variations): consider variation for dot positions too.
5303 * lily/side-position-interface.cc (aligned_side): take abs for
5304 quantized rounded position. Fixes tenuto below staff.
5306 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5307 markers when necessary.
5309 * lily/program-option.cc (internal_set_option): add
5310 strict_infinity_checking option.
5312 * scm/output-lib.scm (cyan): swap yellow and cyan.
5314 2006-02-19 Graham Percival <gpermus@gmail.com>
5316 * darwin.patch: trivial linenumber update.
5318 * Documentation/user/ {various}: `\context foo = named' changed
5319 to `\new foo = "name"' in docs.
5321 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5323 * scm/stencil.scm (annotate-y-interval): use it.
5325 * scm/lily-library.scm (interval-sane?): new function.
5327 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5330 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5333 * flower/include/std-vector.hh (iterof): add iterof macro.
5335 * lily/enclosing-bracket.cc (width): new function.
5337 * lily/align-interface.cc (align_elements_to_extents): reinstate
5340 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5342 * Documentation/index.html.in: fix spelling: thankyous.
5344 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5346 * lily/lyric-hyphen.cc: typo.
5348 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5350 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5351 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5354 * VERSION: release 2.7.35
5356 * lily/beam.cc (get_default_dir): oops. Take abs () for
5358 (get_default_dir): use extreme position criterion only in absence
5359 of forced stem directions.
5361 * VERSION (PATCH_LEVEL): bump VERSION.
5363 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5364 dependencies. Necessary for -jX builds.
5366 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5368 * lily/relocate.cc (setup_paths): Yet another const fix.
5370 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5372 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5374 * lily/relocate.cc (setup_paths): oops.
5376 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5378 * Documentation/index.html.in: order links: html before PDF.
5380 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5382 * lily/tie-column-format.cc (Module): remove.
5384 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5386 * lily/text-spanner.cc (print): idem.
5388 * lily/dynamic-text-spanner.cc (print): only print line if longer
5391 * lily/auto-change-iterator.cc (change_to): formatting.
5393 * lily/beam.cc (get_default_dir): take extreme note head as input
5396 * lily/tie.cc (get_default_dir): only look directions for visible
5399 * lily/side-position-interface.cc (aligned_side): oops. Don't
5400 mutiply with direction. This fixes quantized (staccato, tenuto)
5401 scripts below notes.
5403 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5404 direction. Fixes c-lyrics-center-align.ly
5406 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5408 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5411 * lily/std-string.cc:
5412 * lily/include/std-vector.hh (split_string): Move and rename from
5413 lily/include/misc.hh, lily/misc.cc. Update callers.
5415 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5417 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5419 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5421 * flower/test-file.cc: New file.
5423 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5426 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5428 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5430 * flower/include/file-storage.hh: remove file.
5432 * lily/include/midi-item.hh (class Midi_track): idem.
5434 * lily/include/source.hh (class Sources): idem.
5436 * lily/include/performance.hh (class Performance): use vector
5439 * flower/include/cons.hh (class Cons): remove file.
5441 * flower/include/flower-proto.hh: remove template cruft.
5443 * lily/include/font-metric.hh: use size_t not vsize for indices.
5445 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5448 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5450 * lily/include/paper-book.hh (class Paper_book):
5451 make get_system_specs() public.
5453 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5454 the force=10000 case if we don't have a current-best.
5456 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5459 * flower/include/flower-proto.hh: remove outdated templates.
5461 * scm/page.scm: use annotate-spacing
5463 2006-02-15 Graham Percival <gpermus@gmail.com>
5465 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5467 * THANKS: moved Erlend Aasland to contributors.
5469 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5471 * config.hh.in: remove HAVE_PANGO_16
5473 * lily/tuplet-bracket.cc (calc_positions): multiply with
5474 staff-space for beam case. This fixes tuplets+beams on scaled
5477 * config.hh.in: remove all Kpathsea related defines.
5479 * lily/dot-column.cc (side_position): reach stem via dots->
5480 head->stem. Inspect all stems for dot collisions.
5482 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5485 * lily/bar-number-engraver.cc (process_music): document function
5488 * lily/score.cc (default_rendering): add pscore, not systems
5491 * lily/paper-book.cc (get_system_specs): separate generation of
5494 * flower/include/std-vector.hh: don't include config.hh
5496 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5498 * flower/include/std-vector.hh: Better wrapper compatibility with
5501 * flower/include/flower-proto.hh: Remove cheap forward declaration
5504 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5506 2006-02-14 Graham Percival <gpermus@gmail.com>
5508 * Documentation/user/invoking.itely: add warning about command line.
5510 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5512 * lily/include/lily-proto.hh: add Prob, rm Page.
5514 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5516 * VERSION: release 2.7.34
5518 * lily/relocate.cc (framework_relocation): show canary if
5519 GHOSTSCRIPT_VERSION undefined.
5521 * GNUmakefile.in: remove $(VERSION) symlink.
5523 * lily/relocate.cc (setup_paths): add +
5525 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5527 * Documentation/index.html.in: specify sizes for all big HTML pages.
5529 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5531 * config.hh.in: remove @FRAMEWORKDIR@
5533 * lily/system-start-text.cc (get_stencil): new file: separate out
5534 system-start-delimiter text support.
5536 * input/**ly: replace \context with \new where appropriate.
5540 * lily/slur-scoring.cc (get_base_attachments): use
5541 robust_relative_extent. This fixes problems with empty paper-columns.
5543 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5545 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5547 * scm/define-music-properties.scm (all-music-properties):
5548 create-new property.
5550 * lily/context-specced-music-iterator.cc (construct_children):
5551 inspect 'create-new property iso. magical $uniqueContextId context
5554 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5556 * lily/context-key-manager.cc (Module): new file. Encapsulate
5557 object key generation.
5559 * lily/include/context-key-manager.hh (Module): new file.
5561 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5563 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5566 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5568 (reloc_b): excise --enable-framework-dir
5570 * lily/relocate.cc (framework_relocation): use getenv
5571 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5573 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5575 * flower/include/std-string.hh:
5576 * flower/include/std-vector.hh: Finish std:: conversion; move
5577 flower extensions from std:: namespace. Update users.
5579 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5580 their expansion to vector<*>. Update users.
5582 2006-02-10 Graham Percival <gpermus@gmail.com>
5584 * Documentation/user/invoking.itely: add example to File structure.
5586 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5587 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5589 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5591 * ly/paper-defaults.ly: typo.
5593 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5594 set_parent() for parentheses. This will make it show up in bbox
5597 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5598 ly:grob-common* functions.
5600 * lily/grob-scheme.cc (LY_DEFINE):
5601 ly:grob-common-refpoint-of-array: new function
5602 ly:grob-common-refpoint: new function
5603 ly:grob-relative-coordinate: new function
5605 * lily/instrument-name-engraver.cc (process_music): use
5606 Text_interface::is_markup(). This fixes \markup on instrument names.
5608 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5611 * lily/slur.cc (print): idem.
5613 * lily/tie.cc: add line-thickness for ties.
5615 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5617 * scm/output-svg.scm: Document diversion from GNU coding standards
5618 as a workaround for a bug in Microsoft Internet Explorer.
5620 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5622 * lily/instrument-name-engraver.cc (process_music): use
5623 is_markup() iso. is_string()
5625 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5627 * lily/percent-repeat-engraver.cc (process_music): only look at
5628 main_part_ for % repeats.
5630 * lily/stem-tremolo.cc (get_beam_translation): new function.
5631 (calc_slope): new function.
5632 (height): don't use real slope.
5634 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5636 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5637 new connect-to-neighbor, control-points and staff-padding
5638 properties to make ligature brackets showing up again.
5640 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5642 * VERSION: release 2.7.33
5644 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5647 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5648 remove applyOutput example.
5649 (Objects connected to the input): document \tweak, \parenthesize
5651 * lily/relocate.cc (prefix_relocation): allow "current"
5652 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5653 changing VERSION in a lily tree less painful.
5655 * input/regression/parenthesize.ly: new file.
5657 * scm/output-lib.scm (parenthesize-element): new function.
5659 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5661 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5663 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5664 cause: accidentals are caused by note heads, not note events.
5666 2006-02-08 Graham Percival <gpermus@gmail.com>
5668 * darwin.patch: small patch from Erlend, thanks!
5670 * Documentation/user/basic-notation.itely: add stem-neutral example.
5672 * Documentation/user/putting.itely: clarifications.
5674 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5676 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5677 note, add more guidelines to what should go into NEWS.
5679 * input/sakura-sakura.ly: document how to override font.
5681 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5683 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5685 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5687 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5689 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5690 convertrules. Add explicit grouping, needed for python2.2.
5692 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5694 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5696 2006-02-07 Graham Percival <gpermus@gmail.com>
5698 * Documentation/user/global.itely: fix line-width in (text) docs.
5700 * Documentation/user/lilypond-book.itely: same.
5702 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5704 * VERSION (PACKAGE_NAME): release 2.7.32
5706 * Documentation/topdocs/NEWS.tely (Top): document new variable
5709 * flower/include/array.icc (Message): remove file.
5711 * flower/include/std-vector.hh: make sure vsize and VPOS are
5712 defined for binary_search_bounds().
5714 * flower/std-string.cc (std): add to_string(long unsigned).
5716 * configure.in (gui_b): excise std_string option.
5717 (gui_b): excise std_vector option.
5719 * flower/string.cc (Module): excise flower array & string
5721 * flower/include/std-string.hh: excise flower string.
5723 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5725 * python/convertrules.py (lilypond_version_re_str): require
5726 only numbers and dots in \version string.
5728 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5730 * lily/system-start-delimiter.cc (print): allow style = text too.
5732 * lily/system-start-delimiter-engraver.cc
5733 (acknowledge_system_start_text): new function, also add add to
5734 support of system-start-text (instrument names). This fixes
5735 instrument names on piano staves.
5737 * lily/instrument-name-engraver.cc: rewrite. Use
5738 system-start-delimiter approach. This save memory and cpu.
5740 * scm/define-grobs.scm (all-grob-descriptions): remove
5741 instrument-name from break-alignment.
5743 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5745 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5747 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5750 * configure.in (std_vector): On by default.
5752 * lily/include/font-metric.hh:
5753 * lily/include/tfm-reader.hh:
5754 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5757 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5759 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5761 * VERSION (PACKAGE_NAME): 2.7.31
5763 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5764 EPS edge at 0, but take minimum with left-overshoot. This fixes
5765 cut off system start delims.
5767 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5768 hack: add to axis group if not added yet. This fixes hara kiri'd
5771 * lily/hara-kiri-group-spanner.cc
5772 (force_hara_kiri_in_y_parent_callback): fix signatures.
5774 * lily/hairpin.cc (print): check next hairpin to see whether or
5775 not to be continuing.
5777 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5779 * Remove trailing whitespace from makefiles.
5781 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5784 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5786 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5788 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5790 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5792 * configure.in: Use it.
5794 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5796 * scm/music-functions.scm (pitch-of-note): new function.
5798 * ly/music-functions-init.ly: add \octave and \addquote
5800 * lily/parser.yy (music_function_chord_body): softcode \octave.
5801 (lilypond_header): softcode \addquote
5803 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5805 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5806 array.hh, parray.hh at all. Getting ready to flip the
5809 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5811 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5814 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5816 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5818 * flower/include/array.hh: typo.
5820 2006-02-02 Graham Percival <gpermus@gmail.com>
5822 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5824 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5826 * flower/include/pqueue.hh: Derive from std::vector.
5828 * flower/include/parray.hh: Conform to std::vector interface.
5831 2006-02-02 Graham Percival <gpermus@gmail.com>
5833 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5835 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5837 * flower/file-path.cc (is_file): remove if 0 section.
5839 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5840 selecting afii61352.
5842 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5844 * flower/include/std-vector.hh (boundary): Oops, reverse.
5846 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5847 remove superfluous `d'.
5849 * flower/include/std-vector.hh (boundary, top): Detach from class.
5850 Remove empty vector shell.
5852 * flower/include/array.hh (reverse, swap): Detach from class.
5855 * flower/include/std-vector.hh
5856 * flower/include/array.hh (concat): Globally change to insert ().
5859 * flower/include/std-vector.hh
5860 * flower/include/parray.hh
5861 * flower/include/array.hh (elem, elem_ref): Globally replace by
5864 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5866 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5868 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5869 anticipate on identifier substitutions.
5871 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5873 * flower/include/std-vector.hh (insert): Remove, replace by
5874 std::vector interface. Update callers.
5876 * flower/include/array.icc (insert): Change signature to
5877 match std::vector interface.
5879 * flower/include/array.icc (vector_sort): Bugfix.
5881 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5883 * lily/parser.yy (output_def_head_with_mode_switch): new
5884 production. Result: dashes and underscores may be used in the
5887 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5889 * python/convertrules.py (conv): oops. One slash too much.
5891 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5893 * flower/include/std-vector.hh (sort): Remove, replace by
5894 ::vector_sort. Update callers.
5896 * flower/include/std-vector.hh (slice): Remove. Update callers.
5899 * flower/test-std.cc (vector_sort): New test.
5901 2006-02-01 Graham Percival <gpermus@gmail.com>
5903 * Documentation/user/putting.itely: fixes from Erik.
5905 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5907 * flower/test-std.cc: Add simple unit test for vector migration.
5909 * stepmake/stepmake/test*: Unit test support.
5911 * flower/include/std-vector.hh (del): Remove. Use erase (),
5914 * flower/include/array.hh (begin, end): Add.
5917 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5919 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5920 std::string not String.
5922 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5925 * lily/prob.cc (Prob): copy type_ too.
5927 * lily/lily-guile.cc (mangle_cxx_identifier): new
5928 function. Class_bla::foo_bar_[px] ->
5929 ly:class-bla::foo-bar[?!]. Changes throughout
5931 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5933 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5935 * lily/beam.cc (calc_direction): take dir from visible stem in
5938 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5940 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5941 Fix -1, >=0 boundary checks for unsigned vsize.
5943 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5944 loop for unsigned vsize.
5946 * configure.in (--enable-std-vector): New option.
5947 (--enable-std-string): On by default.
5949 * flower/include/std-vector.hh: New file. Enable switch to
5950 std::vector, update client code.
5952 2006-01-30 Graham Percival <gpermus@gmail.com>
5954 * scm/document-translation.scm: clarify "this context is also
5955 known as". Thanks, Werner!
5957 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5959 * Documentation/user/invoking.itely: small fix from Don.
5961 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5963 * scm/lily.scm (define-scheme-options): rename option
5964 preview-include-book-title to book-title-preview
5965 (define-scheme-options): move force-eps-font-include (from paper
5966 block) to eps-font-include -d option.
5968 * VERSION (PATCH_LEVEL): release 2.7.30
5970 * input/bach-schenker.ly (staffPiano): new file.
5972 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5974 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5977 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5979 * ps/lilyponddefs.ps: remove start-system, stop-system,
5980 start-page fluff. This saves putting { } code on the stack, fixing
5981 stack overflows when including EPS files.
5983 2006-01-29 Graham Percival <gpermus@gmail.com>
5985 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5987 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5989 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5991 2006-01-28 Graham Percival <gpermus@gmail.com>
5993 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5995 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5997 * input/mutopia/claop.py: Update.
5999 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6001 * input/regression/completion-heads.ly (texidoc): fix.
6003 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6005 * lily/tie-formatting-problem.cc
6006 (set_ties_config_standard_directions): use abs iso fabs for ints.
6008 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6010 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6011 little less than noteheight, to prevent overlaps in chords.
6013 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6014 head, and fudge stem-attachment.
6016 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6018 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6020 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6022 * lily/main.cc (main): Debugging aid: catch exceptions.
6024 * flower/std-string.cc (to_string): Robustification. Fixes midi
6025 output with std::string.
6027 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6029 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6031 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6033 * Fix -DSTRING_UTILS_INLINED.
6035 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6037 * VERSION (PATCH_LEVEL): release 2.7.29
6039 * lily/relocate.cc (setup_paths): mingw uses std string too.
6041 * lily/*.cc: various fixes for substr(ARG).
6043 * lily/sustain-pedal.cc (print):
6045 * flower/file-name.cc (slashify): use std strings.
6047 * flower/string-convert.cc: remove publib.h
6049 * scm/define-markup-commands.scm (verbatim-file): new markup
6050 command \verbatim-file
6052 * Documentation/topdocs/NEWS.tely: fixup URLs
6054 * input/regression/alignment-vertical-manual-setting.ly (Module):
6057 * lily/align-interface.cc (align_elements_to_extents): overwrite
6058 translations with numbers in alignment-offsets from left bound
6060 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6061 (page-translate-systems): new function: take into account Y-offset.
6063 * Documentation/topdocs/NEWS.tely (Top): document new features.
6065 * input/regression/page-layout-manual-position.ly (Module): new
6068 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6070 * flower/file-path.cc (path::parse_path): Oops.
6072 * Finish std::string interface. For now, use std:: marker
6073 throughout for easy s/r.
6075 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6077 * Documentation/user/putting.itely (Score is a single musical
6079 (Score is a single musical expression): more typos.
6081 * scm/page.scm (annotate-space-left): thinko.
6082 (annotate-page): more thinkos.
6084 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6086 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6087 for different \score blocks separately.
6088 (post-process-pages): put write-page-layout into paper block.
6090 * lily/output-def.cc (get_parser): new file.
6092 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6095 * lily/include/output-def.hh (class Output_def): add parser_ member.
6097 * input/regression/page-layout-twopass.ly (Module): new file.
6099 * scm/lily.scm: remove cpp hack.
6101 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6103 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6105 * GNUmakefile.in (c-clean): New target.
6107 * flower/include/std-string.hh: String/std::string compatibility:
6108 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6111 * flower/rational.cc:
6112 * flower/include/rational.hh:
6115 * flower/include/offset.hh:
6117 * flower/interval.cc:
6118 * flower/include/interval.hh:
6120 * flower/string-convert.cc:
6121 * flower/include/string-convert.hh: Use std::string [interface].
6124 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6126 * Documentation/index.html.in: clean up.
6128 2006-01-25 Graham Percival <gpermus@gmail.com>
6130 * Documentation/user/putting.itely: another new untested doc section.
6132 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6134 * scm/layout-page-layout.scm (write-page-breaks): write
6135 \spacingTweaks #ALIST. Handle grace timing.
6137 * scm/: more imports.
6139 * scm/page.scm (make-page): add footer/header.
6140 (annotate-space-left): revise: only take page argument.
6141 (layout->page-init): new function.
6143 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6144 version of the system/spacing/linebreak hack writing to the output
6146 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6149 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6152 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6154 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6156 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6158 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6159 handling to page.scm
6161 * lily/prob-scheme.cc (LY_DEFINE): new file.
6162 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6164 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6167 * lily/music.cc (derived_mark): derive Music from Prob.
6169 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6171 * lily/prob.cc (Module): Implement Prob (Property Object), object
6172 with shared and r/w property alists.
6174 * lily/include/prob.hh (Module): new file. Declare Prob.
6176 * flower/string.cc: remove is_empty().
6178 * flower/include/string.hh (class String): remove String:: qualifier.
6180 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6181 substitute appropriate functions.
6183 * flower/include/string.hh (class String): remove to_str0 and
6184 is_empty(). S&R everywhere.
6186 2006-01-23 Graham Percival <gpermus@gmail.com>
6188 * Documentation/user/basic-notation.itely: add hairpin
6189 after-linebreak tweak to commonprop.
6191 * Documentation/user/putting.itely: added two new sections.
6193 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6195 * flower/international.cc:
6196 * flower/include/international.hh:
6198 * flower/getopt-long.cc:
6199 * flower/include/getopt-long.hh: Use std::string [interface].
6202 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6204 * stepmake/stepmake/executable-rules.make: Add dependency on
6207 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6209 * flower/file-path.cc:
6210 * flower/include/file-path.hh: Use std::string [interface].
6213 * flower/direction.cc:
6214 * flower/axis.cc: Unused. Remove.
6216 * configure.in (--enable-std-string): New option.
6218 * flower/std-string.cc:
6219 * flower/include/std-string.hh: New file.
6221 * flower/file-name.cc[STD_STRING]:
6222 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6224 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6226 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6228 * scm/define-markup-commands.scm (with-dimensions):
6229 with-dimensions markup command.
6231 * input/test/font-table.ly: use it.
6233 * lily/open-type-font.cc (glyph_list): new function.
6235 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6237 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6239 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6241 * ly/music-functions-init.ly (parallelMusic): new music function
6242 for parallel music entry.
6244 * scm/define-music-properties.scm (all-music-properties): new
6245 'void music property
6247 * scm/music-functions.scm (ly:music-message): make public, to be
6248 used in music function definitions
6250 * scm/lily-library.scm (collect-music-for-book): discard music
6251 when the 'void property is set.
6253 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6255 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6257 * mf/GNUmakefile: idem.
6259 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6261 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6263 * Documentation/user/notation-appendices.itely (The Feta font):
6266 * input/test/font-table.ly: new file. Generate font table within lily.
6268 * Documentation/user/notation-appendices.itely (The Feta font):
6269 use new font-table.ly file.
6271 * stepmake/stepmake/install-out-targets.make
6272 (local-install-outfiles): only create directory if
6273 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6275 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6277 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6279 * VERSION (PACKAGE_NAME): release 2.7.28
6281 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6282 the right font from a Mac dfont.
6283 (write-preamble): don't forget directory, only look at files.
6285 This fixes problems with TTF files in dfonts that don't match
6286 their PostScript names.
6288 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6289 PS name from TTF font.
6291 * input/regression/tie-manual.ly: document new feature.
6293 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6295 * VERSION (MY_PATCH_LEVEL): bump to .28
6297 * Documentation/user/basic-notation.itely (Ties): add tie examples
6300 * lily/tie-formatting-problem.cc (score_ties_configuration):
6301 symmetry penalties for outer ties.
6303 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6305 * lily/tie-formatting-problem.cc (generate_configuration)
6306 (set_manual_tie_configuration): skip non-pair manual
6307 tie-configuration, so you can set individual ties as
6309 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6311 * input/regression/tie-chord.ly: use generateTiePattern to
6314 * lily/tie-formatting-problem.cc (peak_around): new function.
6315 (score_configuration): use sliding criterion for staff line collisions.
6316 (score_configuration): idem for dot collisions.
6317 (generate_configuration): use separate stem_gap for gap to stem.
6319 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6320 separate penalty factors for x and y distance.
6321 (struct Tie_details): separate penalties for tip and center line collisions.
6323 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6325 * lily/tie-formatting-problem.cc (generate_configuration): make
6326 large ties avoid stafflines in the horizontal section.
6327 (score_configuration): use softcoded penalties
6328 (score_aptitude): idem.
6330 * lily/tie-helper.cc (from_grob): softcode tie details
6332 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6334 * lily/staff-symbol-referencer.cc (on_line): rename from
6337 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6339 * ly/music-functions-init.ly: remove duplicate tag.
6341 * lily/include/*.hh: GCC 4.1 fixes.
6343 006-01-16 Erlend Aasland <erlenda@gmail.com>
6345 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6347 * scm/define-music-types.scm: fix bug in desc. string
6348 for OverrideProperty
6350 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6352 * scripts/lilypond-book.py: bugfix
6354 * scm/define-music-types.scm: fix typos.
6356 2006-01-14 Graham Percival <gpermus@gmail.com>
6358 * Documentation/user/ basic-notation.itely, global.itely,
6359 advanced-notation.itely, instrument-notation.itely: small
6360 additions (bugs and commonly tweaked properties).
6362 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6364 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6365 detection of mingw build.
6366 (MINGW_BUILD): opps.
6368 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6370 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6373 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6375 * scm/music-functions.scm (skip->rest): add skip->rest
6377 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6379 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6382 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6383 config dirs. Aids debugging.
6384 (display_config): also display config files.
6386 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6388 * VERSION: release 2.7.27
6390 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6391 for determining bar size.
6393 * lily/staff-symbol.cc (print): place lines at distance line-positions
6395 * scm/define-grob-properties.scm (all-user-grob-properties): add
6398 * lily/staff-symbol.cc (height): new function.
6400 * input/regression/staff-line-positions.ly: new file.
6402 2006-01-06 Graham Percival <gpermus@gmail.com>
6404 * input/test/add-staccato.ly: remove reference to old file.
6406 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6408 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6409 lilypond binary too.
6411 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6413 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6415 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6417 * scripts/midi2ly.py: Bugfix: Declare datadir.
6419 * make/ly-rules.make:
6420 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6421 that seems to be gone). Fixes make web.
6423 * The grand 2005-2006 replace.
6425 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6427 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6429 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6430 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6431 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6432 like -dgs-font-load.
6434 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6435 remove absolute path to lilypond binary.
6437 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6439 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6441 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6443 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6445 * mf/GNUmakefile: remove broken dvips map symlink.
6447 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6450 * configure.in: Cosmetic fixes.
6452 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6454 * Documentation/user/music-glossary.tely (Pitch names): Added
6455 Spanish pitch names and durations, thanks to Ernesto Gancedo
6457 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6459 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6460 init. Fixes verbose printing of .scm files.
6462 * stepmake/aclocal.m4: add spaces before - options.
6464 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6466 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6467 of path search in local block variable.
6469 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6471 * configure.in (NCSB_DIR): --enable-ncsb-dir
6472 (LINK_GXX_STATICALLY): denko.
6474 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6476 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6477 use locate to find c059033l.pfb.
6479 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6481 * lily/tie-formatting-problem.cc
6482 (problem::generate_base_chord_configuration): Use my_round (was
6485 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6486 do not invoke mbrtowc.
6488 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6490 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6492 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6494 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6496 * Documentation/user/invoking.itely (svg): revise.
6498 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6500 * lily/lexer.ll: use sourcefilename iso. renameinput.
6502 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6504 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6505 <PostScriptName>.ttf instead of c059XXXttf.
6507 * lily/program-option.cc (LY_DEFINE): special support for
6508 --verbose, so it works before option init too.
6510 * mf/GNUmakefile (local-install): oops.
6512 * lily/lyric-hyphen.cc (print): oops.
6514 * buildscripts/pfx2ttf.fontforge: new file.
6516 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6517 ($(outdir)/%.ttf): new rule.
6519 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6522 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6525 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6527 * VERSION: release 2.7.26
6529 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6531 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6533 * lily/font-config.cc (init_fontconfig): verbosity.
6535 * THANKS: add Muziekacademie Lede.
6537 * scripts/musicxml2ly.py (print_voice_definitions): new function
6538 (print_score_setup): new function
6539 (convert): read part definition to output staves properly.
6541 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6544 * python/musicexp.py (Output_printer.__init__): use _ in data
6546 (Output_printer.unformatted_output): new function: no formatting,
6548 (Duration.get_length): remove isinstance() checks for
6549 Output_printer everywhere.
6551 * input/regression/lyrics-bar.ly (texidoc): add
6552 Separating_line_group_engraver.
6554 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6556 * lily/relocate.cc (framework_relocation): New function,
6557 factored from set_relocation ().
6558 (prefix_relocation): Rename from set_relocation ().
6559 (setup_paths): Use it.
6561 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6563 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6564 numbers. Patch by Erlend Aasland.
6566 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6568 * lily/font-config.cc (init_fontconfig): print warning if cache
6569 file is not existant.
6571 * lily/main.cc: don't use #ifdef but #if
6573 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6575 * lily/grob-property.cc (internal_set_property): don't abort on
6576 calculation-in-progress.
6578 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6580 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6581 connect-to-neighbor property not connect-to-other
6583 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6584 (LY_DEFINE): oops. don't forget protection.
6586 * flower/parse-afm.cc (Module): strip AFM handling completely.
6588 * lily/stencil-expression.cc: idem.
6590 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6592 * lily/function-documentation.cc (ly_add_function_documentation):
6593 use static member iso. Protected_scm
6595 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6597 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6599 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6601 * lily/relocate.cc (set_env_dir): New function.
6602 (set_relocation): Use it to fix setting PANGO_PREFIX.
6604 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6606 * input/regression/stem-direction-context.ly: remove rest.
6608 * lily/melody-engraver.cc (process_music): restart for bar lines.
6609 (acknowledge_slur): restart for slurs.
6611 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6613 * Documentation/user/invoking.itely: describe how to view SVG
6614 output using Inkscape which replace embedded fonts with OTF fonts.
6616 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6618 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6620 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6622 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6625 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6627 * VERSION (PACKAGE_NAME): release 2.7.25
6629 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6631 * input/regression/stem-direction-context.ly: new file.
6633 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6635 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6638 * ly/engraver-init.ly: add Melody_engraver
6640 * lily/beam.cc (calc_direction): use default-direction
6641 iso. get_default_direction()
6643 * scm/define-grob-properties.scm (all-user-grob-properties): add
6644 default-direction property.
6646 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6648 * lily/stem.cc (calc_default_direction): remove
6649 Stem::get_default_direction, use default-direction with callback
6652 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6654 * lily/melody-engraver.cc: new file. Acknowledge stems for
6655 interpolated stem directions.
6657 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6659 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6661 * lily/slur-configuration.cc (fit_factor): more robust check for
6662 point in curve X-extent.
6664 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6665 (outside_slur_callback): check for 'outside avoidance.
6667 * lily/slur-configuration.cc (score_extra_encompass): don't use
6668 bound->column() == avoid->column() for checking extents, as this
6669 doesn't work for accidentals.
6671 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6672 DynamicText hardcoding.
6674 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6675 crash if bound stem is NULL
6677 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6680 2005-12-22 Graham Percival <gpermus@gmail.com>
6682 * scm/define-markup-commands.scm: typo. @code{\raise}
6685 * darwin.patch: now used again, includes a
6686 required patch from fink.
6688 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6690 * po/TODO: mention gtranslator along with kbabel.
6691 * po/fi.po: update translations.
6693 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6695 * lily/relocate.cc (setup_paths): Bugfix.
6697 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6699 * lily/slur-configuration.cc (score_extra_encompass): don't use
6700 "avoid" choice for avoid-slur.
6702 * stepmake/bin/install.py (dest): don't create existing dir.
6704 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6706 * stepmake/bin/install.py: Remove file before copying.
6709 * stepmake/aclocal.m4: Do not substitute INSTALL.
6711 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6713 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6714 depend on link-tree.
6716 * lily/relocate.cc (setup_paths): only check path for non-absolute
6717 dir without directory part.
6719 * flower/file-name.cc (is_absolute): new method.
6720 (is_absolute): check root_ too.
6722 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6724 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6725 relocation code. Oops, don't comment out too much.
6727 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6730 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6733 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6735 * .cvsignore: Add install-sh.
6737 * autogen.sh (srcdir): Typo.
6739 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6741 * autogen.sh (srcdir): urg. Touch install-sh.
6743 * stepmake/bin/install-sh (Module): remove.
6745 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6747 * lily/include/relocate.hh: new file.
6749 * lily/relocate.cc: new file. Contain relocation logic.
6751 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6752 (main): read LILYPOND_VERBOSE as the first thing.
6754 * stepmake/aclocal.m4: remove INSTALL variable.
6756 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6757 separate target for making font symlinks.
6758 (documentation-dir): use $(if $(findstring )) for switching off
6761 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6762 something if DOCUMENTATION is no.
6764 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6766 * VERSION: release 2.7.24
6768 * lily/script-column-engraver.cc (stop_translation_timestep):
6769 delay adding to script-column.
6771 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6773 * python/convertrules.py (conv): rule for number-visibility
6775 * lily/slur-configuration.cc (score_extra_encompass): different
6776 distance measure for avoid and inside avoidance.
6777 (score_extra_encompass): use 1/(distance+eps) as penalty.
6779 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6780 encompass objects for generating slur curves.
6782 * lily/slur.cc: use details iso. slur-details property.
6784 * input/regression/slur-tuplet.ly: new file.
6786 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6788 * flower/include/offset.hh (class Offset): new operator /=
6790 * lily/tuplet-number.cc (print): new file, new interface.
6792 * scm/define-grob-properties.scm (all-user-grob-properties):
6793 remove number-visibility property.
6795 * lily/tuplet-bracket.cc (calc_control_points): new function
6796 (calc_connect_to_neighbors): new function.
6797 (print): remove text handling for tuplet numberdef.
6799 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6802 * lily/lily-guile.cc (robust_scm2booldrul): new function
6804 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6806 * lily/tuplet-bracket.cc (calc_position_and_height): use
6807 staff-padding to control whether tuplet brackets are over staves.
6809 * lily/grob.cc (suicide): clear dim_caches_.
6811 * lily/dimension-cache.cc (clear): new function.
6813 * lily/grob.cc (extent): swap order of min-extent and extent
6814 calculations. This fixes hara kiri staves.
6816 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6818 * lily/main.cc: Nitpick: relocation is not based on path, but on
6819 directory (location).
6821 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6823 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6825 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6827 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6829 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6831 * stepmake/stepmake/generic-vars.make (Module): idem.
6833 * stepmake/stepmake/executable-targets.make (default): use it.
6835 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6837 * make/GNUmakefile: don't install make rules.
6839 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6841 (prepend_env_path): more verbosity.
6843 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6845 * GNUmakefile.in: add dir argument for find command.
6847 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6848 fixes weird line numbers for point & click.
6850 * lily/source-file.cc (get_counts): init line/column/char counts.
6852 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6854 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6856 2005-12-16 Graham Percival <gpermus@gmail.com>
6858 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6859 minor fixes from Fredric. Thanks!
6861 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6863 * ly/music-functions-init.ly: add \bar and \clef music function
6865 * lily/lily-lexer.cc: idem.
6867 * lily/parser.yy (FIXME): remove BAR and CLEF.
6869 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6871 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6873 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6874 function arguments too
6876 * lily/main.cc (set_relocation): new function.
6878 * scripts/musicxml2ly.py (convert): add \version
6880 * lily/tie.cc: remove get_default_attachments()
6882 * VERSION (PACKAGE_NAME): release 2.7.23
6884 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6885 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6887 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6889 * lily/tie-formatting-problem.cc (score_ties): new function
6890 (get_variations): new function. Try flipping dirs for collisions.
6891 (generate_optimal_chord_configuration): new function. 1-opt search
6892 for better configuration.
6894 * lily/tie-configuration.cc: new file.
6896 * lily/tie.cc: junk Tie::get_configuration()
6898 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6899 (score_ties_configuration): new function.
6900 (generate_ties_configuration): new function.
6901 (generate_base_chord_configuration): new function.
6902 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6903 (set_manual_tie_configuration): Move body from tie-column-format.cc
6905 * input/regression/tie-dot.ly: new file.
6907 * lily/tie-formatting-problem.cc (score_configuration): score
6910 * lily/tie-helper.cc (get_transformed_bezier): new function
6912 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6914 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6915 -undefined suppress iso. -framework Python
6917 * scm/define-grobs.scm (all-grob-descriptions): set
6918 springs-and-rods (thanks Joe Neeman!)
6920 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6922 * input/no-notation/display-lily-tests.ly (test):
6923 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6924 changed from \tag #'(a b) to \tag #'a \tag #'b
6926 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6928 * Documentation/topdocs/NEWS.tely: strip out-www.
6930 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6932 * config.make.in (AR): add AR and RANLIB
6934 * flower/libc-extension.cc: include cassert
6936 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6939 2005-12-11 Graham Percival <gpermus@gmail.com>
6941 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6943 * stepmake/stepmake/python-modules-vars.make: define
6944 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6946 * THANKS: added Johannes Schindelin.
6948 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6950 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6952 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6953 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6955 * lily/parser.yy: reorganize file layout.
6957 * ly/music-functions-init.ly: add tweak music function.
6959 * lily/grob-info.cc (ultimate_music_cause): new function:
6960 recursively lookup causes.
6962 * lily/parser.yy (chord_body_element): allow music functions for
6963 post-events, allow music functions for chord elements.
6965 * lily/font-config-scheme.cc (display_fontset): add cast.
6967 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6968 #'(a b) -> \tag #'a \tag #'b rule.
6970 * python/musicexp.py (Output_printer.dump_version): new function
6972 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6974 * lily/parser.yy (FIXME): remove \tag
6975 (FIXME): remove tag_music() function.
6977 * lily/lily-lexer.cc: remove \tag
6979 * ly/music-functions-init.ly: define music-function "tag"
6981 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6983 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6985 * VERSION (PATCH_LEVEL): release 2.7.22
6987 * input/regression/lyric-hyphen-retain.ly: renew.
6989 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6992 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6993 iso. minimum-length property for rods.
6995 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6996 LyricSpace item to keep lyrics spaced apart.
6998 * ly/engraver-init.ly: remove Separating_line_group_engraver
7000 * Documentation/user/music-glossary.tely: do setfilename before
7003 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7005 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7006 See xref documentation, for example.
7008 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7010 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7011 pending_skip iso. ly_voice[-1]
7012 (main): add if __main__ for debugging.
7014 * python/musicxml.py (Accidental.__init__): new class.
7016 * scripts/musicxml2ly.py (progress): new function
7017 (musicxml_key_to_lily): don't barf on modeless keys.
7018 (create_skip_music): new function.
7019 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7020 (musicxml_note_to_lily_main_event): new function.
7022 * python/musicexp.py (Music.__init__): add comment field.
7023 (NestedMusic.append): new routine.
7024 (SequentialMusic.print_ly): print comment.
7025 (ArpeggioEvent.ly_expression): new class
7026 (BeamEvent.ly_expression): new class
7027 (NoteEvent.__init__): support for cautionary/forced accs.
7029 * lily/lookup.cc (slur): normal order for array loop.
7031 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7034 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7037 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7039 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7041 * scripts/lilypond-book.py: Introduce option
7042 --preserve-line-breaks, for usage with srcltx
7044 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7046 * scm/output-lib.scm (print-circled-text-callback): draw circle
7047 around text using make-circle-markup.
7049 * Documentation/user/*: strip out-www from file names.
7051 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7053 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7054 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7056 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7058 * Documentation/user/GNUmakefile: idem.
7060 * Documentation/user/macros.itexi: strip out-www
7062 * python/rational.py: python 2.3 compat.
7064 * VERSION (PATCH_LEVEL): release 2.7.21
7066 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7067 option formatting, lilypond style.
7069 * python/musicexp.py: grab from Ikebana: a library for composing
7070 ly music expressions.
7071 (Output_printer): class for advanced .ly printing.
7074 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7075 convert to pythonesque structure.
7077 * python/rational.py: PD rational number class.
7079 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7081 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7083 * lily/part-combine-iterator.cc: Minor bugfix
7085 * THANKS: Update bughunters
7087 2005-12-02 Werner Lemberg <wl@gnu.org>
7089 * mf/README: Document process for proper mf2pt1 conversion.
7091 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7094 * mf/feta-harmonica.mf: Removed. Unused.
7096 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7098 * scripts/lilypond-book.py (do_file): fix thinkos.
7100 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7102 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7103 ($(outdir)/parser.cc):
7104 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7106 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7108 * ly/titling-init.ly (tagline): it should be a space between
7109 "Music engraving by LilyPond" and the version number.
7111 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7113 * VERSION (PACKAGE_NAME): release 2.7.20
7115 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7117 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7119 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7121 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7123 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7125 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7127 * kpath-guile/: remove directory
7129 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7130 file. Encapsulate kpathsea using commandline tools.
7132 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7135 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7137 * Documentation/user/advanced-notation.itely (Setting automatic
7138 beam behavior): Correct a few typos. Thanks to David Bobroff.
7140 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7141 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7143 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7145 * scripts/*.py: gmane address for bugs.
7147 2005-11-28 Pal Benko <benkop@freestart.hu>
7149 * make/ly-rules.make: add -f switch to mv
7151 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7153 * lily/bar-line.cc: interpret it
7155 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7157 * configure.in (--disable-documentation): New switch.
7159 * GNUmakefile.in: Use it.
7161 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7163 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7165 * scripts/lilypond-book.py (do_file): search chunks for
7168 * GNUmakefile.in: add copy step in between so we can lose the
7169 out-www directories.
7171 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7173 * lily/pango-font.cc (pango_item_string_stencil): put
7174 geometry.width into glyph-string too.
7176 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7178 * scm/define-music-display-methods.scm (RevertProperty):
7179 (OverrideProperty): Use grob-property-path property, a list of
7180 symbols, instead of grob-property, which used to be a single
7182 (BassFigureEvent): a figure can be a plain number, not necessarily a
7185 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7187 * VERSION: release 2.7.19
7189 * lily/figured-bass-engraver.cc (process_music): check
7190 figuredBassCenterContinuations first.
7192 * scm/translation-functions.scm (format-bass-figure): make double
7195 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7198 * lily/system-start-delimiter-engraver.cc: move from
7199 Nested_system_start_delimiter_engraver, rename
7200 Nested_system_start_delimiter_engraver ->
7201 System_start_delimiter_engraver.
7203 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7204 bracket type from hierarchy.
7206 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7208 * lily/rest.cc (y_offset_callback): read staff-position.
7210 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7211 mark after-line-breaking-callback as internal.
7213 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7215 2005-11-25 Werner Lemberg <wl@gnu.org>
7217 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7219 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7221 * stepmake/bin/add-html-footer.py (do_file): add google
7223 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7224 staff if first_start_ is true.
7226 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7228 * scripts/midi2ly.py (split_track): add __repr__ members.
7229 (track_first_item): only return Item if not None. This fixes a
7230 problem when dumping a track that starts with an empty channel.
7232 * python/midi.c: doc module.
7234 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7236 * Documentation/user/global.itely (Creating MIDI files): Fix
7237 compilation problem.
7239 2005-11-22 Graham Percival <gpermus@gmail.com>
7241 * Documentation/user/basic-notation.itely: clarify dynamic
7244 * Documentation/user/advanced-notation.itely: add unicode
7245 escape control example, whatever that is. :)
7247 * Documentation/user/global.itely: added "removing dynamics
7250 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7252 * VERSION (PATCH_LEVEL): release 2.7.18
7254 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7255 System_start_delimiter_engraver by
7256 Nested_system_start_delimiter_engraver.
7258 * lily/nested-system-start-delimiter-engraver.cc (struct
7259 Bracket_nesting_node): new class.
7260 (struct Bracket_nesting_group): new class
7261 (struct Bracket_nesting_staff): new class.
7262 (process_music): create hierarchy of grobs. This allows separate
7263 tuning of different SSDs.
7265 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7266 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7268 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7270 * lily/side-position-interface.cc (aligned_side): multiply
7273 * lily/script-engraver.cc (make_script_from_event): allow setting
7276 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7278 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7280 * scm/define-grobs.scm (all-grob-descriptions): new grob
7281 NestedSystemStartDelimiter.
7283 * input/regression/system-start-heavy-bar.ly: new file.
7285 * lily/nested-system-start-delimiter-engraver.cc: new file.
7287 * lily/nested-system-start-delimiter.cc: new file.
7289 * input/regression/system-start-nesting.ly: new file.
7291 * scm/define-grobs.scm (all-grob-descriptions): use X side
7292 positioning for positioning braces for nested contexts.
7294 * lily/system-start-delimiter.cc (print): don't divide extent by
7296 (print): use style iso. glyph.
7297 (staff_bracket): translate glyph inside routine already.
7299 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7301 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7304 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7306 * scm/define-context-properties.scm
7307 (all-user-translation-properties): rename figuredBassFormatter
7308 from newFiguredBassFormatter.
7310 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7312 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7314 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7316 * lily/beam.cc (calc_beaming): new function.
7317 (calc_shorten): new function.
7319 * THANKS: add Edward Neeman.
7321 * input/regression/accidental-clef-change.ly: new file.
7323 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7325 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7327 * lily/clef-engraver.cc (inspect_clef_properties): reset
7328 localKeySignature for clef changes.
7330 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7332 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7333 add dummy definition that works in Linux and add information in
7334 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7336 * Documentation/user/changing-defaults.itely (Modifying context
7337 plug-ins): Add index for \with.
7339 * Documentation/user/music-glossary.tely (dal segno): Updated
7340 example to version >=2.6.
7342 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7344 * Documentation/user/instrument-notation.itely (Printing chord
7345 names): Reorder \chordmode and \repeat in one example.
7347 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7349 * VERSION: release 2.7.17
7351 * Documentation/topdocs/NEWS.tely (Top): add note about
7354 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7355 new function. Search region of 3 positions for best tie.
7356 (score_configuration): new function.
7357 (score_aptitude): new function.
7358 (generate_configuration): new function.
7359 (get_configuration): new function.
7360 (Tie_formatting_problem): new function
7362 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7364 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7366 * THANKS: add Eduardo Vieira & Ralph Little
7368 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7371 * lily/include/tie-formatting-problem.hh (class
7372 Tie_formatting_problem): add Tie_details to
7373 Tie_formatting_problem. Update calling conventions.
7375 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7378 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7380 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7382 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7383 scm/define-context-properties.scm: Maintenance bugfix: make
7384 ligature brackets work again by removing obsolete ligature
7385 primitive callback push/pop.
7387 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7388 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7391 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7393 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7394 used and do not call it a path.
7395 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7397 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7399 * lily/include/tie-formatting-problem.hh (class
7400 Tie_formatting_problem): new file.
7402 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7404 * Documentation/misc/ChangeLog-2.3: new file.
7406 * lily/audio-staff.cc (output): degarianize.
7408 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7410 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7411 Unset PYTHONOPTIMIZE. Fixes install if set.
7413 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7415 * python/convertrules.py (conv): add warning about drums.
7417 * make/stepmake.make: include toplevel-version.make after config.make.
7419 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7420 also allow python2.4
7422 * config.make.in (configure-srcdir): remove GXX GCC vars.
7424 * stepmake/aclocal.m4: don't do non-srcdir build with
7425 symlinks. Use inclusion, so the src directory name can be changed.
7427 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7429 * make/mutopia-vars.make:
7430 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7433 2005-11-13 Werner Lemberg <wl@gnu.org>
7435 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7436 but the affected path. This ensures that the (overlapping) outlines
7437 have the same direction, which is a necessary prerequisite for
7438 FontForge's algorithm to remove overlaps.
7441 * mf/feta-haak.mf: Formatting.
7442 (draw_bracket): Slightly modify outline to avoid an unnecessary
7444 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7445 them from the affected paths.
7447 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7449 * mf/README: remove xpm / accordion notes.
7451 * lily/tie-column-format.cc (set_chord_outline): add dots into
7452 skyline extents. This fixes tie formatting if the left head has dots.
7454 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7455 space inside the staff.
7456 (get_configuration): shift another position if necessary in case
7459 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7461 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7462 buildscript-dir iso. $(depth)/buildscripts.
7464 * tex/GNUmakefile (local-uninstall): remove
7465 music-drawing-routines.ps juggling.
7467 * stepmake/stepmake/install-targets.make (local-install-files):
7468 prepend src-dir to install targets.
7470 * lily/system-start-delimiter-engraver.cc
7471 (acknowledge_system_start_delimiter): use
7472 add_offset_callback(). This fixes translation of nested
7475 * lily/grob-closure.cc (add_offset_callback): only encaps in
7476 simple_closure if it's a procedure.
7478 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7481 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7482 remove-empty where pertinent.
7484 2005-11-12 Graham Percival <gpermus@gmail.com>
7486 * Documentation/user/instrument-notation.itely: added
7487 Cameron Horsburgh's multiple stanzas docs. Thanks!
7489 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7492 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7493 make picture in builddir, not srcdir.
7495 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7497 * VERSION: release 2.7.16
7499 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7502 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7504 * Documentation/user/examples.itely (Piano templates): Minor
7505 modification to the Piano centered lyrics example.
7507 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7509 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7512 * Documentation/user/point-and-click.itely: simplify p&c
7513 instruction: don't configure firefox. Put lilypond-invoke-editor
7514 in front of the browser.
7516 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7517 (run-browser): new function.
7519 * lily/parser.yy (Lily_lexer): recognize Book
7521 * lily/book.cc (clone): new function
7523 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7525 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7527 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7528 Maintenance bugfix: reduce number of font related warnings by
7529 updating naming conventions for glyph-name.
7531 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7533 * scm/define-grobs.scm (all-grob-descriptions): add
7534 rhythmic-grob-interface to TabNoteHead.
7536 * scm/layout-beam.scm (check-quant-callbacks): remove
7539 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7541 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7542 alignment of centered divisiones.
7544 * scm/scripts.scm (articulations): Maintenance bugfix:
7545 follow-into-staff -> quantize-position.
7547 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7548 plica head in porrectus deminutus.
7550 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7552 * make/lilypond.fedora.spec.in (Group): add %clean section.
7554 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7555 less then 1/5th of total length.
7556 (print): use gap too. Fixes tupletUp-single-bracket.ly
7558 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7559 events into EventChord. This fixes textspanners on mm rests. Fixes
7562 * lily/side-position-interface.cc (get_axis): read side-axis
7563 (set_axis): set side-axis.
7565 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7566 properties everywhere.
7568 * lily/spacing-spanner.cc (breakable_column_spacing): add
7569 average-spacing-wishes. Take maximum if not set.
7570 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7572 * scm/define-grobs.scm (all-grob-descriptions): add
7573 average-spacing-wishes.
7575 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7576 offset callbacks. This fixes alignment for Fingering objects.
7578 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7579 space for key - timesig combination.
7581 * input/regression/script-stem-tremolo.ly (Module): new file.
7583 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7586 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7587 Fixes: c-tremolo-script.ly.
7589 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7591 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7593 * scm/define-grobs.scm (all-grob-descriptions): remove
7594 self-X-offset. Fixes alignment of octavate-8.
7596 * scripts/lilypond-book.py (datadir): look in
7597 LILYPONDPREFIX/share/lilypond/current/
7599 * GNUmakefile.in: symlink current to <VERSION>.
7601 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7603 * lily/main.cc: eps listed as a backend.
7605 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7607 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7609 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7611 * lily/include/score.hh (class Score): remove texts_ member.
7613 * lily/beam.cc (set_stem_lengths): force direction callback.
7614 (print): read quantized-positions, so we can force
7615 Beam::set_stem_lengths to occur.
7616 (rest_collision_callback): use common X parent.
7618 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7620 * flower/file-path.cc (find): Bugfix: Return name of file found.
7622 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7623 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7624 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7626 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7628 * flower/offset.cc: idem.
7630 * mf/*.mf: update email address.
7632 * lily/font-config-scheme.cc: new file.
7634 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7636 * lily/*: cs.uu.nl -> xs4all.nl
7638 * VERSION (PATCH_LEVEL): release 2.7.15
7640 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7643 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7645 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7647 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7649 * lily/staff-performer.cc (process_music): add audio
7650 elements. This makes MIDI instrument changes work once again.
7652 * lily/main.cc (LY_DEFINE): add gmane address.
7654 * lily/beam.cc: remove calc_positions()
7656 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7657 original_ in private scope.
7658 (class Grob): drop pscore_ pointer, change to output_def pointer.
7659 (class Grob): cleanup class definition.
7661 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7663 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7665 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7666 absolute. Better diagnostics.
7668 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7669 This makes lilypond run from the build directory using argv0
7670 relocation (without any --prefix or LILYPONDPREFIX setting).
7672 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7674 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7676 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7677 with simple-closure.
7679 * lily/self-aligment-interface.cc (set_align_self): new function
7680 (set_center_parent): new function.
7682 * lily/side-position-interface.cc (set_axis): new function.
7684 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7687 * scm/define-grob-properties.scm (all-user-grob-properties):
7688 remove [XY]-offset-callbacks add [YX]-offset
7690 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7692 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7693 entry for time signatures after breathing signs. Bug report by
7696 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7698 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7699 not absolute, make it absolute using PATH.
7701 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7703 * python/midi.c (initmidi): Fix type for mingw.
7705 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7707 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7709 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7712 * stepmake/aclocal.m4: Support python cross compiling.
7714 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7717 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7719 * scm/output-lib.scm (chain-grob-member-functions): replace
7722 * lily/chained-callback.cc (Module): remove file.
7724 * lily/rest-collision.cc (force_shift_callback_rest): change to
7727 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7729 * lily/grob.cc (y_parent_positioning): remove axis argument from
7730 parent_positioning callbacks.
7731 (Grob): junk init code
7732 (get_offset): use generic property callbacks for
7733 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7734 (axis_parent_positioning): new function
7735 (axis_offset_symbol): new function
7736 (chain_offset_callback): new function
7737 (add_offset_callback): new function
7739 * lily/beam.cc (rest_collision_callback): change signature; this
7740 is now a chained callback.
7742 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7743 callback administration.
7745 * lily/simple-closure.cc: new file. Smob type that allows "grob
7748 (ly:make-simple-closure FUNC A B)
7750 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7753 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7756 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7758 * lily/rest.cc (polyphonic_offset_callback): remove.
7760 * lily/script-engraver.cc (try_music): remove bool* argument.
7762 * scm/script.scm (default-script-alist): set quantize-position
7765 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7767 * lily/side-position-interface.cc (aligned_side): move staff
7768 position quantization from
7769 Side_position_interface::quantised_position().
7770 (quantised_position): remove
7772 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7774 * input/regression/beam-quant-standard.ly: reindent, set
7775 debug-beam-quanting to #t.
7777 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7778 10000 if this is a "hard" concave beam.
7780 * lily/beam.cc (calc_least_squares_positions): change from
7781 calc_least_squares_dy
7782 (set_stem_lengths): this is now a chained callback.
7784 * lily/context-property.cc (execute_general_pushpop_property):
7785 bugfix override with procedure should have effect.
7787 * scm/define-grob-properties.scm (all-internal-grob-properties):
7788 remove position-callbacks.
7790 * scm/define-grobs.scm (all-grob-descriptions): use
7791 ly:make-callback-chain for positions property.
7793 * scm/layout-beam.scm (check-quant-callbacks): return list of
7796 * scm/lily.scm (type-p-name-alist): add callback-chain
7798 * lily/lily-guile.cc (type_check_assignment): type check failure
7799 is warning not message.
7801 * lily/grob-property.cc (try_callback): walk callback chain if
7804 * lily/chained-callback.cc: new file. new smob type.
7806 * lily/lily-guile.cc (procedure_arity): new function.
7808 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7810 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7812 2005-10-25 John Mandereau <john.mandereau@free.fr>
7814 * Documentation/user/instrument-notation.itely (Figured bass):
7815 describe new features
7817 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7819 * lily/beam.cc (calc_least_squares_dy): use property callback.
7821 * lily/beam-concave.cc (calc_concaveness): use property callback.
7823 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7825 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7829 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7831 * scm/layout-page-layout.scm (page-headfoot): annotate
7834 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7836 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7837 doesn't take y-space.
7839 * scm/paper.scm (paper-alist): fix A7 dimensions.
7841 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7843 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7844 src-wildcard, remove $(wildcard).
7846 * po/GNUmakefile (PO_FILES):
7847 * ps/GNUmakefile (PS_FILES):
7848 * tex/GNUmakefile (TEX_FILES):
7849 * cygwin/GNUmakefile (POSTINSTALLS):
7850 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7851 some wildcard calls.
7853 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7855 * THANKS: add Thomas Bushnell.
7857 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7859 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7860 (lilypond-main): Redirect to gui-main if 'gui is set.
7862 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7863 for alternative installations kludging s/share/lib/g
7866 * SConstruct (libdir_package_version): Define.
7868 * python/SConscript:
7869 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7872 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7874 * lily/main.cc: clarify --safe.
7876 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7878 * VERSION: release 2.7.14
7880 * Documentation/user/*.itely: remove minimumVerticalExtent.
7882 * scm/define-grobs.scm (all-grob-descriptions): remove
7883 RemoveEmptyVerticalGroup
7885 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7887 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7890 * python/convertrules.py (conv): add rules.
7892 * lily/grob.cc: remove is_empty()
7894 * lily/grob-property.cc: remove add_to_list_property().
7896 * scripts/convert-ly.py (datadir): add prefix switching hack to
7899 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7900 space-function tweak.
7902 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7904 * scm/define-grob-properties.scm (all-user-grob-properties):
7905 remove callback property.
7907 * lily/include/grob.hh (class Grob): remove property_callbacks_
7908 member. Properties of procedure type are assumed to be callbacks.
7910 * lily/ligature-engraver.cc (override_stencil_callback):
7911 rewrite. Use noteHeadLigaturePrimitive as source.
7913 * scm/define-grob-properties.scm (all-internal-grob-properties):
7914 remove ligature-primitive-callback
7916 * lily/include/dimension-cache.hh (class Dimension_cache): make
7917 class, with Grob as friend.
7919 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7920 has_extent_callback()
7922 * scm/translation-functions.scm (format-new-bass-figure): read
7923 figuredBassPlusDirection
7925 * scm/define-context-properties.scm
7926 (all-user-translation-properties): add figuredBassPlusDirection.
7928 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7930 * lily/align-interface.cc (set_ordered): new function.
7932 * lily/grob.cc (flush_extent_cache): rewrite.
7934 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7935 Interval pointer directly.
7937 * lily/main.cc (setup_paths): insert extra / .
7938 (setup_paths): junk cff entry.
7940 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7943 * lily/axis-group-engraver.cc (finalize): remove
7944 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7946 * lily/grob.cc (Grob): don't set extent from ctor.
7947 (extent): use property callbacks.
7949 * lily/axis-group-interface.cc: remove set_axes() function.
7951 * lily/grob-property.cc (del_property): new function.
7953 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7955 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7957 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7959 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7961 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7963 * mf/SConscript: Updates.
7965 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7967 * stepmake/stepmake/*:
7971 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7972 from any directory in build-dir. Cleanups.
7974 * make/srcdir.make.in: Remove.
7976 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7978 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7981 * lily/SConscript: Remove ttftools.
7983 * SConstruct: Resurrect.
7985 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7987 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7990 * lily/paper-book.cc (add_score_title): put Paper_score title into
7993 * scm/translation-functions.scm (format-new-bass-figure): also
7994 allow plus in combination with _
7996 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7998 * VERSION: 2.7.13 released.
8000 * lily/note-collision.cc (check_meshing_chords): don't wipe
8001 stencil, merely set transparent.
8003 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8004 (Top): document #'callbacks.
8005 (Top): document nested \override.
8007 * input/regression/figured-bass.ly: update for slash and pluses.
8009 * input/regression/figured-bass-continuation-forbid.ly (Module):
8012 * scm/translation-functions.scm (format-new-bass-figure): use
8013 slashed-digit if diminished is set.
8014 (format-new-bass-figure): add + if 'augmented is set.
8016 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8018 * input/test/piano-staff-distance.ly: remove file.
8020 * Documentation/user/advanced-notation.itely (Formatting cue
8021 notes): use length-fraction for making stems/beams smaller.
8023 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8026 * lily/new-figured-bass-engraver.cc: new property
8027 centerFiguredBassContinuations
8029 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8032 * lily/context-property.cc (execute_general_pushpop_property):
8035 * input/regression/override-nest.ly: new file.
8037 * python/convertrules.py (FatalConversionError.subber): conversion
8038 rule for #'callbacks
8040 * input/regression/override-nest.ly: new function.
8042 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8045 * lily/context-property.cc (lookup_nested_property): new function.
8046 (evict_from_alist): new function.
8047 (general_pushpop_property): new function.
8048 (execute_general_pushpop_property): rewrite. Support nested
8051 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8053 * lily/beam.cc: use length-fraction too.
8055 * scm/define-grob-properties.scm (all-user-grob-properties):
8056 remove property flag-width-function
8057 (all-user-grob-properties): remove space-function.
8059 * scm/layout-beam.scm: remove flag-width-function.
8061 * lily/beam.cc: remove flag-width-function
8063 * scm/layout-beam.scm: remove beam dir functions.
8065 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8067 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8068 for easier grace tweaks.
8070 * lily/beam.cc: remove dir-function.
8072 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8074 * lily/grob.cc: remove spacing-procedure.
8076 * lily/note-head.cc (calc_stem_attachment): new function.
8077 (internal_print): use callback to get glyph-name.
8079 * lily/grob-property.cc (get_interfaces): new function.
8081 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8083 * lily/stem.cc (calc_stem_end_position): new function.
8084 (calc_length): new function.
8085 document details for stem.
8086 remove Stem::get_direction()
8088 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8090 * lily/grob-property.cc (set_callback): new function.
8092 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8094 * lily/item-scheme.cc: new file.
8096 * lily/bar-line.cc (before_line_breaking): remove function.
8097 remove bar-size-procedure, break-glyph-function
8099 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8101 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8103 * lily/system-start-delimiter.cc (print): suicide from
8104 here. Remove after_line_breaking_callback.
8106 * lily/script-interface.cc (calc_direction): use callback for direction.
8108 * lily/side-position-interface.cc (aligned_side): don't use
8109 Side_position_interface::get_direction directly. Use callback.
8111 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8113 (get_print_stencil): rename from get_stencil: create stencil with
8114 transparency, color and cause.
8116 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8118 * python/convertrules.py (conv): insert temporary warning rule.
8120 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8122 * lily/grob-property.cc (try_callback): remove marker if applicable.
8124 * lily/grob.cc: elucidate doc about after/before-line-breaking
8126 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8128 * lily/stem.cc (height): idem.
8130 * lily/stem-tremolo.cc: idem.
8132 * lily/slur.cc (height): don't use get_uncached_stencil()
8134 * lily/rest.cc (y_offset_callback): use offset callback
8135 iso. after-line-breaking callback.
8137 * lily/grob.cc: change after/before-line-breaking-callback to
8138 after/before-line-breaking dummy properties.
8140 * lily/include/grob.hh: remove Grob_status.
8142 * scm/define-context-properties.scm
8143 (all-user-translation-properties): remove verticalAlignmentChildCallback
8145 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8146 (calc_direction): use callback
8147 (calc_positions): use callback.
8149 * lily/tie.cc (calc_direction): use callback. Only call parent
8150 positioning for more than one tie.
8152 * lily/tie-column.cc (calc_positioning_done): use callback
8154 * lily/slur-scoring.cc (calc_control_points): use callback
8156 * lily/slur.cc (calc_direction): use callback.
8158 * lily/note-collision.cc (force_shift_callback): remove.
8160 * lily/dot-column.cc (force_shift_callback): remove. Use
8161 other_axis_parent_positioning.
8163 * lily/grob.cc (other_axis_parent_positioning): new function.
8164 (same_axis_parent_positioning): new function
8166 * lily/align-interface.cc (alignment_callback): remove function.
8168 * lily/note-collision.cc (calc_positioning_done): use callback.
8170 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8171 (calc_direction): idem.
8172 remove print function.
8174 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8176 * lily/dot-column.cc (calc_positioning_done): use callback.
8178 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8180 * lily/beam.cc (calc_direction): use pseudo-property for beam
8182 (calc_positions): use callback
8184 * lily/align-interface.cc (calc_positioning_done): use
8185 callback. Fold fixed distance and normal alignment in one function.
8187 * lily/stem.cc (calc_stem_end_position): use callback.
8188 (calc_positioning_done): idem.
8189 (calc_direction): idem.
8190 (calc_stem_end_position): idem
8191 (calc_stem_info): idem.
8193 * lily/grob-property.cc (get_property_data): new function:
8194 (try_callback): new function.
8196 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8199 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8201 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8203 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8207 * lily/include/*.hh (Module): compile fixes.
8209 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8211 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8212 as an argument for char-syntax: use (char-syntax (or nil 0))
8213 instead of (char-syntax nil), thanks to Milan Zamazal.
8215 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8217 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8220 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8223 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8225 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8226 add class_name() method.
8228 * lily/music-scheme.cc: remove ly:music-name.
8230 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8232 * cygwin/postinstall-lilypond.sh: Remove cruft.
8234 * cygwin/postremove-lilypond.sh: Remove.
8236 * cygwin/GNUmakefile (default): Remove postremove rules.
8238 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8240 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8243 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8246 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8247 consider break index for broken spanner.
8249 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8250 characters from string before splitting.
8252 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8254 * scm/framework-ps.scm (output-preview-framework): use
8255 is-book-title to determine whether to chop off the booktitle.
8257 * lily/paper-book.cc (systems): init from book-title-properties
8258 (add_score_title): init score-title-properties.
8260 * ly/paper-defaults.ly: add {score,book}-title-properties.
8262 * scm/document-backend.scm (lookup-interface): error message if
8263 using unknown interface.
8265 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8268 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8270 (make_bracket): new function.
8272 * scm/lily.scm (define-scheme-options): add paper-size option.
8274 * ly/declarations-init.ly (laissezVibrer): get paper size from
8277 * scm/translation-functions.scm: use \fontsize for changing the
8280 * scm/define-grobs.scm (all-grob-descriptions): set
8281 between-length-limit to 1.0
8283 * lily/tie-helper.cc: add between_length_limit_ detail property.
8285 * mf/feta-bolletjes.mf: typos.
8287 * lily/note-head.cc (internal_print): don't shadow idx
8288 parameter. This fixes wrong attachment for do shape heads.
8290 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8292 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8294 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8296 * scm/layout-slur.scm: rename from slur.scm
8298 * scm/layout-page-layout.scm: rename from page-layout.scm
8300 * scm/layout-beam.scm: rename from beam.scm
8302 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8303 bass-figure-interface
8305 * lily/new-figured-bass-engraver.cc (process_music): add
8306 implicitBassFigures property.
8308 * scm/define-markup-commands.scm (pad-x): new markup.
8310 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8311 minimumVerticalExtent on FiguredBass context.
8313 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8314 case the continuation crosses a line break.
8316 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8318 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8319 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8320 absolute file name bug.
8322 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8324 * VERSION (PACKAGE_NAME): release 2.7.12
8326 * input/regression/figured-bass-continuation-center.ly: new file.
8328 * input/regression/beam-outside-beamlets.ly: new file.
8330 * lily/beam.cc (set_beaming): don't clip edges.
8331 (connect_beams): don't clip edges.
8333 * lily/beaming-info.cc (clip_edges): new function.
8335 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8337 * Documentation/user/instrument-notation.itely (Figured bass):
8338 demonstrate extenders, update seealso links.
8340 * scm/titling.scm (marked-up-headfoot): change tagline
8341 handling. tagline = ##f will blank the tagline as well.
8343 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8345 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8347 * lily/new-figured-bass-engraver.cc (struct
8348 New_figured_bass_engraver): add new_music_found_ member.
8350 * lily/lilypond-version.cc (Lilypond_version): deal with
8351 incorrectly formatted version strings.
8353 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8354 New_figured_bass_engraver by default.
8356 * lily/ttf.cc (print_trailer): only define glyph names when
8357 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8359 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8361 * lily/horizontal-bracket.cc (make_bracket): new function.
8363 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8364 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8365 BassFigureLine, BassFigureAlignment
8367 * lily/new-figured-bass-engraver.cc (process_music): new file.
8369 * lily/figured-bass-continuation.cc: new file.
8371 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8374 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8376 * scripts/lilypond-book.py: Bug fix, put the quote around the
8377 actual score for LaTeX documents.
8379 * scm/define-grobs.scm (all-grob-descriptions): Change
8380 collapse-height of the SystemStartBracket grob to 5.0,
8381 so the bracket disappears for single stave score lines (similarly
8382 to SystemStartBraces).
8384 * Documentation/user/advanced-notation.itely (Polymetric
8385 notation): Clarify the use of compressMusic.
8387 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8388 that the grace spacer note in other staves need the same duration
8389 and document the stroke-style property.
8391 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8393 * Documentation/user/global.itely (Vertical spacing): document
8394 alignment-extra-space and fixed-alignment-extra-space.
8396 * Documentation/topdocs/NEWS.tely (Top): add entry.
8398 * input/regression/alignment-vertical-spacing.ly: new file.
8400 * python/convertrules.py (conv): add rule.
8402 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8404 * lily/align-interface.cc (stretch_after_break): new
8405 function. Read fixed-alignment-extra-space property.
8406 (align_elements_to_extents): read alignment-extra-space property.
8408 * lily/lily-guile.cc (robust_scm2dir): new function.
8410 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8411 (annotate-space-left): new function. Annotate space left on page.
8412 (annotate-y-interval): new function.
8413 (paper-system-annotate-last): new function. Annotate bottom-space.
8415 * mf/feta-beugel.mf (y):
8417 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8419 * VERSION (PACKAGE_NAME): release 2.7.11
8421 * scm/lily-library.scm (interval-translate): new function
8422 (interval-center): new function.
8424 * scm/page-layout.scm (paper-system-annotate): new function. Add
8425 arrows for dimensions.
8427 * scm/stencil.scm (dimension-arrows): new function.
8429 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8431 * input/regression/page-spacing.ly: add annotatespacing
8433 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8434 (LY_DEFINE): new function ly:paper-system-set-property!
8436 * Documentation/user/global.itely (Paper size): explain how to add
8439 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8440 correspond to GS's definition.
8442 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8444 (print): only connect to next bracket if the next one is alive.
8445 (print): set padding to 0.0 if the bound is a breakable
8446 column. This makes tupletFullLength brackets reach up to the staff
8447 line if it doesn't connect to the next line.
8449 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8451 * lily/bar-number-engraver.cc: correct docs.
8453 * scm/output-lib.scm (first-bar-number-invisible): rename from
8454 default-bar-number-visibility
8456 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8458 * scm/define-music-properties.scm (all-music-properties): remove
8461 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8463 * po/fi.po: refresh.
8465 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8467 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8469 (disappear): bugfix.
8471 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8473 * lily/include/paper-system.hh (class Paper_system): remove
8474 staff_extents_ member.
8476 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8478 * lily/include/paper-system.hh (class Paper_system): remove
8479 number_ variable. Remove is_title_. Remove break_before_penalty_
8481 * lily/paper-book.cc (systems): use 'number property iso. number_
8484 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8485 remove ly:paper-system-number.
8487 * scm/lily-library.scm (paper-system-title?): new function.
8489 * lily/book.cc (process): bugfix: flip ?: cases.
8491 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8494 * ly/music-functions-init.ly: add outputProperty music function.
8496 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8498 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8500 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8502 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8504 * lily/paper-system.cc (internal_get_property): new function.
8506 * Documentation/user/global.itely (Vertical spacing): refer to
8509 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8512 * input/regression/page-spacing.ly: new file.
8514 * input/regression/page-top-space.ly: new file.
8516 * lily/spacing-spanner.cc: cmath -> math.h
8518 * lily/paper-system.cc (read_left_bound): new function. Read
8519 line-break-system-details from left bound to determine extents.
8521 * Documentation/user/programming-interface.itely (Using LilyPond
8522 syntax inside Scheme): change applyxxx -> applyXxx.
8524 * ly/music-functions-init.ly: add outputProperty music function.
8526 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8528 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8530 * python/convertrules.py (conv): rule
8532 * ly/music-functions-init.ly: applyxxx -> applyXxx
8534 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8537 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8539 * flower/include/real.hh: include <math.h> iso. <cmath>
8541 * flower/include/offset.hh: include real.hh
8543 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8545 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8546 fix example, now that 'interfaces is no longer directly available.
8548 * lily/book.cc (process): don't crash if paper == NULL.
8552 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8554 * scm/define-music-types.scm (music-descriptions): set length and
8555 start-callback for QuoteMusic
8557 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8559 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8560 arguments. Fixes compilation error with gcc 3.3.
8562 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8564 * VERSION: release 2.7.10
8566 * stepmake/stepmake/python-module-rules.make
8567 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8569 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8572 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8574 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8575 -Werror. Otherwise GCC barfs over various optimizations.
8577 * scm/define-grob-properties.scm (all-internal-grob-properties):
8578 add note-head property
8580 * Documentation/user/instrument-notation.itely (Laissez vibrer
8583 * input/regression/laissez-vibrer-ties.ly: new file.
8585 * lily/laissez-vibrer-engraver.cc: new file.
8587 * lily/include/tie-column-format.hh: new file.
8589 * lily/tie-column-format.cc: new file.
8591 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8593 * lily/laissez-vibrer-tie.cc: new file.
8595 * lily/include/laissez-vibrer-tie.hh: new file.
8597 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8599 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8601 * scm/define-grobs.scm (all-grob-descriptions): add
8602 LaissezVibrerTie, LaissezVibrerTieColumn
8604 * lily/tie-column.cc (set_tie_config_directions): new function
8605 (final_shape_adjustment): new function.
8606 (shift_small_ties): new function.
8608 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8610 * lily/include/tie.hh (struct Tie_details): add x_gap_
8611 (struct Tie_configuration): add head_position_
8613 * lily/tie-column.cc (set_chord_outline): new function.
8615 * mf/cmr.enc.in: remove file.
8617 2005-09-11 Graham Percival <gpermus@gmail.com>
8619 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8621 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8623 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8624 reduce aliasing effects.
8626 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8629 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8631 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8633 * flower/include/real.hh: std::fabs too.
8635 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8637 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8639 * lily, flower: Include C++ iso C headers. Import namespace std
8642 * lily/side-position-interface.cc:
8644 * lily/note-head.cc:
8645 * lily/include/includable-lexer.hh:
8646 * flower/include/string-data.icc: Remove using std::*.
8648 * lily, flower: Include C++ iso C headers. Import namespace std
8651 * lily/side-position-interface.cc:
8653 * lily/note-head.cc:
8654 * lily/include/includable-lexer.hh:
8655 * flower/include/string-data.icc: Remove using std::*.
8657 * Documentation/user/instrument-notation.itely (Entering lyrics):
8658 Multiple latin-1->utf-8 conversion fix.
8660 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8662 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8664 * lily/tie.cc (get_configuration): also avoid dots for non-space
8667 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8669 * Documentation/user/instrument-notation.itely: Bugfix.
8671 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8673 * tex/GNUmakefile: don't install texinfo.tex
8675 * tex/ : cleanup: remove unused files.
8677 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8679 * flower/include/real.hh: using std::{isnan,isinf}
8681 * VERSION (PATCH_LEVEL): release 2.7.9
8683 2005-09-05 Graham Percival <gpermus@gmail.com>
8685 * Documentation/user/ instrument-notation.itely,
8686 advanced-notation.itely: minor tweaks.
8688 * input/test/script-chart.ly: add item padding.
8690 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8692 * flower/offset.cc: use math.h iso. <cmath>
8694 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8697 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8698 (widen-left-stencil-edges): new function. Fix alignment problems
8699 with LaTeX includegraphics.
8701 * lily/text-interface.cc (interpret_markup): use abort().
8703 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8705 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8707 * lily/tie.cc (get_configuration): update bezier shape as we
8709 (get_configuration): don't move large ties if we're outside of the
8712 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8714 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8716 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8718 * .cvsignore: Add auto-generated configure files and then some.
8720 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8722 * scm/define-grobs.scm (DynamicLineSpanner): Add
8723 X-extent-callback. Fixes hairpin-slur collision.
8725 2005-08-31 Graham Percival <gpermus@gmail.com>
8727 * Documentation/user/advanced-notation.itely,
8728 basic-notation.itely: minor changes.
8730 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8732 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8733 \linebreak between each .eps file if \betweenLilyPondSystem is
8736 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8737 music): Document the \linebreak
8739 * Documentation/user/lilypond-book.itely,
8740 input/tutorial/lbook-latex-test.tex,
8741 Documentation/user/examples.itely: Remove \usepackage{graphics}
8743 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8745 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8747 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8750 * scripts/lilypond-book.py (PREAMBLE_LY): define
8751 inside-lilypond-book
8752 (modify_preamble): new function. Insert \RequirePackage{graphics}
8753 when no {graphics found in preamble.
8755 2005-08030 Graham Percival <gpermus@gmail.com>
8757 * Documentation/user/basic-notation.itely, global.itely,
8758 tutorial.itely: misc small changes.
8760 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8762 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8765 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8767 * lily/tie-column.cc (new_directions): put Tie down on center
8770 * lily/script-interface.cc (before_line_breaking): use
8771 Grob::programming_error
8773 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8775 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8778 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8780 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8782 2005-08-29 Werner Lemberg <wl@gnu.org>
8784 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8785 the `*.scale.pfa' files to avoid warnings.
8787 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8789 * lily/tempo-performer.cc (process_music): idem.
8791 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8793 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8795 * Documentation/user/advanced-notation.itely (Text markup): not a
8798 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8800 * lily/staff-performer.cc (initialize): add tempo/name to
8804 2005-08-26 Graham Percival <gpermus@gmail.com>
8806 * Documentation/user/advanced.itely: add text-only example.
8808 * Documentation/user/invoking.itely: add index entries for
8811 * Documentation/user/ tutorial.itely, basic-notation.itely:
8812 small fixes suggested by Steve D. Thanks!
8814 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8816 * input/regression/markup-bidi-pango.ly: new file.
8818 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8819 standard. Remove #ifdef. Remove memleak.
8820 (text_stencil): use text_dir to decide how to composite items.
8821 (text_stencil): determine uniform text direction for the entire
8824 * scripts/lilypond-book.py (output_name): remove
8825 latex_filter_cmd. Non-portable to non-Unix systems.
8826 (get_latex_textwidth): use File.write and os.unlink() instead.
8828 * THANKS: add Vicente & Trevor.
8830 * lily/grob.cc (discretionary_processing): look up origin for
8831 programming_error too.
8833 * input/regression/tie-broken.ly: new file.
8835 * lily/tie-column.cc (set_chord_outlines): set outline for line
8838 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8840 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8841 unscaled transform, just translate stencils.
8843 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8846 * scm/define-markup-commands.scm (wordwrap-string): use
8848 (wordwrap-stencils): idem.
8851 (wordwrap-stencils): translate last line to right for
8852 text-direction = LEFT.
8854 * scm/define-grob-properties.scm (all-user-grob-properties): add
8857 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8859 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8860 when copying a Lily_parser object.
8862 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8864 * scm/define-markup-commands.scm (null): add null markup.
8866 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8868 * lily/item.cc: Add documentation of center-invisible
8870 2005-08-24 Graham Percival <gpermus@gmail.com>
8872 * Documentation/user/advanced-notation.itely: add info about
8875 * Documentation/user/programming-interface.itely: fix example
8876 involving raised text.
8878 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8880 * lily/beam.cc (print): fix X start/end points of isolated
8883 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8885 * lily/multi-measure-rest.cc (set_text_rods): new function.
8887 * lily/vertical-align-engraver.cc (process_music): call
8888 Align_interface::set_axis(). This forces #'elements to be ordered,
8889 preventing random vertical reordering of staves.
8891 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8892 add avoid-slur property.
8894 * Documentation/user/basic-notation.itely (Measure repeats): add
8895 countPercentRepeats example.
8897 * Documentation/user/advanced-notation.itely (Other text markup
8898 issues): remove remark about normal-font. We have \normal-text
8900 * input/regression/tie-chord.ly: add note about remaining bugs.
8902 * lily/tie.cc (print): try Tie_column::set_directions () if
8903 control-points not yet defined.
8905 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8907 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8908 extent. This fixes braces falling out of the EPS bbox.
8910 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8913 2005-08-23 Graham Percival <gpermus@gmail.com>
8915 * {various} : change #up->#UP and #down->#DOWN.
8917 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8919 * Documentation/user/advanced-notation.itely: clarify
8920 what objects handles text on a multimeasure rest.
8922 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8924 * VERSION (PATCH_LEVEL): release 2.7.7
8926 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8928 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8930 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8932 * input/regression/*.ly: formatting clean-up. Default layout
8933 before music expression.
8935 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8936 romanze28-2 example.
8938 * scm/ps-to-png.scm: remove dir-re function.
8939 (make-ps-images): generate page names, instead of globbing them.
8940 This brings down LilyPond memory usage for make web by a factor
8943 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8944 don't use glob. With 3000 files, globbing
8945 Documentation/user/out-www/ can take too much time.
8947 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8949 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8951 * input/regression/tie-manual.ly: new file
8953 * input/regression/tie-chord.ly: update.
8955 * flower/include/interval.hh (struct Interval_t):
8957 * lily/tie.cc (distance): new function
8958 (height): new function.
8959 (init): new function
8960 (Tie_details): new struct.
8962 * lily/skyline.cc (skyline_height): new function.
8964 * lily/tie-column.cc (set_chord_outlines): new function.
8965 (new_directions): read tie-configuration
8967 * lily/skyline.cc: fix ASCII art.
8969 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8971 * python/convertrules.py (string_or_scheme): Fix spelling error
8973 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8975 * lily/tie-column.cc (set_directions): set directions only once.
8976 (add_configuration): new function.
8978 * lily/tie.cc (set_control_points): new function
8980 * lily/tie-column.cc (new_directions): new function.
8982 * ly/music-functions-init.ly: set 'pitch property
8983 iso. trill-pitch. This makes \relative work with \pitchedTrill
8985 * lily/tie.cc (get_configuration): new function. Don't generate
8986 control points, rather, generate configuration.
8987 remove head-pair property.
8989 * lily/include/tie.hh (struct Tie_configuration): new struct.
8991 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8993 * Documentation/topdocs/NEWS.tely: clarify.
8995 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8997 * lily/tie.cc: remove minimum-length
8999 * scm/define-grob-properties.scm (all-user-grob-properties):
9000 remove staffline-clearance, y-offset
9002 * input/regression/tie-dots.ly (Module): remove.
9004 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9005 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9007 * input/regression/tie-single.ly: new file.
9009 2005-08-21 Graham Percival <gpermus@gmail.com>
9011 * ly/bagpipe.ly: fix compile problem.
9013 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9015 * lily/midi-item.cc (name): new method.
9017 * lily/staff-performer.cc (acknowledge_audio_element): use
9018 signature of baseclass.
9020 * lily/engraver-group.cc (do_announces): move recursion call out
9023 * lily/drum-note-performer.cc (class Drum_note_performer): use
9024 process_music everywhere.
9026 * ly/performer-init.ly: add default children everywhere.
9028 * lily/paper-book.cc (output): call paper-book-write-midis
9029 directly: always write MIDI, even if no \layout {} block.
9031 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9033 * VERSION (PACKAGE_NAME): release 2.7.6
9035 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9036 about not being able to handle repeat.
9038 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9040 * Documentation/user/examples.itely (Piano templates):
9041 * lily/include/performer-group.hh: Remove last traces of
9042 Performer_group_performer. Fixes make web.
9044 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9046 * Documentation/user/examples.itely (Piano templates): change
9047 Engraver_group_engraver -> Engraver_group
9049 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9050 scm_stand_in_procs is not weak_any.
9052 * lily/volta-bracket.cc (print): don't use strcmp().
9054 * lily/volta-engraver.cc (process_music): use
9055 Text_interface::is_markup() for setting the 'text property of the
9058 * input/mutopia/claop.py (accents): update syntax to 2.6
9060 * scm/define-context-properties.scm
9061 (all-user-translation-properties): add countPercentRepeats.
9063 * Documentation/user/basic-notation.itely (Measure repeats): add
9064 isolated percent example.
9066 2005-08-18 Graham Percival <gpermus@gmail.com>
9068 * input/ {various}: change direction #1, #-1 to
9069 #up/#down or \fooUp, \fooDown.
9071 * Documentation/user/music-glossary.tely: #-1 to #down.
9073 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9074 to #up, #-1 to #down.
9076 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9078 * lily/include/engraver-group.hh: rename.
9080 * lily/include/performer-group.hh: rename.
9082 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9084 * input/test/script-abbreviations.ly: Removed some old LaTeX
9087 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9089 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9090 Remove functions. Remove if 1: constructs, reindent.
9092 * scripts/convert-ly.py (add_version): Add functions from
9095 * scm/script.scm (default-script-alist):
9096 s/priority/script-priority. Fixes script stacking. Backportme.
9097 (Fermata): Very low priority.
9099 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9101 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9103 * input/regression/slur-script.ly: remove padding tweaks. Add
9106 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9107 time sigs and related stuff.
9109 * scm/define-grob-properties.scm (all-user-grob-properties): add