1 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
3 * SConstruct (configure): Do not check for /bin/sh.
5 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
7 * mf/GNUmakefile: explicit dependencies for .otftable files.
9 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
11 * input/regression/fret-boards.ly: new file.
13 * po/de.po: new po courtesy translation team.
15 * scripts/lilypond-book.py (get_option_parser): add newline to doc
18 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
20 * ly/gregorian-init.ly (neumeDemoLayout): update
21 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
23 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
24 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
26 2006-10-27 Erlend Aasland <erlenda@gmail.com>
28 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
29 Yet another build fix.
31 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
33 * SConstruct (lilypondprefix): use sorted() for list_sort()
36 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
38 * flower/SConscript: Unit test rules.
40 * flower/test-std.cc: Compile fix.
42 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
44 * python/midi.c (pymidi_parse_track): warning fixes.
46 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
49 2006-10-26 Graham Percival <gpermus@gmail.com>
51 * Documentation/user/ {basic-, global}: minor changes from mailist.
53 2006-10-26 Erlend Aasland <erlenda@gmail.com>
55 * scm/define-grobs.scm: trivial beautification
57 * lily/tie-performer.cc: no need to #include "pqueue.hh"
59 * lily/source-file.cc: put multibyte var inside #if clause
61 * scm/define-grob-interfaces.scm:
62 * scm/define-grob-properties.scm:
63 Build fix (string-fret-finger-combinations)
65 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
68 * Documentation/user/lilypond-book.itely: Build fix.
70 2006-10-26 Joe Neeman <joeneeman@gmail.com>
72 * lily/system.cc (get_paper_system):
73 * lily/paper-book.cc (systems):
74 move most of the backwards compatibility stuff into
77 * Documentation/topdocs/NEWS.tely: add 2 entries for the
80 * Documentation/user/page.itely: remove time-scaled-music
81 bug for the Page_turn_engraver
83 * lily/paper-book.cc (set_system_penalty): backwards
84 compatibility (breakbefore) for the old page breaker
86 2006-10-25 Graham Percival <gpermus@gmail.com>
88 * Diocumentation/user/instrument-notation.itely: added more
89 info about stanzas; thanks Geoff!
91 * Documentation/user/ {basic, advanced}: small fixes from
94 * THANKS: add some bug reporters.
96 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
98 * scm/define-context-properties.scm (all-user-translation-properties):
99 noteToFretFunction: Add.
101 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
102 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
104 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
106 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
109 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
110 Remove bashism in delete.
112 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
114 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
116 * scm/translation-functions.scm (determine-frets-mf): flatten let*
118 * scm/define-context-properties.scm
119 (all-user-translation-properties): add maximumFretStretch property.
121 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
123 * lily/source-file.cc (get_counts): use multibyte variable.
125 * scm/translation-functions.scm (determine-frets-mf): new
126 function: compute fret numbers.
128 * scm/output-lib.scm (string-frets->description) new function.
129 (fret-board::calc-stencil): new function
131 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
133 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
135 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
137 * lily/tab-note-heads-engraver.cc: cleanups.
139 * lily/fretboard-engraver.cc: new file
141 * ly/engraver-init.ly: add FretBoards context
143 2006-10-24 Joe Neeman <joeneeman@gmail.com>
145 * lily/grob.cc (pure_relative_y_coordinate)
146 (pure_height): use the new call_pure_function stuff
148 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
151 * lily/side-position-interface.cc (pure_y_aligned_side): add an
154 * lily/simple-closure.cc (ly_eval_simple_closure): make
155 simple-closure evaluatable from scheme
156 (evaluate_with_simple_closure): make simple-closures pure-
159 * lily/slur.cc (pure_outside_slur_callback): new function
161 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
162 fits in with previous changes that made the page forces much
165 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
166 and pure-Y-extent into this new function.
167 (pure-conversions-alist): add outside-slur-callback
169 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
171 * Documentation/user/advanced-notation.itely (Instrument names):
172 Remove obsolete bug workaround for instrument names on piano
175 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
177 * Documentation/user/lilypond-book.itely (Integrating DocBook and
178 music): patch by Bertalan Fodor for docbook.
180 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
181 of $(LILYPOND). Prevents lilypond run for .txt files.
183 * INSTALL.txt: gitness.
185 * .cvsignore: update to force gitness.
187 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
189 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
190 detect suicide in nested tuplets.
192 2006-10-23 Werner Lemberg <wl@gnu.org>
194 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
195 typo in argument to FT_Get_X11_Font_Format.
197 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
199 * stepmake/stepmake/po-vars.make: more gitness.
201 * flower/polynomial.cc (check_sol): no empty if bodies.
203 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
205 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
207 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
209 * Documentation/user/examples.itely (Transcription of mensural
210 music): Added more comments in .ly source. Suggest to remove
211 Forbid_line_break_engraver to allow line breaking at all bars.
213 * Documentation/user/instrument-notation.itely (Ancient
214 articulations): Updated @refbugs regarding episem.
216 * Documentation/user/instrument-notation.itely (Gregorian square
217 neumes ligatures): Added \augmentum dots. Updated @refbugs
218 regarding \augmentum.
220 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
222 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
225 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
228 * ly/gregorian-init.ly: Added \augmentum macro.
230 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
232 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
234 * lily/pango-font.cc (pango_item_string_stencil): use
235 FT_Get_X11_Font_Format()
237 2006-10-22 John Mandereau <john.mandereau@free.fr>
239 * po/fr.po: update translation.
241 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
243 * VERSION (PATCH_LEVEL): bump version
245 * input/regression/horizontal-bracket-break.ly: new file.
247 * scm/define-grobs.scm (all-grob-descriptions): calc
250 * lily/horizontal-bracket.cc (make_bracket): support
251 connect-to-neighbor. Fix #118
253 * VERSION: release 2.9.26-2
255 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
257 * VERSION (PACKAGE_NAME): release 2.9.26
259 * buildscripts/output-distance.py (test_basic_compare): add
261 (FileLink.multi_img_cell): new function, glob multi-page png
264 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
266 * po/lilypond.pot: update.
268 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
270 * Documentation/user/global.itely (File structure): remove
273 * lily/parser.yy (FIXME): remove ADDQUOTE
275 * Documentation/user/global.itely (Extracting fragments of
276 notation): new node, about clip systems.
278 * Documentation/user/lilypond-book.itely (Many quotes of a large
279 score): ref to clip systems.
281 * Documentation/user/instrument-notation.itely (Entering lyrics):
282 add note about lyric ties and required font.
284 * lily/open-type-font.cc (glyph_list): format errors.
286 * Documentation/user/programming-interface.itely (Scheme
287 procedures as properties): more doco on simple-closure and scheme
289 (Input variables and Scheme): use lilypond[verbatim], document
292 * Documentation/user/page.itely (Displaying spacing): use \book
293 explicitly, so arrows show .
294 (Line breaking): add note about Forbid_line_break_engraver
296 * Documentation/user/tweaks.itely (Common tweaks): also set length
297 to prevent tie squeezing.
298 (Default files): use @var{}
300 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
301 (Generating LilyPond files): add FOMUS.
303 2006-10-20 Joe Neeman <joeneeman@gmail.com>
305 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
306 Y-offset for TextScript and Script
308 * lily/text-engraver.cc (make_item):
309 * lily/script-engraver.cc (make_script_from_event):
310 remove call to Side_position_interface::set_axis since all scripts
311 now have this set by default
314 * lily/prob.cc: use variables
316 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
318 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
319 at typography, rather analyse stream event duration.
321 * Documentation/user/page.itely (Page formatting): set a6 paper
322 for system separator example.
324 * lily/arpeggio.cc (Module): idem.
326 * lily/accidental-placement.cc: add script-priority property.
328 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
330 * lily/ttf.cc (print_trailer): if all else fails: use
331 glyphIndexXXXX as glyph name. Fixes #117.
333 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
334 entry if cmap contains glyph.
335 (get_index_to_charcode_map): remove from Pango_font class, use
336 global filename -> font mapping.
337 (get_glyph_index_name): new function.
338 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
341 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
343 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
346 * scm/define-grob-properties.scm (all-user-grob-properties):
347 remove outdated doc. Fixes #116
349 * lily/completion-note-heads-engraver.cc (process_music): always
350 clone input events; otherwise we may overwrite input 'duration
351 property. Fixes #115.
353 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
356 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
359 * VERSION (PATCH_LEVEL): bump version.
361 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
363 * lily/engraver.cc (internal_make_grob): use variables.
365 * flower/string-convert.cc (dec2double): clean-up warnings.
367 * configure.in (CXXFLAGS): add -Werror.
369 * VERSION (PACKAGE_NAME): release 2.9.25
371 2006-10-18 Joe Neeman <joeneeman@gmail.com>
373 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
374 line even if we precede a forced break.
376 * lily/optimal-page-breaking.cc (try_page_spacing): square line
377 forces too. Make page-spacing weight default to 10 because the
378 changes to vertical springs decreased the page force/line force
379 proportions. Also, take the average of line force and page force
380 instead of just the sum.
382 * lily/constrained-breaking.cc (initialize): make the stiffness
383 of the vertical springs depend on the height of the system. This
384 prevents pages with only a few large systems from getting huge
387 * Documentation/user/page.itely (Page formatting): document the
388 change in default page-spacing-weight
390 * lily/include/constrained-breaking.hh: initialise bottom_padding_
392 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
394 * input/typography-demo.ly (melody): remove superfluous slur.
396 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
397 add piano-pedal-script-interface
399 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
401 * scripts/lilypond-book.py: DocBook support.
403 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
405 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
407 (stop_translation_timestep): set bound to currentMusicalColumn if
408 not set yet. Fixes #102
410 * lily/piano-pedal-bracket.cc: formatting.
412 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
414 * lily/piano-pedal-align-engraver.cc: new class
415 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
418 2006-10-18 Heikki Junes <hjunes@gmail.com>
420 * po/fi.po: Update Finnish translation (before the next release).
422 2006-10-17 Joe Neeman <joeneeman@gmail.com>
424 * lily/system.cc (get_paper_system): reinstate the backwards-
425 compatible page breaking for the old page breaker.
427 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
429 * lily/recording-group-engraver.cc: removed
431 * lily/context.cc, lily/translator-group.cc: Don't touch
432 Context::implementation_ if it's null
434 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
436 * scm/paper.scm: only use left-margin if defined.
438 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
440 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
442 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
443 strokeFingerOrientations
445 * lily/script-column.cc (row_before_line_breaking): also handle
446 accidentals and arpeggios in horizontal script stacking.
448 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
451 * input/regression/script-stack-horizontal.ly: trim.
453 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
455 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
458 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
459 'text if string argument.
461 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
463 * scm/define-context-properties.scm
464 (all-user-translation-properties): change to strokeFingerOrientations
466 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
468 * lily/parser.yy: remove debug output
470 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
472 * ly/paper-defaults.ly: set left/right margin.
474 * scm/paper.scm (set-paper-dimensions): use left-margin and
475 right-margin for computing linewidth.
477 * Documentation/topdocs/NEWS.tely (Top): idem.
479 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
482 * scm/define-markup-commands.scm (tied-lyric): increase negative
483 space: space syllables tighter.
485 * VERSION (PATCH_LEVEL): bump version.
487 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
490 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
492 * COPYING: further clarification
494 * VERSION: release 2.9.24
496 * input/regression/script-stack-horizontal.ly: add version.
498 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
500 * input/regression/lyric-tie.ly (texidoc): use different words.
502 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
504 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
506 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
507 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
509 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
511 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
513 * Doxyfile: remove file.
515 * scm/define-grob-interfaces.scm (string-finger-interface): add
516 string-finger-interface
518 * lily/general-scheme.cc (LY_DEFINE): move
519 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
521 * Documentation/topdocs/NEWS.tely (Top): add note for
522 string-finger feature.
524 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
527 * scm/output-lib.scm (string-finger::calc-text): read 'digit
530 * input/regression/script-stack-horizontal.ly: new file.
532 * ly/engraver-init.ly: add Script_row_engraver.
534 * lily/script-column.cc (order_grobs): refactor: separate axis
536 (row_before_line_breaking): new function.
538 * lily/script-row-engraver.cc (Script_row_engraver): new file.
540 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
542 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
544 * Documentation/user/instrument-notation.itely: Cleanup: Remove
545 annoying skip notes from mensural ligature example. Update
546 @refbugs for ligatures and mensural ligatures.
548 * lily/coherent-ligature-engraver.cc,
549 lily/include/coherent-ligature-engraver.hh,
550 lily/mensural-ligature-engraver.cc,
551 lily/vaticana-ligature-engraver.cc: Revise code for item
552 reparentizing. There should now be less programming_error
555 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
557 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
558 Maintenance bugfix: Don't create empty Stencil (), but empty box
559 instead. This fix should eliminate some programming_error
562 * ly/engraver-init.ly (MensuralStaff): Set default accidental
565 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
566 \layout block _before_ score.
568 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
570 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
572 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
574 2006-10-13 Erlend Aasland <erlenda@gmail.com>
576 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
578 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
580 * VERSION (PATCH_LEVEL): bump version.
582 * COPYING: clarify exception note.
584 * lily/main.cc: remove remark about "COPYING".
586 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
587 system-count starts at 0 for each clip-region. Change name to
588 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
589 layout block, per score.
591 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
593 * lily/input-smob.cc: add equal_p for Input
595 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
598 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
600 * lily/prob.cc: Add equal_p predicate for Prob
602 * lily/translator.cc: small cleanup
604 * scm/document-music.cc: use data from translator listener
605 registration to generate documentation for event classes
607 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
609 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
611 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
613 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
615 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
617 * Documentation/topdocs/INSTALL.texi: Thinko.
619 * .cvsignore: Update.
621 * lexer-gcc-3.1.sh: Remove.
623 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
624 Update anonymous cvs access. Remove comment about gcc 3.0.4.
626 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
628 * VERSION: release 2.9.23
630 * lily/paper-column-engraver.cc (stop_translation_timestep): also
633 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
635 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
637 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
639 * input/regression/clip-systems.ly (Notes): new file.
641 * scm/lily.scm (define-scheme-options): add clip-systems option.
643 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
645 (dump-stencil-as-EPS): move bbox calculation from previous
647 (output-framework): use -dclip-systems
649 * scm/lily-library.scm (filtered-map): new function
651 * scm/framework-ps.scm (clip-system-EPS): new function.
652 (clip-system-EPSes): new function.
654 * lily/paper-column.cc: add rhythmic-location to interface
656 * scm/define-grob-properties.scm (all-user-grob-properties): add
657 rhythmic-location property.
659 * scm/clip-region.scm: new file: rhythmic-location data type and
660 system-clipped-x-extent function.
662 * ly/init.ly: use (scm clip-region)
664 * lily/paper-column-engraver.cc (stop_translation_timestep): set
665 rhythmic-location for paper column grobs.
667 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
669 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
671 * ly/engraver-init.ly: Remove obsolete comment on
674 * Documentation/user/instrument-notation.itely: Tune Ancient
675 Articulations figure, such that the episem actually shows.
677 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
678 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
680 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
683 2006-10-12 Graham Percival <gpermus@gmail.com>
685 * Documentation/user/ {some}: minor edits that were lost somehow.
687 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
689 * VERSION (PACKAGE_NAME): bump version.
691 * input/regression/lyric-tie.ly (texidoc): new file.
693 * Documentation/topdocs/NEWS.tely (Top): add new feature.
695 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
697 * scm/define-markup-commands.scm (tied-lyric): new function: split
698 string along ~ and reattach with U+203F (tie character) and
701 * scm/output-lib.scm (lyric-text::calc-text): new function.
703 * lily/lyric-engraver.cc (process_music): don't set 'text.
705 * scm/output-lib.scm (string-finger::calc-text): new function
706 (lyric-text::print): new function.
708 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
709 generic for fingering & string number. Use for string-finger.
711 * scm/define-music-types.scm (music-descriptions): add
714 * lily/fingering-engraver.cc (listen_string_finger): new function
716 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
718 * scm/define-context-properties.scm
719 (all-user-translation-properties): add stringFingerOrientations
721 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
723 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
724 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
726 * lily/dots.cc: Added style property for dots.
728 * mf/parmesan-heads.mf: Fix typo in comment.
730 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
731 adding longa head to feta font and removing obsolete default
734 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
736 * scm/output-lib.scm (fingering::calc-text): use origin
737 event-property, not music-property.
739 * lily/lilypond.rc.in: spell my name correctly.
741 2006-10-10 Joe Neeman <joeneeman@gmail.com>
743 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
744 already have a non-empty extent. Fixes estimation for Hara-kiri
747 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
749 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
752 * lily/ligature-engraver.cc: Remove unused #include.
754 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
755 Bugfix: remove method check_for_prefix_loss(Item *) from global
756 namespace to avoid namespace pollution.
758 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
760 * VERSION: release 2.9.22
762 * ly/generate-documentation.ly: update option name.
764 * lily/dynamic-text-spanner.cc (print): revert fix.
766 * scm/define-grob-interfaces.scm
767 (trill-pitch-accidental-interface):
768 add trill-pitch-accidental-interface
770 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
771 dereference if it's really a duration.
773 * lily/figured-bass-engraver.cc (process_music): clear spanner if
774 useBassFigureExtenders is not set.
775 (listen_bass_figure): record as new event if
776 useBassFigureExtenders not set. Fixes #103.
778 * scm/stencil.scm (circle-stencil): don't center stencil argument,
779 instead: move circle. Fixes #107.
781 * scm/define-grobs.scm (all-grob-descriptions): set
782 allow-loose-spacing for PaperColumn and
783 NonMusicalPaperColumn. Kludge for #110.
785 * lily/spaceable-grob.cc: add allow-loose-spacing property.
787 * lily/spacing-determine-loose-columns.cc (is_loose_column):
788 allow-loose-spacing property.
790 * scm/define-markup-commands.scm (postscript): gsave & grestore
791 around embedded PS. Do setlinewidth too. Fixes #109.
793 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
795 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
796 code. This patch fixes ligature brackets that were not at all
799 2006-10-08 Graham Percival <gpermus@gmail.com>
801 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
803 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
805 * scm/define-context-properties.scm: clarified docs (bug 91).
807 * Documentation/user/basic-notation.itely: document volta brackets
808 not aligning (bug 63).
810 * Documentation/user/ global.itely invoking.itely: ignore or
811 add warnings about texstr.
813 2006-10-08 John Mandereau <john.mandereau@free.fr>
815 * po/fr.po: update translation.
817 * po/: update msgids.
819 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
821 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
823 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
825 * Documentation/user/page.itely (Two-pass vertical spacing): add
826 documentation for two-pass spacing technique.
828 2006-10-06 Graham Percival <gpermus@gmail.com>
830 * Documentation/user/convert-ly.txt: new file; new
831 storage place for this file (moved from bugs/ CVS).
833 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
835 * lily/note-head.cc: Fixed programming_error message.
837 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
839 * scm/define-grobs.scm (pure-conversion): move pure-callback
842 * scm/script.scm (default-script-alist): set avoid-slur for turn,
843 marcato, stopped, thumb.
845 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
847 * lily/completion-note-heads-engraver.cc (process_music): don't
848 skimp on memory usage.
850 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
853 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
854 parenthesis item. This fixes premature Y-extent triggering. Fixes
857 * VERSION (PATCH_LEVEL): bump version.
859 2006-10-04 Graham Percival <gpermus@gmail.com>
861 * Documentation/user/advanced-notation.itely: added
862 info about instrument names for piano or other contexts,
865 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
867 * mf/feta-bolletjes.mf (solfa_quarter_width): use
868 solfa_base_notewidth as unit for non-DO-notes too.
870 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
872 * VERSION: release 2.9.21
874 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
877 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
879 * python/lilylib.py (progress): Minor fix.
881 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
883 * lily/note-name-engraver.cc: doc engraver.
885 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
887 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
889 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
892 * lily/stem-engraver.cc (make_stem): don't set duration-log
894 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
895 write snippet-names binary.
897 * python/lilylib.py (system): use os.system for mingw32
899 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
902 * scm/backend-library.scm: update email address.
904 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
907 * scm/define-grobs.scm (all-grob-descriptions): use callback to
910 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
911 handle dot creation separately.
913 * lily/tab-note-heads-engraver.cc (process_music): idem.
915 * lily/drum-note-engraver.cc (process_music): idem.
917 * lily/note-heads-engraver.cc (process_music): idem.
919 * lily/rest-engraver.cc: don't set duration-log.
921 * scm/output-lib.scm (string-number::calc-text): new function.
922 (note-head::calc-duration-log): new function.
924 * lily/fingering-engraver.cc (make_script): remove 'text setting.
926 * scm/output-lib.scm (fingering::calc-text): new function.
928 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
930 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
931 and include-eps-font -> include-eps-fonts
933 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
935 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
937 * lily/timing-translator.cc: list properties.
938 (start_translation_timestep): update internalBarNumber too.
940 * scm/define-context-properties.scm
941 (all-user-translation-properties): add internalBarNumber.
943 * input/regression/spacing-no-note.ly: new file.
945 * buildscripts/output-distance.py (link_file): verbosity for OSError.
947 * lily/book.cc: #include cleanup.
949 * lily/include/lily-guile-macros.hh: add assert to
950 scm_or_str2symbol(SCM).
952 * VERSION (PATCH_LEVEL): bump version.
954 * lily/spacing-spanner.cc (musical_column_spacing): handle
955 musical->nonmusical spacing case, where there is no spacing
956 wish. Fixes issue #61.
958 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
959 (pango_item_string_stencil): use logical rect horizontally (to
960 preserve spaces), ink_rect vertically (for time signatures).
962 * lily/font-metric.cc (word_stencil): new interface function
964 * input/regression/utf-8-mixed-text.ly: new file.
966 * lily/percent-repeat-engraver.cc (listen_percent): remove
969 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
970 non-dynamic scripts. Fixes #30.
972 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
974 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
976 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
977 SCM_UNDEFINED for non-existent data.
979 * lily/side-position-interface.cc (general_side_position): allow
980 optional current_offset argument for chaining, so combinations of side-position
981 and outside slur callback don't add up. Fixes issue #92.
983 * lily/pango-font.cc (pango_item_string_stencil): use
984 logical_rect. This prevents spaces after words from disappearing,
987 * VERSION: release 2.9.20
989 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
991 * scm/define-grob-properties.scm (all-user-grob-properties):
992 mention stencil as user settable.
994 2006-10-02 Joe Neeman <joeneeman@gmail.com>
996 * Documentation/user/page.itely (Page formatting):
997 document auto-first-page-number
999 * lily/page-breaking.cc (find_chunks_and_breaks):
1000 * lily/paper-score.cc (calc_breaking): Follow changes to the
1001 Constrained_breaking interface
1003 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1004 here backwards, as an optimisation
1005 (initialize): new function; move most of the code in resize () here
1006 (combine_demerits): cache ragged_right_
1007 (Constrained_breaking): constructor now takes the Paper_score
1009 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1011 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1012 avoid parser lookahead for 0-ary functions.
1014 * lily/translator.cc: Extract event classes from
1015 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1017 2006-10-02 Heikki Junes <hjunes@gmail.com>
1019 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1022 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1024 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1025 function. Call the page breaking function selected in the
1026 `page-breaking' \paper variable, then the post processing function
1027 chosen using the `page-post-process' \paper variable.
1028 (line-height): new function. Return the height of a system.
1029 (line-minimum-position-on-page): new function. Return the position
1030 of a system on page (using the previous line position), only
1031 considering between system padding.
1032 (stretchable-line?): new function. Says whether a line can be
1033 stretched (ie. is not a title nor a single staff system).
1034 (page-maximum-space-left): new function. Computes space left on a
1035 page, when all systems are separated by their padding.
1037 * lily/page-breaking.cc (breaking::make_pages): Move page post
1038 processing function call to page breaking wrapper (common to all
1041 * lily/paper-book.cc (book::pages): call the page breaking
1042 wrapper, instead of the page breaker directly
1044 * ly/paper-defaults.ly: Add \paper variables for page breaking
1045 wrapper and page post processing function. Make
1046 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1047 `system-maximum-stretch-procedure' variable for holding a function
1048 computing the maximum stretch a system allows.
1050 * scm/layout-page-dump.scm (write-page-breaks): computes the
1051 stretch to apply to systems on a page to minimize left
1052 space. Dump this stretch length.
1054 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1055 the system-stretch property of the tweak data to stretch the
1057 (includePageLayoutFile): Void function which includes the
1058 generated page-layout file if it exists and if the page layout
1059 dumping is not asked.
1060 (scoreTweak): if the score tweak named by the argument exists,
1063 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1065 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1066 handle correctly the case where there are multiple \noPageBreaks
1069 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1071 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1073 * abc2ly.py fix so that entering " -- " will translate to a -- in
1074 the lilypond instead of a " - - "
1076 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1078 * lily/align-interface.cc: fix typo
1080 * lily/dynamic-text-spanner.cc (print): Add a special case for
1081 trill spanner right sides.
1083 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1085 * lily/align-interface.cc (get_extents_aligned_translates): add
1086 support for padding variable.
1088 * lily/break-align-interface.cc (self_align_callback): oops: use
1089 loop variable in guard.
1091 * input/regression/repeat-percent-grace.ly: new file.
1093 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1094 remember first currentCommandColumn of a grace run. Fixes issue 70.
1096 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1097 move class definition to CC file.
1099 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1101 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1102 measure-long repeats.
1104 * flower/include/international.hh: include stdarg.h
1106 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1108 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1109 put_systems_on_pages to return an empty result, we need to assign
1110 demerits properly in that case.
1111 (put_systems_on_pages): Make the number of pages depend on the
1112 evenness of page_number. Add auto-first-page-number.
1113 (calc_subproblem): ensure that the page-number is even for the
1114 left-hand page. Warn if the first page-turn doesn't fit onto the
1115 first (right-hand) page.
1117 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1118 (min_page_count): make this publicly accessible
1119 (min_page_count): fix a bug when there are forced page breaks that
1120 was introduced when I made this loop run backwards
1121 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1122 replace space_systems_on_min_pages with these two. The logic in
1123 space_systems_on_min_pages was getting too convoluted and is better
1124 contained in page-turn-page-breaking.
1126 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1128 (breakable_column): typo
1130 * lily/source-file.cc (get_line): fix off-by-one error
1131 and clean up some of the logic
1133 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1135 * lily/page-breaking.cc (make_pages): honour the first-page-number
1138 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1140 * VERSION (PACKAGE_NAME): bump version.
1142 2006-09-26 Pal Benko <benko.pal@gmail.com>
1144 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1145 (the latter is the same as petrucci-f which is kept for compatibility)
1147 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1149 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1151 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1153 * lily/global-context.cc (run_iterator_on_me): break out of loop
1154 if moment doesn't increase.
1156 * scm/define-grob-properties.scm (all-user-grob-properties): add
1159 * lily/accidental.cc (after_line_breaking): read forced property.
1161 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1164 * input/regression/accidental-forced-tie.ly: new file.
1166 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1168 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1170 * lily/figured-bass-engraver.cc: only listen to rest events if
1171 ignoreFiguredBassRest is not set.
1173 * scm/define-context-properties.scm
1174 (all-user-translation-properties): add ignoreFiguredBassRest property
1176 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1178 * lily/paper-book.cc (get_system_specs):
1179 (set_system_penalty): fix breakbefore.
1180 We used to set a penalty on the system after the break, now we
1181 set a permission on the system before the break
1183 * lily/grob-property.cc: add scm debugging hooks into
1184 property modification
1186 * lily/context-property.cc:
1188 rename make_foo_from_properties to internal_make_foo and
1189 move it from context-property.cc to a member function of
1192 * lily/include/lily-guile-macros.hh:
1193 overload ly_symbol2scm macro so that there is no more need
1196 * lily/volta-repeat-iterator.cc:
1197 * lily/tweak-engraver.cc:
1198 * lily/tuplet-bracket.cc:
1199 * lily/span-bar-engraver.cc:
1200 * lily/script-engraver.cc:
1201 * lily/prob-scheme.cc:
1202 * lily/pointer-group-interface.cc:
1204 * lily/grob-scheme.cc:
1205 * lily/grob-property.cc:
1207 * lily/context-property.cc:
1208 * lily/break-substitution.cc:
1209 * lily/break-align-engraver.cc:
1210 * lily/axis-group-interface.cc:
1211 * lily/align-interface.cc:
1212 remove calls to internal_FOO
1214 * lily/system-start-delimiter-engraver.cc:
1215 * lily/parenthesis-engraver.cc:
1216 * lily/accidental-engraver.cc:
1217 remove calls to make_foo_from_properties
1219 2006-09-23 Graham Percival <gpermus@gmail.com>
1221 * Documentation/user/programming-iterfaces.itely: fix
1222 def-music-function -> define-music... leftover.
1224 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1226 * lily/page-spacing.cc (min_page_count): by running the loop
1227 backwards, we can calculate ragged_last properly.
1229 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1231 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1232 printfirst-page-number -> print-first-page-number
1234 * python/convertrules.py: corresponding rule.
1236 * Documentation/user/page.itely (Page formatting): Document the
1237 default values of all page layout parameters.
1239 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1241 * lily/lexer.ll: remove limitation on music function arity. New
1242 mode extratoken, which inserts extra EXPECT_* tokens after
1243 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1245 * lily/parser.yy: Change grammar for music function accordingly.
1247 * lily/include/lily-parser.hh: New method get_state, new member
1248 hidden_state. Works around a problem when parser fetches
1249 MUSIC_FUNCTION token but not the following EXPECT_* token.
1251 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1254 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1255 references to Music; use ASSIGN_EVENT_ONCE everywhere
1257 * lily/grob-info.cc: junk *music_cause
1259 * lily/music.cc: copy eventified articulations to stream event
1261 * lily/part-combine-iterator.cc: Cleanup using enums
1263 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1266 * lily/include/engraver.hh: Junk music.hh include
1268 * lily/stream-event.cc: Changed constructors
1270 2006-09-21 Graham Percival <gpermus@gmail.com>
1272 * Documentation/user/tweaks.itely (Fitting music onto fewer
1273 pages): change settings to avoid warning messages.
1275 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1277 * Documentation/user/tweaks.itely (Fitting music onto fewer
1278 pages): Add between-system-space setting.
1280 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1282 * lily/accidental-placement.cc (calc_positioning_done): don't
1283 trigger Y-extent calculation too early. Use pure_height instead.
1285 * lily/scale.cc (LY_DEFINE): new file.
1287 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1289 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1290 that happen at the start of a score: having a zero-length
1291 chunk was messing up min_system_count calculations.
1293 * lily/source-file.cc (get_line): lower_bound, not
1294 binary_search. Fixes problem where point-and-click would
1295 always point to the first line.
1297 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1299 * lily/accidental-placement.cc (calc_positioning_done): also put
1300 stems into accidental support.
1302 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1305 * scm/script.scm (default-script-alist): avoid-slur and
1306 slur-padding for portato script.
1308 * lily/stem-tremolo.cc (translated_stencil): new function.
1309 (height): use new function. Fixes tremolos on whole notes.
1311 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1314 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1316 * scripts/abc2ly.py (try_parse_comment): idem.
1318 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1319 bar_string iso. string.find()
1323 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1326 2006-09-18 Graham Percival <gpermus@gmail.com>
1328 * Documentation/user/basic-notation.itely: add bug
1329 warning about ties and octavation/clef.
1331 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1333 * VERSION (PACKAGE_NAME): release 2.9.18
1335 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1337 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1338 figure out midi file names right here.
1340 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1342 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1344 * scm/backend-library.scm: option naming: gs-font-load*s*
1346 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1349 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1351 * scm/define-music-types.scm (music-descriptions): remove
1352 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1353 Music::to_event doesn't complain.
1355 * lily/accidental-placement.cc (ape_compare):
1356 * lily/semi-tie.cc (compare):
1357 * lily/note-column.cc (shift_compare): replace by XXX_less
1359 * lily/tie-formatting-problem.cc (set_chord_outline):
1360 * lily/tie-column.cc (calc_positioning_done):
1361 * lily/system.cc (post_processing)
1363 * lily/stem.cc (note_head_positions)
1364 (calc_positioning_done):
1365 * lily/spanner.cc (do_break_processing)
1366 (find_broken_piece):
1367 * lily/span-bar.cc (print):
1368 * lily/semi-tie-column.cc (calc_positioning_done):
1369 * lily/rest-collision.cc (calc_positioning_done):
1370 * lily/program-option.cc (get_help_string):
1371 * lily/note-collision.cc (get_clash_groups):
1372 * lily/new-fingering-engraver.cc (position_scripts):
1373 * lily/keyword.cc (Keyword_table):
1374 * lily/hara-kiri-group-spanner.cc (request_suicide):
1375 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1376 * lily/accidental-placement.cc (calc_positioning_done):
1378 * lily/beam.cc (get_beam_segments):
1379 * lily/grob-array.cc (remove_duplicates):
1382 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1383 ragged-last-bottom = ##f (test the new page breaker)
1385 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1387 * scm/define-context-properties.scm
1388 (all-internal-translation-properties): remove properties that
1389 were used to communicate page-turn stuff to the paper-column
1392 * lily/lily-guile.cc (robust_scm2string): new function
1394 * lily/paper-column-engraver.cc: Clean up page turn stuff
1396 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1397 instead of cluttering up paper-column-engraver.cc
1399 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1401 * scm/layout-page-dump.scm (scm): export utility function names,
1402 to allow user writing cutsom dumping functions.
1404 * scm/layout-page-layout.scm: export utility function names to
1405 enable custom page breaking function writing. Tabify.
1406 (line-next-space): use ?-suffix only for predicates
1407 (page-maximum-space-to-fill): new function. Return the space
1408 between first and bottom system of a page, to give to
1410 (space-systems): use a space-to-fill argument (for instance as
1411 computed by page-maximum-space-to-fill) instead of computing
1412 internaly this space with the page height. That way, the caller
1413 can adjust the space to use.
1414 (make-page-from-systems, walk-paths): compute space to fill before
1415 calling space-systems.
1417 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1419 * scm/script.scm (default-script-alist): set paddings for every
1420 type here, increase for portato mark.
1422 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1425 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1427 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1428 use spanner::set-spacing-rods
1430 * lily/note-column.cc: reformat.
1432 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1433 step positioning for note/rest combinations.
1435 * input/regression/rest-note-collision.ly: new file.
1437 * scm/define-grobs.scm (all-grob-descriptions): add
1440 * flower/include/std-vector.hh: switch off again.
1442 * VERSION (PATCH_LEVEL): bump to 2.9.18
1444 * flower/include/std-string.hh: idem.
1446 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1448 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1450 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1453 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1455 * Documentation/user/page.itely: update page breaking documentation
1457 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1459 * lily/note-collision.cc (calc_positioning_done): only access
1460 first head if available.
1462 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1464 * scm/framework-ps.scm (output-preview-framework): use new name.
1466 * lily/program-option.cc (internal_set_option): use new names.
1468 * Documentation/user/SConscript (lilypond_book_flags): update -d
1471 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1472 output into other programs): new variable names.
1474 * scm/lily.scm (define-scheme-options): uniformize var names.
1476 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1477 tuplets_ is non-empty before popping.
1479 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1481 * lily/spanner.cc (find_broken_piece):
1482 * lily/spacing-spanner.cc (get_columns):
1483 * lily/source-file.cc (get_line):
1484 * lily/simple-spacer.cc (get_column_description):
1485 * lily/keyword.cc (lookup):
1486 use the new binary search.
1488 * flower/include/std-vector.hh: replace binary_search with
1489 a more STL-like version
1491 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1493 * lily/tie-performer.cc: remove unused last_event_ property.
1494 (class Tie_performer): add now_tied_heads_ property for
1495 partially-tied heads.
1496 (acknowledge_audio_element): when adding an Audio_note, put the
1497 note in now_tied_heads_ if the audio note is partially tied.
1498 (stop_translation_timestep): always include entries in
1499 now_tied_heads_ in heads_to_tie_.
1501 * lily/drum-note-performer.cc (process_music): look for tie-events
1502 in the articulations; pass to Audio_note constructor.
1504 * lily/note-performer.cc (process_music): look for tie-events in
1505 the articulations; pass to Audio_note constructor.
1507 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1510 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1511 include initializer in constructor.
1513 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1515 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1516 unless they are breakable. This fixes discrepancies between the forces
1517 calculated here and the forces calculated in get_line_configuration.
1519 * lily/grob.cc (pure_relative_y_coordinate): fix some
1520 mis-estimation that was happening with piano staves.
1522 * lily/constrained-breaking.cc (resize): don't choke if we get a
1523 measure that won't fit on a line.
1524 (combine_demerits): don't consider uniformity when ragged
1526 * lily/page-spacing.cc (solve): why the f* were there two of these?
1527 (calc_subproblem): properly handle the case where a system is taller
1530 * lily/system.cc (get_paper_system): ensure that all the permissions
1531 and penalties are passed to the paper systems.
1533 * lily/page-breaking.cc (create_system_list): support system-count.
1535 * scm/define-grobs.scm (pure-print-callbacks): add
1536 ly:script-interface::print
1538 * lily/page-spacing.cc (min_page_count): fix calculation of min
1539 pages if we are ragged and there are non-zero springs.
1541 * scm/layout-page-layout.scm: if the pure-height estimates are under
1542 the real height, allow space-systems to ignore padding if it is
1543 needed in order to fit the systems on one page
1545 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1547 (solve): fix performance problem. Make sure we always get at least
1550 * lily/page-breaking.cc (make_pages): include write-page-breaks
1553 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1555 * scm/define-grobs.scm: add the new slur-callback
1556 fix pure-relevant to not exclude grobs whose extent is already
1559 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1562 * lily/slur.cc (pure_height): new callback to estimate the height
1565 2006-09-02 Graham Percival <gpermus@gmail.com>
1567 * Documentation/user/invoking.itely: small update on
1568 MacOS X notes; thanks Trevor!
1570 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1572 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1574 * lily/lexer.ll: accept EOF in all states.
1576 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1578 * lily/source-file.cc (Source_file): always 0-terminate character
1579 array, to prevent Flex from barfing.
1581 * lily/global-context.cc (get_output): robustness: don't crash if
1582 no Score context found.
1584 * lily/include/book.hh (class Book): idem.
1586 * lily/include/context-def.hh (struct Context_def): idem.
1588 * lily/include/score.hh (class Score): don't derive from Input.
1590 * lily/book.cc (Book): add a copy ctor.
1592 * buildscripts/output-distance.py (FileLink.calc_distance): count
1593 orphans in distance too.
1595 * python/midi.c (midi_parse_track): robustness: don't read past
1598 * ly/performer-init.ly: add Control_track_performer, move
1599 Tempo_performer and Time_signature_performer to Score.
1601 * lily/score-performer.cc (acknowledge_audio_elements): override
1602 from base class: add to audio-columns
1604 * lily/control-track-performer.cc (add_text): new file: generate
1607 * lily/performance.cc: move output_header_track to
1608 Control_track_performer ()
1610 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1612 * lily/include/midi-item.hh (class Midi_channel_item): insert
1613 class into hierarchy, for items that can have a channel setting. Dehungarify.
1615 * lily/include/performer.hh (class Performer): remove
1616 play_element(); move functionality into announce/acknowledge.
1618 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1620 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1621 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1623 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1625 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1628 * lily/all-font-metrics.cc: remove TFM support.
1630 * lily/include/tfm.hh: remove TFM support, TFM reader.
1632 * lily/include/binary-source-file.hh: remove Binary_source_file.
1634 2006-08-27 Graham Percival <gpermus@gmail.com>
1636 * Documentation/topdocs/NEWS.itely: add @c marker for
1637 stuff I've processed.
1639 * Documentation/user/ various: info from NEWS.
1641 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1643 * lily/paper-column-engraver.cc (finalize): Oops, this change
1644 should have gone in on 2006-08-23
1646 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1648 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1649 quotes to quote arguments. Fixes Windows problem.
1651 * python/lilylib.py (progress): idem
1653 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1655 * scripts/musicxml2ly.py: fix for importing
1656 minor key signatures from MusicXML. (Phillip Kirlin)
1658 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1660 * python/musicxml.py:
1661 (Attributes.get_key_signature): now correctly retrieves mode from
1664 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1666 * lily/parser.yy (output_def_body): take ownership of identifier
1669 * Documentation/user/advanced-notation.itely (Metronome marks):
1670 update use of \tempo in \midi.
1672 * VERSION: release 2.9.16
1674 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1676 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1679 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1681 * input/regression/tie-chord-partial.ly: clarify example.
1683 * scm/define-music-properties.scm (all-music-properties): remove
1686 * ly/music-functions-init.ly: remove \untied.
1688 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1689 stream events and music events.
1690 (stop_translation_timestep): search acknowledged heads for
1693 * input/regression/tie-chord-partial.ly: new file.
1695 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1696 for \char markup command.
1698 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1700 * scm/define-music-types.scm (music-descriptions): consistency:
1701 Use solo-{one,two}-event iso. solo-[12]-event.
1703 * lily/part-combine-engraver.cc (process_music):
1704 Use solo-{one,two}-event iso. solo-[12]-event.
1706 * ly/declarations-init.ly (partCombineListener): add Timing as
1709 * flower/std-string.cc (string_copy): use copy ()
1711 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1713 2006-08-24 Graham Percival <gpermus@gmail.com>
1715 * Documentation/user/changing-defaults.itely, global.itely,
1716 lilypond-book.itely, page.itely: minor changes from mailist.
1718 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1720 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1723 * scm/define-context-properties.scm
1724 (translator-property-description): robustness: detect type errors
1725 in property definitions.
1727 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1728 after getting it from SCM.
1730 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1733 * lily/include/performer.hh (class Performer): strip get_tempo()
1736 * lily/midi-def.cc: strip file.
1738 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1740 * lily/include/context-def.hh (struct Context_def): use
1741 VIRTUAL_COPY_CONSTRUCTOR().
1743 * lily/source-file.cc: smobification.
1745 * lily/include/source-file.hh (class Source_file): smobify
1746 Source_file. Trim redundant members.
1748 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1749 clones after creation. This plugs a huge memory leak.
1751 * python/convertrules.py (FatalConversionError.sub_tempo):
1752 complete rule for \midi{ \tempo }
1754 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1756 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1758 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1760 * input/regression/optimal-page-breaking-hstretch.ly: test for
1761 ragged-last-bottom also
1763 * lily/paper-column-engraver.cc (finalize): make the end of a score
1764 breakable by default. This is to balance out a change in behaviour
1765 of the page-turn-breaker which no longer makes the end of a score
1768 * lily/paper-book.cc (pages): set the systems_ once the pages are
1771 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1772 Page_breaking interface.
1774 * lily/page-breaking.cc (class Page_breaking): make the interface
1775 more consistent and provide abstractions for dealing with
1778 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1779 algorithm. Use the new interface to Page_breaking.
1781 * lily/page-spacing.cc: better support for ragged-bottom and
1784 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1786 * python/convertrules.py (conv): warning on \tempo{}
1788 * ly/performer-init.ly: set tempoWholesPerMinute.
1790 * ly/midi-init.ly: remove \midi
1792 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1795 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1796 tempoUnitDuration for determining what to print.
1798 * lily/lyric-extender.cc: typo.
1800 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1802 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1805 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1807 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1808 eps-pad-boxes is set.
1810 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1812 * THANKS: update sponsors.
1814 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1816 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1818 * input/regression/tie-chord-untied.ly: new file.
1820 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1822 * scm/define-music-properties.scm (all-music-properties): add
1825 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1827 (headertext_nopics): sanitize no-examples text.
1829 * scm/page.scm (make-page-stencil): don't rely on extents of
1830 page-stencil. This fixes spurious space around .EPS files produced
1831 with the EPS backend.
1833 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1835 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1837 * lily/hara-kiri-engraver.cc (process_music): remember
1838 keepAliveInterfaces after processing \set
1840 * lily/lyric-extender.cc (print): support left/right-padding for
1843 * scm/documentation-generate.scm (string-append): revert lilypond/
1846 2006-08-20 Graham Percival <gpermus@gmail.com>
1848 * Documentation/user/lilypond.tely: clarification to
1849 license presentation (not to actual license).
1851 * Documentation/user/basic-notation.itely,
1852 instrument-notation.itely: minor changes.
1854 * input/ {regression, test}/+.ly: clarification to
1855 text (you can click on examples). Thanks, Mats!
1857 * input/manual/bar-lines.ly: adds ||: repeats.
1859 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1861 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1863 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1865 * Documentation/user/lilypond.tely: strip lilypond/ from info
1866 links, rename to category LilyPond
1868 * lily/pango-font.cc (description_string): new function.
1870 * VERSION: release 2.9.15
1872 * lily/spacing-engraver.cc (stop_translation_timestep): use
1873 Dscho's fix for spacing spanner.
1875 * scm/define-music-types.scm (music-descriptions): use
1876 apply-output-event for ApplyOutputEvent
1878 * lily/output-property-engraver.cc (listen_apply_output): rename
1879 from listen_layout_instruction.
1881 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1884 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1886 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1887 commandline args with contains, split by \n.
1889 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1890 write snippet-names file, call with -dread-file-list. Fixes
1891 command limitations on 64-bit systems.
1893 * input/regression/stencil-color-rotation.ly: new file.
1895 * lily/include/translator.hh (struct Acknowledge_information):
1896 revert: don't use Protected_scm in global objects, as GUILE can't
1897 handle gc_unprotect from automated destructors on MacOS X.
1899 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1900 color, not the original stencil. Fixes combinations of
1901 color/transparency/rotation.
1903 * scripts/lilypond-book.py (main): add --formats=eps for
1906 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1907 crash if spacing_ is nonexistent.
1909 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1911 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1912 \catcode`\@=12 in the LaTeX output.
1914 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1916 * scm/define-music-types.scm (music-descriptions):
1917 use sustain-event iso. sustain-pedal-event.
1919 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1921 * scripts/convert-ly.py: honour the -n command-line switch
1923 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1925 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1926 break specification.
1928 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1930 * Documentation/user: convert-ly the user manual
1932 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1934 * stepmake/aclocal.m4: version check patch (thanks MWD)
1936 * ly/music-functions-init.ly: robustness. Don't crash if
1937 currentBarNumber is not a number.
1939 * VERSION (PATCH_LEVEL): bump.
1941 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1943 * stepmake/aclocal.m4: better version check; handle fooX.Y
1946 * ly/performer-init.ly: instrument name fixup.
1948 * input/manual/chord-names-jazz.ly (banterProperties):
1949 instrumentName update
1951 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1953 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1955 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1956 function. Use hash tables to check membership.
1958 * lily/general-scheme.cc (LY_DEFINE): new function.
1960 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1962 * lily/include/translator.hh (struct Acknowledge_information): add
1965 * ly/music-functions-init.ly: change name to BreathingEvent
1967 * input/regression/*.ly: apply it.
1969 * python/convertrules.py (conv): better instrumentName conversion
1972 * scm/define-music-types.scm (music-descriptions): add
1973 line-break-event to LineBreakEvent music
1975 * lily/music.cc (to_event): don't crash if music type not set.
1977 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1980 * lily/spacing-engraver.cc (stop_translation_timestep): set
1981 spacing for proportional notation too.
1983 * scm/translation-functions.scm (format-bass-figure): inspect
1986 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1988 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1990 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1992 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1994 * scm/layout-page-layout.scm (make-page-from-systems): new function
1995 (optimal-page-breaks): use the new page-breaking calling convention
1997 * scm/define-context-properties.scm (all-user-translation-properties):
2000 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2001 revokePageTurns functionality. If there is a special barline within
2002 the breakable region, break there instead of at the end of the region.
2004 * lily/paper-book.cc (pages): use the new page-breaking calling
2007 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2009 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2011 * scripts/lilypond-book.py: insert \sourcefileline command in
2012 output, so lilypond error messages refer to the spot in the
2013 original .lytex / .itely sourcefile.
2015 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2017 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2018 space to next column for distance to fixed col.
2020 * VERSION (PACKAGE_NAME): release 2.9.14
2022 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2025 * lily/accidental-engraver.cc (process_acknowledged): don't create
2026 accidental for trill span event. This fixes spurious accidentals
2029 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2031 * scm/define-grob-properties.scm (all-user-grob-properties):
2032 Clarify documentation of side-axis and direction. Thanks to Paul
2033 for the inspiration.
2035 * lily/bar-line.cc: Add documentation for "||:" also in the
2036 interface documentation.
2038 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2040 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2042 * lily/paper-column.cc (set_system): new function.
2044 * lily/spacing-engraver.cc (stop_translation_timestep): store
2045 SpacingSpanner refs in Paper_column.
2047 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2048 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2050 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2052 * lily/beam-engraver.cc (listen_beam): add method for
2053 Grace_beam_engraver too.
2055 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2057 * python/convertrules.py: Fix indentation bug that broke
2058 conversion of files older than 1.3.117.
2059 Fix escape error in the description for 2.9.6.
2061 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2063 * lily/*-engraver.cc: convert all try_music functions to listen_*
2066 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2067 enums to represent pedal types, and calculate more data statically.
2069 * scm/part-combiner.scm (recording-group-emulate): create a
2070 softcoded substitute for recording-group-engraver.cc.
2072 * lily/music.cc: make a common transpose function for events and
2075 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2076 ManualMelismaEvent, and obsoletes Melisma_translator.
2078 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2080 * input/test/instrument-name-align.ly: update version.
2082 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2084 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2085 Doc the --pdf flag to lilypond-book.
2087 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2089 * Documentation/topdocs/NEWS.tely (Top): add description.
2091 * input/regression/tuplet-full-length-note.ly: add file.
2093 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2094 always store axis group.
2096 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2098 * input/regression/instrument-switch.ly: new file.
2100 * lily/instrument-switch-engraver.cc (process_music): new file.
2102 * ly/engraver-init.ly: add Instrument_switch_engraver
2104 * ly/music-functions-init.ly: \instrumentSwitch
2106 * scm/define-context-properties.scm
2107 (all-user-translation-properties): add instrumentCueName
2109 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2111 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2113 * ly/music-functions-init.ly: music function \transposition.
2115 * lily/parser.yy (command_element): softcode \transposition.
2117 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2118 (process_music): oops.
2120 * lily/instrument-name-engraver.cc (start_spanner): new
2121 function. Create spanner when property changes.
2122 (stop_spanner): new function.
2124 * python/convertrules.py (conv): add rule.
2126 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2127 shortInstrumentName iso. instr.
2129 * scm/output-ps.scm (dashed-line): add phase argument to
2132 * lily/bar-line.cc (dashed_bar_line): new function.
2133 (compound_barline): support \bar "dashed".
2135 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2136 --output=DIR to DIR/BASE if it is a dir.
2138 * flower/file-name.cc (file_part): new function
2139 (dir_part): new function
2141 * lily/lily-parser-scheme.cc (LY_DEFINE):
2143 * DEDICATION: update
2145 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2147 * lily/instrument-name-engraver.cc: formatting.
2149 * python/convertrules.py (conv): bugfix for \epsfile.
2151 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2155 * lily/gourlay-breaking.cc: Oops, these should have been included
2158 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2160 * scripts/*.py (program_name): cleanup relocation snippets.
2162 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2164 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2166 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2167 page-breakable by default
2169 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2170 correctly calculated for a single-system page
2172 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2173 bigger than the second number
2175 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2176 acknowledge that we aren't satisfying constraints)
2178 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2181 * lily/grob.cc (pure_height): add minimum-Y-extent
2183 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2186 * lily/constrained-breaking.cc: convert code to use new Matrix class
2187 (get_best_solution): new function
2189 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2190 is a page with no systems
2192 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2194 * VERSION (PACKAGE_NAME): release 2.9.13
2196 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2199 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2201 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2203 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2206 * scm/define-grob-properties.scm (all-user-grob-properties):
2207 remove grace-space-factor.
2209 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2210 grace-spacing-interface
2211 (spacing-options-interface): add.
2213 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2215 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2217 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2218 GraceSpacing object.
2220 * lily/note-spacing.cc: fix prop list formatting
2222 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2223 beaming for grace notes too.
2225 * input/regression/spacing-grace.ly: update.
2227 * lily/grace-spacing-engraver.cc: new file.
2229 * lily/spacing-spanner.cc: add strict-grace-spacing.
2231 2006-07-20 Graham Percival <gpermus@gmail.com>
2233 * lily/parser.yy: compile fix.
2235 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2237 * scm/define-grobs.scm (all-grob-descriptions): typo.
2239 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2240 .eps extension from includegraphics.
2242 * scripts/lilypond-book.py (main): add support for --pdf.
2244 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2245 callback to compute common shortest duration.
2246 (set_springs): typo.
2248 * scm/define-grob-properties.scm (all-user-grob-properties): add
2249 strict-grace-spacing.
2251 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2252 support float_grace_columns_.
2254 * lily/spacing-options.cc (init_from_grob): new file.
2256 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2258 * input/regression/spacing-loose-grace.ly: new file.
2260 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2262 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2263 tupletFullLengthNote too. Choose right bound depending on value.
2265 * input/regression/tuplet-full-length-note.ly: new file.
2267 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2269 * lily/*-performer.cc: Converted try_music to listen_*
2271 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2272 as a stream-event internally. Introduce event_cause (), deprecate
2275 * scm/define-music-types.scm: Removed BusyPlayingEvent
2277 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2279 * Documentation/user/advanced-notation.itely (Font selection):
2280 Document how to get a list of available fonts using 'lilypond
2281 -dshow-available-fonts blabla'.
2283 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2285 * GNUmakefile.in: filter lily-XXX.pdf files.
2287 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2289 * scm/define-grob-properties.scm (all-internal-grob-properties):
2290 remove delta-pitch. Use delta-position everywhere.
2292 * scm/output-lib.scm (fall::print): use new order.
2294 * scm/output-ps.scm (path): reorder arguments.
2296 * scm/output-svg.scm (path): support for path primitive.
2298 * input/regression/bend-after.ly: new file.
2300 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2301 recipe for eps -> pdf conversion.
2303 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2305 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2308 2006-07-19 Graham Percival <gpermus@gmail.com>
2310 * input/manual/screech-boink.ly: moved to here.
2312 * input/screech-boink.ly: deleted.
2314 * scm/define-grob-properties.scm: clarify doc string.
2316 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2318 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2320 * scm/output-ps.scm (path): define path.
2322 * scm/define-stencil-commands.scm
2323 (ly:register-stencil-expression): add path.
2325 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2327 * ly/engraver-init.ly: add Fall_engraver
2329 * lily/parser.yy (music_function_event): allow musicfunction
2330 without music arg as music_function_event.
2332 * lily/grob-scheme.cc (LY_DEFINE):
2333 ly:grob-robust-relative-extent. New function.
2335 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2337 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2339 * scm/output-lib.scm (fall::print): new function
2341 * lily/fall-engraver.cc (stop_fall): new file.
2343 * ly/music-functions-init.ly: alphabetise.
2345 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2348 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2350 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2352 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2355 * lily/translator-group.cc (connect_to_context): non const error message.
2357 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2359 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2362 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2364 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2366 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2369 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2371 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2373 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2375 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2377 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2379 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2381 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2383 * scm/layout-page-layout.scm: Define module, tidy code, use more
2384 functions iso. a single big one.
2386 * scm/layout-page-dump.scm: move page dump functions used in two
2387 pass spacing to this file. Define module.
2389 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2392 * ly/paper-defaults.ly: use module layout-page-layout.
2394 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2396 * lily/music.cc: Revised MusicEvent event class. It now contains
2397 event data directly instead of encapsulating it in music. The
2398 previously used class is renamed to OldMusicEvent.
2400 * lily/stream-event.cc: Stream events are now probs.
2402 * lily/translator-group.cc, lily/translator.cc: Translators can
2403 now listen directly to stream events, by using macros
2404 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2406 * lily/arpeggio-engraver.cc: Converted to use new event system
2408 * THANKS: Corrected spelling mistake.
2410 2006-07-12 Graham Percival <gpermus@gmail.com>
2412 * Documentation/user/SConscript, make/lilypond-vars.make,
2413 input/GNUmakefile: doc build looks in input/manual instead
2416 * input/manual/ GNUmakefile, SConscript: build files for
2419 * input/test/ various: some files moved to input/manual/
2421 * Documentation/user/basic-notation.itely: small updates;
2422 thanks Kieren and Charles!
2424 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2426 * VERSION (PACKAGE_NAME): release 2.9.11
2428 * Documentation/topdocs/NEWS.tely (Top): update prop value
2430 * Documentation/user/basic-notation.itely (Tuplets): new property
2433 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2435 * python/convertrules.py (conv): tweaks.
2437 * VERSION (PATCH_LEVEL): bump version.
2439 * python/convertrules.py (conv): add rule for
2440 tupletNumberFormatFunction.
2442 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2443 tupletNumberFormatFunction.
2445 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2446 text through 'text callback.
2448 * lily/time-scaled-music-iterator.cc (construct_children): copy
2449 tweaks generated events.
2451 * scm/define-context-properties.scm
2452 (all-user-translation-properties): remove tupletNumberFormatFunction
2454 * lily/tuplet-engraver.cc (process_music): don't read
2455 tupletNumberFormatFunction
2457 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2460 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2462 * lily/global-context-scheme.cc: Separated ly:run-translator into
2465 * lily/score-engraver.cc, lily/score-performer.cc,
2466 scm/define-context-properties.scm: Make paper/midi output
2467 accessable as a context property.
2469 * lily/score-translator.cc, lily/score-context.cc: Removed.
2471 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2473 * scm/ps-to-png.scm (Module):
2474 * scm/framework-tex.scm (Module):
2475 * scm/framework-ps.scm (Module):
2476 * scm/backend-library.scm (Module):
2477 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2478 "dDEVICEHEIGHTPOINTS".
2480 2006-07-04 Graham Percival <gpermus@gmail.com>
2482 * Documentation/user/ various: general improvements to
2483 "working with lilypond files" section.
2485 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2487 * lily/sequential-iterator.cc: Change the default get_music_list
2488 to read elements-callback music property
2490 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2491 processing of multimeasure rests. Softcoded
2492 sequential-music-iterator.
2494 * lily/sequential-music-iterator.cc: Removed.
2496 2006-06-28 Graham Percival <gpermus@gmail.com>
2498 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2500 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2502 * lily/parser.yy: Wrap non-post-events in EventChords before
2503 assigning them to identifiers.
2505 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2507 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2508 gives correct vertical placement of \bar ":" in all staff
2509 sizes. Thanks Martial!
2511 2006-06-26 Graham Percival <gpermus@gmail.com>
2513 * Documentation/user/invoking.itely : minor update from mailist.
2515 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2517 * lily/ various: Introduce stream events of types Prepare,
2518 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2519 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2521 * lily/global-context*.cc: Time is now -inf before iteration
2524 * lily/include/context.hh: Removed unique_, init_
2526 * Documentation/topdocs/NEWS: Make the feathered beam example
2527 avoid triggering a bug.
2529 2006-06-24 Graham Percival <gpermus@gmail.com>
2531 * Documentation/user/ various: small additions from mailist.
2533 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2535 * ly/performer-init.ly: Add some missing links in the context
2536 hierarchy for MIDI output. There are probably some more missing!
2538 2006-06-21 Graham Percival <gpermus@gmail.com>
2540 * Documentation/user/ various: minor spelling fixes;
2541 thanks Dave Luttinen!
2543 * Documentation/user/ various: small clarifications;
2544 thanks Anthony Youngman!
2546 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2548 * po/fr.po: add \n appropriately.
2550 * lily/lexer.ll: remove ? from version-seen?
2552 2006-06-19 John Mandereau <john.mandereau@free.fr>
2554 * po/fr.po; update translation, by Jean-Charles Malahieude and
2557 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2559 * THANKS: add Markus Schneider.
2561 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2562 Staff_symbol_engraver
2564 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2565 replace staff_engraver
2567 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2570 * lily/staff-collecting-engraver.cc
2571 (acknowledge_end_staff_symbol): new function
2573 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2575 * lily/staff-collecting-engraver.cc
2576 (acknowledge_end_staff_symbol): new function.
2578 * lily/main.cc: switch on relocation by default.
2580 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2582 * lily/spacing-spanner.cc (musical_column_spacing): set
2583 compound_fixed_note_space to 0.0. Document why.
2585 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2586 range of inverse_hooke_
2587 (Simple_spacer): init completely.
2589 (get_line_configuration): don't use cols.resize(); it introduces
2592 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2594 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2596 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2597 try. Divide by beatlength.
2599 * input/regression/beaming-ternary-metrum.ly: update doc.
2600 add beatLength hack.
2602 * scm/music-functions.scm (make-time-signature-set): add
2603 standard-beat-grouping.
2605 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2607 * input/regression/tie-whole.ly: new file.
2609 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2610 cross center of note head in case of invisible stem.
2612 2006-06-16 Graham Percival <gpermus@gmail.com>
2614 * Documentation/user/ various: small fixes from mailist.
2616 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2618 * lily/breathing-sign.cc (offset_callback): idem.
2620 * lily/align-interface.cc (align_to_fixed_distance): remove
2623 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2626 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2628 * VERSION (PACKAGE_NAME): release 2.9.9
2630 * ly/lilypond-book-preamble.ly: add \version
2632 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2634 * scripts/lilypond-book.py (PREAMBLE_LY): include
2635 lilypond-book-preamble.ly
2637 * lily/stem.cc (get_beaming): return max of 0 and
2638 scm_ilength. Fixes slurring from/to beams.
2640 * ly/lilypond-book-preamble.ly: new file.
2642 * lily/slur.cc: add inspect-index feature.
2644 2006-06-13 Graham Percival <gpermus@gmail.com>
2646 * Documentation/user/tutorial.itely: trivial fix.
2648 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2650 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2651 all non-event music in the parser via MAKE_SYNTAX.
2653 * lily/parser-scheme.cc: Add ly:parser-error function
2655 * scm/paper.scm: fix typo
2657 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2661 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2664 * buildscripts/output-distance.py (test_compare_signatures):
2666 (read_signature_file): use new signature format.
2668 * scm/stencil.scm (write-system-signature): simpler signature
2671 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2674 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2675 stem_end_position, but estimate instead.
2677 * lily/tuplet-bracket.cc (calc_positions): look at
2678 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2679 brackets narrower than beams.
2681 * lily/lexer.ll: set version-seen? even if version is
2684 * lily/rest.cc (y_offset_callback): bugfix: decide position
2685 override based on scm_is_number(). Fixes \rest on center staff
2688 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2689 patterns for 16th triplets.
2691 2006-06-10 Graham Percival <gpermus@gmail.com>
2693 * Documentation/user/ page.itely, global.itely: editing
2696 * Documentation/user/ various: findex -> funindex.
2698 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2700 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2701 insert extra tuplet events.
2703 2006-06-10 Graham Percival <gpermus@gmail.com>
2705 * Documentation/user/programming-interfaces.itely: add
2708 * python/convertrules.py: add annotatefoo -> annotate-foo
2711 * Documentation/user/global.itely: start editing.
2713 * Documentation/user/page.itely: major editing, new spacing
2716 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2718 * scm/define-markup-commands.scm (wordwrap-markups): use
2719 output-def 'line-width if undefined.
2721 * HACKING: trim outdated info.
2723 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2725 * scm/define-grobs.scm (all-grob-descriptions): Add
2726 line-spanner-interface to all grobs that already have
2727 text-spanner-interface or dynamic-text-spanner-interface
2729 * scm/page.scm: Rename annotate{headers,systems,page}->
2732 * input/regression/page-spacing.ly,
2733 input/regression/page-layout-manual-position.ly: idem
2735 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2737 * lily/line-spanner.cc: cleanup property list.
2739 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2740 generator expressions (2.3 compat).
2742 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2744 * lily/vertical-align-engraver.cc: Make sure that the
2745 align{Above,Below}Context properties are included in the automatic
2748 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2750 * scm/paper-system.scm (paper-system-annotate): also annotate the
2751 estimated pure-Y-extent
2753 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2755 * lily/system.cc (break_into_pieces): set the estimated height
2756 of each child system
2758 * lily/stem.cc (pure_height): new pure-Y-extent callback
2760 * lily/staff-symbol-referencer.cc (callback): don't destroy
2761 the staff-position property
2763 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2764 consider_suicide into two functions
2766 * lily/constrained-breaking.cc (resize): use the new pure
2767 callbacks to estimate the height of a system
2769 * lily/axis-group-interface.cc (pure_group_height): new
2770 side-effect-free VerticalAxisGroup height-callback
2772 * lily/align-interface.cc (get_extents_aligned_translates):
2773 split align_elements_to_extents into two functions
2774 (get_pure_child_y_translation): new function
2776 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2778 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2780 * lily/paper-score.cc: cache break_indices and columns
2782 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2784 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2786 * lily/font-config.cc (init_fontconfig): do the init if
2787 cache_file, but don't look at cache_file.
2789 * input/regression/quote-tie.ly: new file.
2791 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2792 to Head_event_tuple, so we deal gracefully with ties on
2795 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2798 2006-06-08 Graham Percival <gpermus@gmail.com>
2800 * input/test/ smart-transpose.ly, reverse-music.ly:
2801 \applyMusic to music functions update, thanks Michael!
2803 2006-06-07 Graham Percival <gpermus@gmail.com>
2805 * input/test/ add-staccato.ly, add-text-script.ly,
2806 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2807 music functions update, thanks to Michael Meixner.
2809 * Documentation/user/music-glossary.tely: small fix
2812 * Documentation/user/ various: minor additions from mailist.
2814 * Documentation/user/lilypond.tely, basic-notation.itely:
2815 small test of @funindex. (works here)
2817 * input/test/font-table.ly: reduce size to partially
2818 de-ugly version in manual.
2820 * Documentation/user/page.itely: new file (split former
2821 "global issues" into "page settings" and "non-musical
2824 * Documentation/user/ various: fix @ref{}s to match
2825 new chapter names (above).
2827 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2829 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2831 2006-06-06 Graham Percival <gpermus@gmail.com>
2833 * Documentation/user/advanced-notation.itely: add example
2834 for segno/coda on barline.
2836 * tex/texinfo.tex: merge from upstream.
2838 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2840 * scripts/lilypond-book.py (process_snippets): Argument fix.
2843 * buildscripts/builder.py:
2846 * Documentation/user/SConscript: More SCons fixes.
2848 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2850 * lily/font-config.cc (init_fontconfig): Only initialize if
2851 global cache_file is found.
2853 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2855 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2858 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2860 * VERSION (PACKAGE_NAME): release 2.9.8
2862 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2863 function. Delay ledger modifying ledgered grobs to
2864 stop_translation_timestep(), to ensure that we're ledgering
2865 according to the new spanner.
2866 (acknowledge_staff_symbol): don't check for non-NULL
2867 staff_sym->get_bound()
2869 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2872 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2875 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2876 directly from srcdir/stepmake/aclocal.m4
2878 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2881 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2883 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2885 * lily/simple-spacer.cc (get_line_configuration): add
2886 keep-inside-line rods
2887 (struct Column_desc): add constructor
2888 (struct Rod_desc): add constructor
2889 (get_line_forces): check for forced page breaks here too
2891 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2892 support/elements cycles between InstrumentNames and AxisGroups
2894 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2896 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2898 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2899 make-txt-files target.
2901 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2902 make-txt-files target.
2904 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2906 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2909 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2911 * Documentation/user/instrument-notation.itely,
2912 input/regression/breathing-sign-ancient.ly,
2913 input/test/divisiones.ly: Removed redundant property settings for
2916 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2917 fix lyrics alignment problems. They are implemented now as scheme
2918 functions that add the appropriate unicode char to the first lyric
2919 event rather than adding a separate lyric event. Minor edit of
2922 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2924 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2925 pollute src dir with built .txt files, but install directly from
2926 Documentation/topdocs/out/
2928 * buildscripts/output-distance.py
2929 (ComparisonData.create_html_result_page): put version/directories
2932 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2935 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2936 Patch by Karl Hammar
2938 * buildscripts/readlink.py: add file.
2939 Patch by Karl Hammar
2941 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2943 * lily/tuplet-number.cc (print): prevent stencil from being
2946 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2948 * scm/stencil.scm (write-system-signature): explicitly
2949 -well, superfluously- close output port.
2951 * buildscripts/output-distance.py (main): oops. Add extra argument.
2953 2006-06-05 Graham Percival <gpermus@gmail.com>
2955 * Documentation/user/music-glossary.tely: clarified example
2956 from Francisco Vila, thanks!
2958 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2960 * input/regression/spacing-section.ly: new file.
2962 * lily/input.cc (programming_error): new function.
2964 * lily/spacing-engraver.cc (try_music): new function. Accept
2965 spacing-section-event
2967 * lily/spacing-spanner.cc (set_springs): take slices of all
2968 columns for spacing.
2970 * lily/include/paper-column.hh (class Paper_column): add
2971 Paper_column::compare.
2973 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2975 * scm/define-music-types.scm (music-descriptions): add
2978 * lily/music-iterator.cc (report_event): use programming_error for
2979 sending non-event error.
2981 * lily/input.cc (programming_error): new function
2983 * buildscripts/output-distance.py (main): use compare-XXX for
2985 (main): --threshold option, default at 0.30
2987 * output-distance.py (main): add --threshold option.
2989 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2991 * scm/paper-system.scm (paper-system-annotate): fix problem when
2992 annotating an empty system
2994 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2996 * GNUmakefile.in: reinstate old web tar/copying.
2998 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3000 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3001 nothing changes. (Erik S)
3003 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3006 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3008 * scm/define-markup-commands.scm (whiteout): do not force
3009 foreground color of argument markup to black.
3011 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3012 the left of the arrow, instead of below the arrow name, so that,
3013 when two little arrows are vertically stacked, their dimensions
3014 and name should not overlap. Add a color key parameter.
3016 * scm/paper-system.scm (paper-system-annotate): Annotate
3017 next-space+next-padding instead of next-space. Annotate space
3018 between next-padding and next-space+padding, respectively, and
3019 following system extent and refpoint-Y-extent. Use colors.
3021 * scm/page.scm (annotate-page): translate annotations slightly to
3024 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3026 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3027 fix for x-staff slurs. Thanks Joe!
3029 * buildscripts/output-distance.py
3030 (SystemLink.output_expression_change_count): keep track of changed
3031 details, and dump in details html page.
3033 * input/regression/figured-bass-staff.ly: add note about setting
3034 properties in Staff context.
3036 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3037 add slurs and ties to support too.
3039 * buildscripts/output-distance.py (main): set dest_dir
3040 argument. Add --max-count option.
3042 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3044 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3045 shortcuts for special unicode chars that are useful in chant
3046 notation. Revised exisiting and added new comments.
3048 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3050 * make/mutopia-rules.make: remove duplicate recipe.
3052 2006-06-02 Werner Lemberg <wl@gnu.org>
3054 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3055 Add support for U+0132 (IJ) and U+0133 (ij).
3057 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3059 * buildscripts/output-distance.py (FileLink): new class. collect
3060 info systems from one .ly file.
3061 (FileLink.link_files_for_html): further tweaks.
3063 2006-06-02 Graham Percival <gpermus@gmail.com>
3065 * tex/texinfo.tex: partial fix for @funindex.
3067 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3070 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3072 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3074 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3075 @example too. Backportme.
3077 2006-06-02 Graham Percival <gpermus@gmail.com>
3079 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3080 from Werner Lemberg.
3082 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3084 * Documentation/user/music-glossary.tely: additional spanish
3085 updates and a lyrics fix in an example.
3087 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3089 * scm/define-grob-properties.scm: Previous patch contained
3090 spurious line from another patch not yet committed. Fixed.
3092 * scm/define-grob-properties.scm: Add missing doc strings for
3095 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3097 * buildscripts/output-distance.py
3098 (ComparisonData.write_text_result_page): separate the scores, sort
3101 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3104 * buildscripts/output-distance.py (me_path): use argv[0] for
3106 (ComparisonData.img_cell): use colored borders.
3108 * scm/stencil.scm (write-system-signature): escape newlines too.
3109 (write-system-signature): use (1,-1) interval for empty interval
3111 2006-01-01 Graham Percival <gpermus@gmail.com>
3113 * Documentation/user/music-glossary.tely: Spanish updates
3114 from Francisco Vila.
3116 * Documentation/user/lilypond-book.itely: addition from
3119 * Documentation/user/ various: edits, small additions
3122 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3124 * GNUmakefile.in (tree-lib-prefix-current):
3125 (tree-share-prefix-current): Use version number in tree, add
3128 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3130 * GNUmakefile.in: write VERSION, again.
3132 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3133 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3135 * stepmake/aclocal.m4: robuster version detection.
3137 * buildscripts/output-distance.py
3138 (ComparisonData.create_html_result_page): copy only if file
3139 exists, fixup src paths.
3141 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3143 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3145 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3146 Another datarootdir reto.
3148 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3149 available. This should be moved to postinstall-lilypond-doc.
3151 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3153 * GNUmakefile.in: simplify local-WWW-post.
3154 remove -type l from find.
3156 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3157 fixes. Don't follow symlinks.
3158 (ComparisonData.create_html_result_page): remove previous results.
3159 insert ../python in path.
3161 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3163 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3165 * config.make.in (datadir): Add datarootdir to silence autoconf.
3167 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3169 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3171 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3173 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3174 slash beams too wide.
3176 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3178 * VERSION: release 2.9.7
3180 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3182 * lily/relocate.cc (read_relocation_dir): Do not blindly
3185 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3187 * lily/parser.yy: replace THIS by PARSER
3189 * Documentation/index.html.in: add link to test-results.html page.
3191 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3193 * scm/translation-functions.scm (format-bass-figure): translate
3194 digits over 10 to the left
3196 * scm/define-markup-commands.scm (translate-scaled): new markup.
3198 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3201 * ly/engraver-init.ly: add Figured_bass_engraver
3203 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3205 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3207 * lily/score-engraver.cc (announce_grob): only note START announces.
3209 * lily/include/engraver-group.hh (Translator_group):
3210 acknowledge_hash_table_ is now drul.
3212 * lily/engraver.cc (announce_end_grob): new method.
3214 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3216 * lily/translator-dispatch-list.cc (create): take start_end argument.
3218 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3219 acknowledge_static_array_ to drul
3221 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3223 * scm/define-grob-interfaces.scm
3224 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3226 * scm/define-grobs.scm (all-grob-descriptions): add
3227 BassFigureAlignmentPositioning
3229 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3230 number stays up to date. Backportme.
3232 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3234 * Documentation/user/basic-notation.itely (Bar lines): Document
3237 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3239 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3241 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3242 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3245 * Resurrect `scons lily' build.
3247 * SConstruct (symlink_tree): Bugfix: link
3248 music-drawing-routines.ps to file iso directory.
3250 * lily/SConscript: Remove kpath-guile from LIBS.
3252 * SConstruct (libdir_package_version): Typo.
3253 (configure): Comment-out fontforge for lack of fontforge.pc .
3254 Also add libdir* to environment.
3256 2006-05-30 Graham Percival <gpermus@gmail.com>
3258 * Documentation/user/ various: minor additions from mailist and
3261 2006-05-30 Paco <fravd@ya.com>
3263 * Documentation/user/music-glossary.tely: numerous corrections and
3264 some new translations.
3266 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3270 * buildscripts/output-distance.py
3271 (ComparisonData.create_html_result_page): new routine: summarise
3272 results in HTML page with images.
3273 (ComparisonData.create_text_result_page): create summary text files too.
3275 * GNUmakefile.in (web-ext): package .signature files too. They
3278 * scm/stencil.scm (write-system-signature): typo.
3280 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3282 * scm/stencil.scm (write-system-signature): better escaping.
3283 only write signature for music systems, not for markup systems.
3285 * scm/framework-ps.scm (output-framework): dump-signatures support
3288 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3290 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3291 for -dno-point-and-click
3293 * lily/grob.cc (get_print_stencil): don't read
3294 point_and_click_global to determine whether to set grob-cause.
3296 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3298 * buildscripts/output-distance.py (main): new function.
3299 (ComparisonData): new class.
3301 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3302 careful with generating new LedgerLineSpanners.
3304 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3306 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3307 context. This fixes double ledger lines in output.
3309 * lily/system.cc (get_paper_system): remove 3 layer limit.
3311 * buildscripts/output-distance.py (SystemLink.distance): new
3312 file. Compare signatures.
3314 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3316 * lily/grob-array.cc (remove_duplicates): rename from
3317 uniq(). Sort before calling uniq() so it actually works.
3319 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3321 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3322 \version from lilypond file snippet.
3323 (Lilypond_file_snippet.ly): oops. typo.
3324 (find_toplevel_snippets): urgh. again.
3326 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3327 prevent duplicated broken items in output.
3329 * scm/framework-eps.scm (output-classic-framework): only dump if
3330 dump-signatures is set.
3332 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3334 * scm/stencil.scm (write-system-signature): new routine: write
3335 python parseable signature of a separate paper system.
3338 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3340 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3344 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3346 * translator-group.cc: send music events to engravers in
3347 non-bottom contexts.
3349 * tuplet-engraver.cc: process tuplet brackets in correct order.
3351 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3353 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3354 arg 2 might point us to a new binary (patch by Karl Hammar)
3356 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3358 * VERSION (PACKAGE_NAME): release 2.9.6
3360 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3362 * Documentation/user/*.itely: 2nd
3363 attempt: replace funindex -> findex globally.
3365 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3367 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3368 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3370 * scm/define-music-display-methods.scm: display methods for
3371 breaks. Fix \applyOutput.
3373 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3375 * Documentation/user/macros.itexi: comment out funindex expansion.
3377 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3380 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3381 Karl Hammar. Backportme.
3383 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3385 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3387 * Documentation/user/programming-interface.itely (Running a
3388 function on all layout objects): idem.
3390 * Documentation/user/introduction.itely (Automated engraving):
3391 update \applyOutput syntax
3393 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3394 remove debugging hook.
3396 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3399 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3401 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3402 TEXI2DVI_FLAGS to texi2dvi invocation.
3404 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3406 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3407 works. More work is done by iterator now, and engraver has been
3408 very much simplified.
3410 * lily/translator-group.cc: try_music is now invoked through a
3413 * lily/*-iterator.cc: Massive cleanups. Junked
3414 try_music_in_children globally. Renamed try_music to report_event,
3415 and made that method descend to a bottom context automatically.
3417 * lily/event-iterator.cc: New file.
3419 * lily/output-property-iterator.cc,
3420 lily/old-lyric-combine-music-iterator.cc: Removed.
3422 * python/convert-rules.py: Modified the syntax for \applyOutput.
3424 2006-05-23 Graham Percival <gpermus@gmail.com>
3426 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3429 * Documentation/user/ various: stuff that might have helped
3430 to fix the pdf creation, plus some minor doc additions.
3432 * Documentation/user/changing-defaults.itely: remove @b from
3433 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3435 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3437 * lily/beaming-pattern.cc (beamify): deal with negative start
3438 moments for beaming patterns.
3440 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3442 * lily/beaming-info.cc (beamify): new function: read beatLength
3443 and beatGrouping from context.
3445 * input/regression/beam-beat-grouping.ly (Module): new file.
3447 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3449 * lily/beam.cc (get_beam_segments): generate events for
3450 max_connect_ case too.
3451 (get_beam_segments): read Stem::max-beam-connect.
3453 * input/regression/beam-single-stem.ly: new file.
3455 * lily/stem.cc (set_beaming): use #f as signaling value for
3458 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3460 * lily/beam.cc (set_beaming): read clip-edges property.
3461 (calc_direction): don't suicide for single stem.
3463 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3464 argument, remove 1<<15 hack. Remove clip_edges()
3466 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3468 2006-05-21 Graham Percival <gpermus@gmail.com>
3470 * Documentation/user/basic-notation.itely: reorg.
3472 * Documentation/user/ various: minor fixes.
3474 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3476 * lily/stencil-expression.cc (register_stencil_head): opps, append
3477 to cdr of static SCM object.
3479 2006-05-19 Graham Percival <gpermus@gmail.com>
3481 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3482 update framework for command index. DOC WRITERS: use @funindex
3483 instead of @cindex @code{}.
3485 * Documentation/user/ various: replace @cindex @code{} => @funindex
3487 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3489 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3490 case positions is set manually.
3492 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3494 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3497 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3499 * Documentation/user/changing-defaults.itely (Contexts explained):
3500 use absolute dimension for @image.
3502 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3503 out image for illustration too.
3504 ($(outdir)/%.png): add more png <-> eps rules.
3506 2006-05-17 Graham Percival <gpermus@gmail.com>
3508 * Documentation/user/ various: remove trailing whitespace, cosmetic
3509 change to reduce changes produced by diff.
3511 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3513 * lily/main.cc (do_chroot_jail): correctness tweak.
3515 * python/lilylib.py (system): import subprocess in system () only.
3517 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3519 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3520 variable. Backportme.
3522 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3524 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3526 2006-05-17 Werner Lemberg <wl@gnu.org>
3528 * lily/lexer.ll (init_signature_has_table): Add
3529 `scm-scm-music-music'.
3531 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3532 (Generic_prefix_music_scm): Add rule for it.
3534 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3535 `quoted-transposition' property.
3537 * ly/music-functions-init.ly (transposedCueDuring): New function.
3539 * scm/define-music-properties.scm (all-music-properties): Updated.
3541 * Documenation/topdocs/NEWS.itely: Document it.
3543 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3545 * python/lilylib.py (system): move import subprocess to system()
3548 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3550 * VERSION (PATCH_LEVEL): release 2.9.5
3552 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3555 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3557 2006-05-16 Graham Percival <gpermus@gmail.com>
3559 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3561 * Documentation/user/ various: minor fixes.
3563 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3565 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3567 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3569 * Documentation/user/advanced-notation.itely (Instrument names):
3570 Modified obsolete instruction on how to move instrument names away
3571 from the staves. Hmm, at second thought the bug probably has been
3572 solved, so the full bug description should probably be removed.
3574 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3576 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3577 currentCommandColumn.
3579 * lily/hairpin.cc (print): also add padding for non-neighbor
3582 * scm/define-context-properties.scm
3583 (all-user-translation-properties): add hairpinToBarline
3585 * input/regression/hairpin-to-barline.ly: new file.
3587 * lily/context.cc (internal_send_stream_event): thinko fix.
3589 * lily/tie.cc (set_default_control_points): robustness fix.
3591 * python/musicxml.py (Part.interpret): don't complain about
3592 incomplete measures.
3594 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3595 new music if last_event_chord() returned None.
3597 * python/musicxml.py (Part.interpret): skip back over chord notes.
3599 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3601 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3602 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3603 lily/slash-repeat-engraver.cc,
3604 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3605 iterator sends PercentEvents
3607 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3608 rework tuplets: send start/stop events to engraver
3610 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3611 dispatchers event-source and events-below to Context
3613 2006-05-15 Graham Percival <gpermus@gmail.com>
3615 * Documentation/user/README.txt: update info for doc writers.
3617 * Documentation/user/programming-interface.itely: integrate
3618 Nicolas' fixes for chapter rewrite.
3620 * Documentation/user/ various: minor fixes.
3622 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3624 * lily/clef-engraver.cc: cleanup.
3626 * Documentation/user/GNUmakefile: dist context-example.eps too.
3628 * lily/key-engraver.cc (create_key): use
3629 explicitKeySignatureVisibility for cancellation too.
3631 * lily/font-config.cc (init_fontconfig): don't close file if
3634 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3636 * Documentation/topdocs/NEWS.tely: niente and rotation news
3638 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3640 * lily/include/stencil.hh
3641 * lily/stencil.cc (rotate): new function. Makes it possible
3642 to rotate a stencil around a given offset.
3644 * lily/grob.cc (get_print_stencil): add rotation support
3646 * lily/stencil-interpret.cc (interpret_stencil_expression):
3647 add rotation support
3649 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3651 * scm/define-grob-properties.scm: add 'rotation property
3653 * scm/define-markup-commands.scm: add rotate markup command
3655 * scm/output-ps.scm: add rotation support in PostScript backend
3657 * scm/output-svg.scm: add rotation support in SVG backend
3659 2006-05-13 Graham Percival <gpermus@gmail.com>
3661 * Documentation/user/music-glossary.itely: French correction.
3663 * Documentation/user/programming-interface.itely: major
3664 new docs, some reorg, some info from Nicolas.
3666 * Documentation/user/ various: small fixes.
3668 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3670 * Documentation/user/programming-interface.itely (Markup
3671 programmer interface): Remove duplicate text.
3673 2006-05-12 Graham Percival <gpermus@gmail.com>
3675 * Documentation/user/context-example.eps: new file.
3677 * Documentation/user/changing-defaults.itely: set up file to
3680 * Documentation/user/programming-interface.itely: changes
3683 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3685 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3687 2006-05-11 Graham Percival <gpermus@gmail.com>
3689 * Documentation/user/programming-interface.itely: first round of
3690 editing and merging emails from Nicolas.
3692 * Documentation/user/scheme-tutorial: minor edit.
3694 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3696 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3698 (Xml_node.message): use it.
3700 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3701 oops. Add duration argument.
3703 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3705 * lily/paper-column-engraver.cc (make_columns):
3706 * scm/define-grobs.scm: Revert my previous change and set the default
3707 in define-grobs.scm instead.
3709 2006-05-09 Graham Percival <gpermus@gmail.com>
3711 * Documentation/user/changing-defaults.itely: general editing,
3712 info about \set and \override.
3714 * Documentation/user/tweaking.itely, advanced-notation.itely:
3715 fixes from Dave Luttinen, thanks!
3717 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3719 * lily/paper-column-engraver.cc (make_columns): By default, a column
3720 needs to be breakable.
3722 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3724 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3726 (musicxml_time_to_lily): idem
3727 (musicxml_key_to_lily): idem
3728 (instrument_drumtype_dict): dict for supported drumtypes.
3729 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3730 moments and pending mm rests
3731 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3732 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3733 (musicxml_voice_to_lily_voice): add mode change.
3734 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3735 speed and less memory usage (factor 5 to 10).
3736 (convert): write -defs.ly and driver file separately so people
3737 can script their own part extraction.
3739 * python/musicxml.py (minidom_demarshal_node): new function:
3740 separate minidom handling.
3741 (lxml_demarshal_node): new function: support lxml.etree too.
3742 (Xml_node.message): new function: verbose error message, with XML
3743 path to offending node.
3744 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3745 (Part_list.generate_id_instrument_dict): new method: collect
3746 instrument names, to be able to set drum_type.
3747 (Part.interpret): handle underfull measures
3748 (Part.interpret): assign instrument names.
3750 * python/musicexp.py (Output_printer.close): new method
3751 (MusicWrapper.print_ly): new class: support other modes,
3753 (BarCheck.print_ly): new class. Support bar checks, with comments
3754 and fancy barchecks.
3755 (NoteEvent.__init__): also set drum_type for drum notes.
3756 (MultiMeasureRest.lisp_expression): dump mm rests.
3758 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3759 line-break-permission if forbidBreak is not set.
3761 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3763 * scm/define-context-properties.scm:
3764 * scm/define-grob-properties.scm:
3765 * scm/define-grobs.scm:
3766 * scm/define-music-display-methods.scm:
3767 * scm/define-music-properties.scm:
3768 * scm/define-music-types.scm:
3769 * scm/music-functions.scm:
3770 * ly/declarations-init.ly:
3771 * lily/include/constrained-breaking.hh:
3773 * lily/spaceable-grob.cc:
3774 * lily/simple-spacer.cc:
3775 * lily/paper-score.cc:
3776 * lily/paper-column.cc:
3777 * lily/paper-column-engraver.cc:
3779 * lily/gourlay-breaking.cc:
3780 * lily/constrained-breaking.cc:
3781 * python/convertrules.py:
3782 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3783 "page-break-penalty" and "line-break-permission".
3784 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3785 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3787 * lily/bar-engraver.cc:
3788 * lily/beam-engraver.cc:
3789 * lily/forbid-break-engraver.cc:
3790 * lily/ligature-engraver.cc:
3791 * lily/paper-column-engraver.cc:
3792 * lily/percent-repeat-engraver.cc:
3793 * lily/score-engraver.cc:
3794 * lily/score-engraver.hh:
3795 * lily/paper-column-engraver.hh:
3796 Inter-engraver communication regarding line breaks is done through context
3797 properties (Score.forbidBreak) instead of function calls.
3799 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3801 * VERSION (PACKAGE_NAME): release 2.9.4
3803 2006-05-08 Graham Percival <gpermus@gmail.com>
3805 * Documentation/user/working.itely: proofreading from Dave
3808 * Doucmentation/user/README.txt: updated with manual style info.
3810 * Documentation/user/ various: trim linewidth to 78 chars.
3812 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3814 * scm/define-grob-properties.scm (all-internal-grob-properties):
3815 remove chord-tremolo property.
3817 * lily/beam.cc (get_beam_segments): don't use stem position as
3818 base for broken ends.
3820 2006-05-06 Graham Percival <gpermus@gmail.com>
3822 * Documentation/user/putting.itely: proofreading from Dave
3825 * Documentation/user/ various: more reorg and clarifications.
3827 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3829 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3831 * ly/music-functions-init.ly: new function featherDurations
3833 * lily/beam.cc: read grow-direction for feathered beaming.
3835 * Documentation/topdocs/NEWS.tely (Top): typo.
3837 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3839 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3842 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3843 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3844 used by music streams.
3846 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3847 lily/stream-event.cc, lily/stream-event-scheme.cc,
3848 lily/listener.cc, lily/scheme-listener.cc,
3849 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3850 lily/include/stream-event.hh, lily/include/listener.hh,
3851 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3852 Created data structures for music streams.
3854 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3856 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3857 construction of a beam.
3860 * flower/include/std-vector.hh (default_compare): use only one comparison.
3862 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3863 (note-by-number): further attachment fixes.
3865 * scm/lily-library.scm (ordered-cons): new function.
3866 (interval-index): new function
3868 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3870 * lily/note-head.cc (get_stem_attachment): new function.
3872 * scm/define-markup-commands.scm (note-by-number): read 'style
3875 * input/regression/markup-note.ly: show note-head style option.
3877 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3880 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3882 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3884 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3886 * lily/include/constrained-breaking.hh: GCC 4 fix.
3888 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3890 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3891 Replace it with functions get_line_forces and get_line_configuration.
3892 (class Simple_spacer): Make data private.
3893 Rewrite compression algorithm to be faster and simpler.
3895 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3896 * lily/gourlay-breaking.cc (solve):
3897 * lily/constrained_breaking.cc (space_line):
3898 Change it to the new simple-spacer code.
3900 * lily/paper-score.cc (get_paper_systems):
3903 Delay breaking the systems until they are requested.
3904 (find_break_indices):
3905 Use vsize for indices.
3907 Move the "Calculating line breaks" message here.
3909 * lily/system.cc (pre_processing):
3910 Move the "Calculating line breaks" message away from here.
3911 (break_into_pieces):
3912 Allow multiple calls to this function in sequence (with touching-but-
3913 not-overlapping breakpoints).
3915 * lily/constrained-breaking.cc:
3916 Replace most of the get_XXXX functions with get_line_details.
3917 Only calculate the force for each line. Calculate configurations only
3918 for the lines we will actually use.
3919 Replace cols_ with lines_.
3921 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3923 * mf/GNUmakefile (depth): remove FC_FIND.
3925 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3927 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3929 * scm/framework-ps.scm (write-preamble): new function.
3930 (write-preamble): load mac fonts via fondu, even if gs-font-load
3933 2006-05-03 Werner Lemberg <wl@gnu.org>
3935 * mf/GNUmakefile (FC_FIND): Fix typo.
3937 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3939 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3941 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3943 * stepmake/aclocal.m4: run python-config for crosscompiling
3946 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3947 -f png for HTML, TEXINFO formats.
3949 * input/tutorial/lbook-html-test.html: new file.
3951 * lily/include/tie-formatting-problem.hh (class
3952 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3953 [column, direction]. This fixes laissez vibrer ties.
3955 * flower/include/tuple.hh (struct Tuple2): new file.
3957 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3958 $(FCMATCH), only if $(NCSB_DIR) not set.
3960 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3962 * config.make.in (DOCUMENTATION): set FCMATCH.
3964 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3966 2006-05-03 Graham Percival <gpermus@gmail.com>
3968 * Documentation/user/ various: final round of reorg.
3970 * Documentation/user/instrument-notation.itely: some more
3971 fixes from Eduardo, thanks!
3973 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3975 * VERSION (PACKAGE_NAME): release 2.9.3
3977 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3979 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3981 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3983 * scm/define-grob-properties.scm (all-user-grob-properties):
3984 Correct typo, thanks to Eduardo.
3986 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3988 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3990 * buildscripts/lilypond-words.py (F): indent fix.
3992 * input/regression/tie-arpeggio-collision.ly: new file.
3994 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3995 function: store outlines per column rank.
3997 * lily/include/tie-configuration.hh (class Tie_configuration): add
3998 column_ranks_ to specification and configuration, to distinguish
3999 between ties for different heads in arpegiated chords.
4001 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4003 * *.py: more 4 space indents.
4005 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4007 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4009 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4011 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4013 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4015 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4017 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4019 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4021 * python/convertrules.py (conv): indent 4 for python files.
4023 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4025 * Documentation/user/changing-defaults.itely (Creating contexts):
4026 Clarify \new semantics.
4028 2006-04-28 Graham Percival <gpermus@gmail.com>
4030 * Documentation/user/ various: major new sections in the
4031 Learning manual, slight reorg elsewhere.
4033 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4035 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4037 * scm/framework-ps.scm (output-framework): remove PageMedia
4039 2006-04-27 Graham Percival <gpermus@gmail.com>
4041 * Documentation/user/ tweaks.itely, working.itely: new
4042 files, being more advanced "learning manual" chapters.
4044 * Documentation/user/ tutorial, putting, lilypond: reorg.
4046 2006-04-26 Graham Percival <gpermus@gmail.com>
4048 * input/regression/lyric-combine-polyphonic.ly: fixed test
4049 (no more "can't find context `one'" error).
4051 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4053 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4055 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4057 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4059 * lily/relocate.cc (read_relocation_dir): new function.
4061 2006-04-26 Graham Percival <gpermus@gmail.com>
4063 * Documentation/user/instrument-notation.itely: a few more fixes
4064 from Eduardo, thanks!
4066 * Documentation/user/README.txt: new file; contains info on
4067 style that used to be in lilypond.tely.
4069 * Documentation/user/ various: first round of doc reorg.
4071 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4072 graphic; this probably causes problems on some pdf
4073 viewers, notably Adobe Acrobat.
4075 2006-04-24 Graham Percival <gpermus@gmail.com>
4077 * Documentation/user/instrument-notation.itely: many alterations
4078 to Vocal music, from Eduardo Viera.
4080 2006-04-23 Graham Percival <gpermus@gmail.com>
4082 * Documentation/user/instrument-notation.itely: fix \new
4083 instead of \context problem.
4085 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4087 * lily/relocate.cc (expand_environment_variables): new function.
4089 (read_relocation_file): id.
4091 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4093 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4095 * ly/engraver-init.ly: remove old comments from TabVoice
4097 2006-04-20 Graham Percival <gpermus@gmail.com>
4099 * Documentation/user/instrument-notation.itely: added Erlend's
4100 latest doc patch, thanks!
4102 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4104 * lily/include/slur.hh:
4106 * lily/phrasing-slur-engraver.cc:
4107 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4108 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4109 Slur_engraver:: and putting it in
4110 Slur::auxiliary_acknowledge_extra_object ().
4112 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4114 * lily/note-collision.cc: fix a comment
4116 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4118 * stepmake/bin/add-html-footer.py: fix footer position in
4119 generated html files: before </body> and </html> tags.
4121 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4123 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4124 Earlier successive `make' commands finally compiled ok.
4126 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4128 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4130 * lily/include/stem-tremolo.hh:
4131 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4135 * lily/include/lookup.hh: add rotated_box ()
4137 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4139 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4140 been generated. Fixes "can't get `--help'" bug after make clean.
4142 * THANKS: alphabetize contributors.
4144 2006-04-17 Graham Percival <gpermus@gmail.com>
4146 * Documentation/user/instrument-notation.itely: added Erlend's
4147 tabs and banjo doc patch. Thanks!
4149 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4151 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4153 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4155 * scm/output-lib.scm: add some more predefined string tunings.
4157 * Documentation/user/instrument-notation.itely: and doc them.
4159 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4161 * ly/engraver.ly: Remove obsolete comments.
4163 * ly/gregorian-init.ly: Define default layout block.
4165 * input/puer-fragment.ly: Updated and extended.
4167 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4169 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4170 pdf conversion behaviour.
4172 * flower/file-name.cc (dir_name)
4173 (get_working_directory): Move from relocate.cc.
4175 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4177 * lily/relocate.cc: Encapsulate sys/stat.h in
4180 2006-04-14 Graham Percival <gpermus@gmail.com>
4182 * Documentation/user/ various: small updates from Cameron
4183 and Juergen, thanks!
4185 * Documentation/user/ various: small updates of my own.
4187 * THANKS: 2.7 -> 2.8.
4189 2006-04-11 Graham Percival <gpermus@gmail.com>
4191 * scm/define-context-properties.scm: typo.
4193 * Documentation/user/ : many more small updates.
4195 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4197 * scm/define-music-types.scm: disposed "docme".
4199 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4201 * lily/hairpin.cc: make niente circles a bit smaller.
4203 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4205 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4206 get-pfa and get-*-fonts targets.
4208 2006-04-10 Graham Percival <gpermus@gmail.com>
4210 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4211 music-glossary, programming-interface: more minor fixes
4214 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4216 * scm/define-context-properties.scm: another old \property update.
4217 This time tested for compiling!
4219 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4221 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4223 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4225 * scm/define-context-properties.scm (all-user-translation-properties):
4226 * Documentation/user/global.itely (Page formatting): Compile fix.
4228 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4230 * Documentation/user/advanced-notation.itely (Polymetric
4231 notation): Update the example to use the "+" symbol and add link
4232 to input/test/compound-time.ly.
4234 2006-04-08 Graham Percival <gpermus@gmail.com>
4236 * scm/define-grob-properties.scm: clarify docs for #'direction.
4238 * scm/define-context-properties.scm: update old \property override.
4240 * Documentation/user/ advanced-notation, global, lilypond-book:
4241 more minor doc updates.
4243 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4245 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4247 * scm/backend-library.scm (search-gs): oops.
4249 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4251 * scripts/lilypond-book.py (output): use base, not filename for href.
4253 * scm/backend-library.scm: only look for gs.
4255 * scripts/lilypond-book.py (output): fix printfilename.
4257 * lily/parser.yy (music_function_musicless_prefix): fold together
4258 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4260 * lily/slur.cc (print): only set font-size if not set yet.
4262 * lily/slur-configuration.cc (add_score): improved layout of debug
4265 2006-04-05 David Feuer <David.Feuer@gmail.com>
4267 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4268 (draw_circle): Hopefully fixed regression.
4269 Improved documentation for several procedures.
4271 2006-03-04 Werner Lemberg <wl@gnu.org>
4273 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4275 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4277 * scripts/musicxml2ly.py (bindir): add dynamic
4280 2006-04-04 Graham Percival <gpermus@gmail.com>
4282 * Documentation/user/ basic-notation, advanced-notation, putting,
4283 instrument-notation, invoking, lilypond, THANKS: another ream of small
4284 fixes from the Doc Helpers.
4286 2006-04-03 David Feuer <David.Feuer@gmail.com>
4288 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4290 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4292 * Cleaned up interfaces between PostScript and Scheme, and moved
4293 computations from PostScript to Scheme:
4295 * music-drawing-routines.ps
4296 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4297 with stroke_and_fill throughout.
4298 (euclidean_length, print_letter, draw_box): Deleted unused
4299 procedures. If someone needs draw_box, implement it using
4300 draw_round_box; don't duplicate code.
4301 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4302 Refactored/cleaned up interfaces.
4305 * output-ps.scm: reordered arguments to PostScript functions to
4306 match new interfaces
4307 (glyph-string): Rewrote glyph-string.
4308 (grob-cause): Replaced string-append with format.
4309 (repeat-slash): Rewrote to do computation here.
4310 (round-filled-box): Rewrote to do computation here.
4312 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4314 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4316 * stepmake/stepmake/toplevel- targets.make: print help info about
4319 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4321 * input/regression/hairpin-circled.ly: new file
4323 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4325 * lily/hairpin.cc (print): add support for circled tip
4327 * scm/define-grob-properties.scm: add circled-tip parameter
4329 * scm/define-grobs.scm: init circled-tip to false
4331 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4333 * scm/music-functions.scm (quote-substitute): set
4336 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4338 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4341 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4343 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4345 2006-03-31 David Feuer <david.feuer@gmail.com>
4347 * scm/framework-ps.scm:
4349 * scm/output-ps.scm: glyph-string now produces smaller, more
4350 readable, and probably faster PostScript. Several findfont
4351 scalefont setfont instances changed to selectfont
4352 Hacked-up string-appends changed to formats.
4354 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4356 2006-03-30 Graham Percival <gpermus@gmail.com>
4358 * scm/lily-library.scm: make "no version" warning message more polite.
4360 * lily/music.cc: add double quotes to failed octave check.
4362 * Documentation/user/ advanced-notation, changing-defaults,
4363 instrument-notation, invoking, music-glossary: whole bunch of minor
4366 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4368 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4369 $(buildscriptdir) iso. depth.
4371 * VERSION (PACKAGE_NAME): release 2.9.1
4373 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4375 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4377 * VERSION (PATCH_LEVEL): bump version number.
4379 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4382 * lily/pango-font.cc (pango_item_string_stencil): use
4385 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4386 $(outdir)/emmentaler-%.svg): remove canary.
4388 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4389 glyphnames if we have a ttf font.
4391 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4393 * Documentation/user/advanced-notation.itely (Font selection):
4394 Corrected reference to the font-family-override.ly example.
4396 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4398 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4399 stem-tremolo object in the stem (or else the stem might not be
4402 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4404 * lily/ttf.cc (print_trailer): only print existing glyphs.
4406 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4408 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4409 position the tremolo based on the position of the notehead.
4411 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4412 notes and update the texidoc line with the new positioning rules.
4414 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4416 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4418 * scripts/lilypond-book.py (Module): set default for linewidth if
4421 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4423 * VERSION (PACKAGE_NAME): release 2.9.0.
4425 * input/regression/stem-tremolo-position.ly: new file.
4427 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4429 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4431 * lily/stem-tremolo.cc (print): position
4432 the tremolo depending only on the end of the stem
4433 and not on the notehead
4434 (raw_stencil): center, on the middle staff line, the
4435 flag that is closest to the end of the stem (previously
4437 (calc_width): add this callback to shorten a tremolo when
4438 it is beamed or it is stemup with a flag
4439 (style): add this callback to make a tremolo rectangular when
4440 it is beamed or it is stemup with a flag
4441 (rotated_box): this is like Lookup::beam but makes a rotated
4442 rectangle instead of a parallelogram
4444 * lily/stem.cc (calc_stem_info): make sure the stem
4445 is long enough to fit the tremolo
4446 (calc-length): reduce the length of tremolo stems since the
4447 tremolo code is now capable of better positioning
4449 * scm/define-grobs.scm: make calc_width the default beam-width
4450 callback for stem-tremolo and add the style callback
4452 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4454 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4457 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4459 * lily/ttf.cc (make_index_to_charcode_map): restore old
4462 2006-03-28 Werner Lemberg <wl@gnu.org>
4464 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4466 2006-03-28 Graham Percival <gpermus@gmail.com>
4468 * THANKS: update for 2.9, add section for Documentation helpers.
4470 * Documentation/topdocs/NEWS.tely: compile fix.
4472 * Documentation/user/ basic-notation, global, advanced-notation,
4473 examples.itely: minor fixes from mailist.
4475 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4477 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4480 * lily/ttf.cc (print_trailer): use it.
4482 * lily/pango-font.cc (get_unicode_name): new function.
4484 * lily/ttf.cc (make_index_to_charcode_map): move function from
4486 (print_trailer): substitute uniXXXX name if applicable.
4488 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4489 (pango_item_string_stencil): use it to generate uniXXXX names.
4491 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4492 note heads, for uniform widths in shape note output.
4493 (overdone_heads): hmm. remove them again.
4495 * scripts/lilypond-book.py (output): add links to filenames.
4497 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4499 * lily/note-collision.cc (get_clash_groups): only consider when
4500 Note_column::dir <> CENTER.
4502 * scripts/lilypond-book.py (get_option_parser): init output_name
4505 2006-03-24 Graham Percival <gpermus@gmail.com>
4507 * Documentation/topdocs/NEWS.tely: add @end itemize
4509 * Documentation/user/ global, advanced-notation: minor
4512 2006-03-23 Graham Percival <gpermus@gmail.com>
4514 * Documentation/user/ lilypond.tely, music-glossary,
4515 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4517 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4519 * mf/GNUmakefile: don't install .enc files.
4521 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4523 * VERSION (PATCH_LEVEL): bump to 2.9.0
4525 2006-03-22 Graham Percival <gpermus@gmail.com>
4527 * Documentation/user/advanced-notation.itely: minor fixes
4530 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4532 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4534 * branch lilypond_2_8
4536 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4538 * scripts/lilypond-book.py (samefile): new function, for windoze
4541 2006-03-21 Graham Percival <gpermus@gmail.com>
4543 * ly/engraver-init.ly: add info about StaffGroup.
4545 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4547 * input/regression/stem-direction-context.ly: idem.
4549 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4553 * input/regression/page-layout-twopass.ly: comment out \markup so
4556 * lily/instrument-name-engraver.cc (finalize): add to instrument
4557 name global System. This also fixes chopped instrument names, but
4558 doesn't crash when there are slurs/beams.
4560 * lily/slur-configuration.cc (add_score): disallow negative slur
4563 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4565 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4567 * lily/instrument-name-engraver.cc (process_music): kludge: add
4568 InstrumentName spanner to axis group of left bound. Fixes chopped
4569 off instrument names in EPS images.
4571 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4573 * scripts/abc2ly.py (option_parser): update to 2.7.40
4575 2006-03-20 Graham Percival <gpermus@gmail.com>
4577 * THANKS: move small doc contributors to SUGGESTIONS.
4579 * Documentation/user/ basic-notation, advanced-notation,
4580 global: small changes from mailist.
4582 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4584 * Documentation/user/advanced-notation.itely (Text marks): update
4585 for new rehearsalMarkAlignSymbol convention.
4587 * VERSION (PATCH_LEVEL): bump version.
4589 * input/test/instrument-name-align.ly: new file.
4591 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4593 * input/test/instrument-name-align.ly: new file. Document how to
4594 align instrument names.
4596 * lily/mark-engraver.cc: remove properties.
4598 * scm/define-context-properties.scm
4599 (all-user-translation-properties): remove align symbol properties
4600 for barnumber/reh. mark.
4602 * lily/break-align-interface.cc (self_align_callback): new
4603 interface, new function. Look at complete alignment. This handles
4604 tunable break alignments in case break-align-symbols are missing.
4606 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4608 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4610 * python/convertrules.py (conv): mark/bar number alignment rule.
4612 * lily/break-align-interface.cc (calc_positioning_done): also
4613 store offset from last visible break-alignment to its
4614 neighbor. This makes alignment on non-visible objects more reliable.
4616 * po/lilypond.pot (Module): ran po-replace.
4618 * input/regression/tie-single-manual.ly (Module): new file.
4620 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4621 look at has_manual_position_.
4622 (from_ties): set has_manual_position_ if tie has staff-position set.
4624 * lily/tuplet-bracket.cc (calc_positions): idem.
4626 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4629 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4631 * scm/define-markup-commands.scm (smallCaps): new markup command
4632 for turning a text to small caps using smaller font size and upper
4635 2006-03-17 Graham Percival <gpermus@gmail.com>
4637 * Documentation/user/ examples, instrument-notation,
4638 advnaced-notation: minor fixes from mailist.
4640 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4642 * Documentation/user/tutorial.itely (First steps): change example
4645 2006-03-17 Graham Percival <gpermus@gmail.com>
4647 * Documentation/user/ examples, advanced: minor changes from mailist.
4649 * THANKS: add Geoff Horton, for documentation stuff.
4651 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4653 * python/lilylib.py (system): revert have_select kludge.
4655 * Documentation/user/tutorial.itely (Commenting input files):
4656 update version numbers in doc.
4658 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4659 bound-padding to multi-measure-interface
4661 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4663 * input/test/engraver-example.ily: update version number.
4665 * VERSION (PACKAGE_NAME): release 2.7.39
4667 * lily/note-spacing.cc (get_spacing): heighten threshold where
4668 accidentals/arpeggios influence previous spacing fully.
4670 * lily/rest.cc (y_offset_callback): only use direction if
4671 staff-position wasn't set before.
4673 * lily/bar-number-engraver.cc: add support for
4674 barNumberAlignSymbol.
4675 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4677 * lily/pointer-group-interface.cc (set_ordered): new function.
4678 (add_unordered_grob): new function.
4680 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4681 to ordered, unless the opposite has been proved. This fixes
4682 random reordering of large object groups across linebreaks,
4685 * lily/main.cc (do_chroot_jail): printf format fix.
4687 * lily/tie-formatting-problem.cc (generate_configuration):
4688 multiply y-shift for dot with direction.
4690 * scm/define-markup-commands.scm (note-by-number): put (magstep
4691 size) in y-attach too.
4693 * Documentation/topdocs/NEWS.tely (Top): show override.
4695 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4696 direction for stems.
4698 2006-03-15 Graham Percival <gpermus@gmail.com>
4700 * Documentation/user/ changing-defaults, global: minor
4703 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4705 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4707 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4708 breakable items after uniformly stretched notes.
4710 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4711 outline with outer edge of note heads. This prevents infinity
4712 problems with tied whole notes.
4714 * scripts/lilypond-book.py (do_file): use os.popen
4716 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4718 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4720 * Documentation/user/invoking.itely: Add ragged-right to bug report
4723 2006-03-14 Graham Percival <gpermus@gmail.com>
4725 * Documentation/user/global.itely: small fix from mailist.
4727 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4729 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4730 file descriptor returned by tempfile.mkstemp() when writing
4731 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4734 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4736 * po/fi.po: newline bugfix.
4738 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4740 * scm/paper.scm (paper-alist): Rounding fixes.
4742 2006-03-13 Graham Percival <gpermus@gmail.com>
4744 * Documentation/user/ changing-defaults, instrument-notation,
4745 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4747 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4751 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4753 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4756 * python/lilylib.py (print_environment): move ps_page_count to
4759 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4761 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4763 * scm/framework-ps.scm (embed-document): new function. Use to
4766 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4768 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4770 * Documentation/user/instrument-notation.itely (Setting simple
4771 songs): Added \book{...} around the full example, so the separate
4772 markups are included in the printed example.
4774 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4776 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4779 * python/lilylib.py (system): rewrite system() using
4780 subprocess. Remove >& redirection trickery.
4782 2006-03-11 Graham Percival <gpermus@gmail.com>
4784 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4785 notation-appendices.itely: minor fixes from mailist.
4787 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4789 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4790 unsplit man also needs images.
4792 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4794 * VERSION (PACKAGE_NAME): 2.7.38 released.
4796 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4798 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4801 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4803 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4804 respects the Score.skipTypesetting property.
4806 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4808 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4809 Prolog. No %%EOF after CFF file.
4811 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4813 * lily/constrained-breaking.cc (get_max_systems): used to return a
4815 (combine_demerits): use pointers to reduce copying data
4816 (calc_subproblem): idem
4817 (get_page_penalty): add page turn penalties
4819 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4821 * Documentation/user/invoking.itely (Invoking lilypond): better
4822 explanation of -e usage.
4824 * lily/main.cc (main_with_guile): don't append to
4825 init_scheme_code_string
4827 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4829 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4831 * scripts/convert-ly.py (do_options): don't print help for
4834 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4835 @code and @example. Update from texinfo.tex from CVS.
4837 2006-03-08 Graham Percival <gpermus@gmail.com>
4839 * Documentation/user/scheme-tutorial.itely: clarifies distances
4840 measured in staff-spaces.
4842 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4844 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4845 consider[k] is true.
4847 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4849 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4850 consider columns that have originals. Unifies spacing for mm
4851 rests around line breaks.
4853 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4854 (set_text_rods): idem.
4855 (calculate_spacing_rods): new function: share code between
4856 set_text_rods and set_spacing_rods.
4857 (set_text_rods): take extents of bounds into account.
4859 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4861 * Documentation/user/basic-notation.itely (Writing music in
4862 parallel): don't use relative.
4864 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4866 * ly/music-functions-init.ly (Module): add shiftDurations
4868 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4870 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4872 * ly/engraver-init.ly: init vocalName to nil.
4874 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4876 * scm/music-functions.scm (music->make-music): bugfix,
4877 KeyChangeEvents are now handled correctly.
4879 * scripts/lilypond-book.py: Add --debug option.
4881 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4883 * python/lilylib.py: add tempfile.
4885 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4887 * VERSION (PACKAGE_NAME): release 2.7.37
4889 * python/lilylib.py (ps_page_count): remove make_ps_images().
4890 (ps_page_count): remove mkdir_p
4891 (system): remove cleanup_temp.
4892 (exit): remove lilypond_version_(check)
4893 (error_log): remove pseudo_filter_p
4898 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4901 * lily/accidental-engraver.cc (make_standard_accidental): only add
4902 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4904 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4905 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4906 Make incompatibilities.
4908 * scm/output-ps.scm (grob-cause): replace backslashes by /
4909 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4911 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4913 * cygwin/GNUmakefile: Install fixes.
4915 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4917 * lily/note-head.cc (head::get_balltype): Compile fix.
4919 * flower/file-name.cc (dos_to_posix): Flower string fix.
4921 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4923 * python/lilylib.py: pychecker cleanups.
4925 * scripts/lilypond-book.py
4926 (Lilypond_snippet.output_print_filename): pychecker cleanups
4928 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4930 * python/lilylib.py (underscore): remove identify() , warranty()
4932 * ps/music-drawing-routines.ps: change Border routine for GSView
4935 * lily/stem.cc (height): use quantize-positions. This triggers
4936 set_stem_lengths, so scripts on beamed stems are handled correctly.
4938 * lily/side-position-interface.cc (aligned_side): check if edges
4939 of script are inside staff. Fixes accent of edge of the staff.
4941 * input/regression/staccato-pos.ly: more examples.
4943 * stepmake/aclocal.m4 (depth): fix bashism.
4945 * lily/lyric-combine-music-iterator.cc: move from
4946 new-lyric-combine-iterator.cc
4947 (process): add pending_grace_lyric_ member to delay lyrics on
4950 * lily/system-start-text.cc (print): suicide if we don't have any
4951 elements. Fixes hara kiri'd instrument names.
4953 * scripts/mup2ly.py (Module): remove.
4955 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4957 * Documentation/user/global.itely (A single music expression):
4958 close @lilypond properly
4960 * lily/volta-bracket.cc (modify_edge_height): change from
4961 after_line_breaking_callback. Suicide last bracket if appropriate.
4963 * python/lilylib.py: strip getopt support
4965 * scripts/etf2ly.py (do_options): use optparse
4967 * scripts/midi2ly.py: optparse, strip lilylib copy.
4969 * scripts/abc2ly.py (voices): use optparse.
4971 * stepmake/stepmake/generic-vars.make: new function absdir.
4973 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4975 * scripts/lilypond-book.py (find_file): use global_options for
4978 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4981 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4983 * python/lilylib.py (get_global_option): ughness for extracting
4984 global options from lilylib.
4985 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4987 * scripts/lilypond-book.py (get_option_parser): use optparse for
4988 option handling. Put options in global_options variable.
4990 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4992 * Documentation/index.html.in: clarify.
4994 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4996 * scm/layout-page-layout.scm (write-page-breaks): add a
4997 music-system-heights property to the page layout output.
4999 * scm/page.scm (make-page-stencil): take footer into account when
5000 computing the 'space-left page property
5001 (annotate-space-left): take footer into account when annonating
5004 2006-02-28 Graham Percival <gpermus@gmail.com>
5006 * Documentation/user/ advanced-notation, global: more (final)
5007 docs for music expressions, removed special fermatas.
5009 2006-02-27 Graham Percival <gpermus@gmail.com>
5011 * Documentation/user/ basic-notation, global: minor changes
5014 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5016 * scm/framework-ps.scm:
5017 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5018 layer for inf? and nan? from framework-ps to lily-library.
5020 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5022 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5023 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5025 * buildscripts/substitute-encoding.py (Module): remove file.
5027 * mf/GNUmakefile: more PFA strippage.
5029 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5031 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5034 * scm/framework-ps.scm: remove font name munging.
5036 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5038 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5040 * scm/markup.scm (define-markup-command): change
5041 def-markup-command to define-markup-command
5043 * scm/music-functions.scm (define-music-function): change
5044 def-music-function to define-music-function.
5046 * python/convertrules.py (conv): rules for def-music-function
5047 and def-markup-commands
5049 * Documentation/user/programming-interface.itely,
5050 input/no-notation/display-lily-tests.ly,
5051 input/regression/lily-in-scheme.ly,
5052 input/regression/markup-user.ly,
5053 input/regression/music-function.ly, input/regression/tie-chord.ly,
5054 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5055 ly/gregorian-init.ly: use new macro names (define-music-function,
5056 define-markup-command).
5058 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5060 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5061 (output): add comments to lp-book latex output.
5063 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5066 2006-02-23 Graham Percival <gpermus@gmail.com>
5068 * Documentation/user/ tutorial, global: minor changes.
5070 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5072 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5073 blocks (for make 3.80)
5075 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5076 \notemode so that user should not have to explicitely type it.
5078 * scm/define-music-display-methods.scm: various
5079 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5082 * input/no-notation/display-lily-tests.ly: new tests for
5083 \applyOutput and \applyContext
5085 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5087 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5088 changed it slightly so that the number of systems returned by
5089 solve () will be the same as the last value passed to resize
5090 (). I've also added more documentation, removed casts, fixed style
5091 problems and put in some recovery if constraints aren't satisfied."
5093 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5095 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5096 for emacs < 22 compatibility.
5097 (count-rexp): Use it.
5098 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5099 substring juggling (Milan Zamazal).
5101 2006-02-23 Graham Percival <gpermus@gmail.com>
5103 * Documentation/user/ basic-notation, advanced-notation,
5104 global.itely, invoking.itely, tutorial,itely:
5105 minor fixes from mailist.
5107 * scm/define-markup-commands.scm: improve docs of \filled-box.
5109 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5111 * Documentation/index.html.in: changes concern the previous release.
5113 * input/regression/+.ly: cultivate typographical terminology.
5115 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5117 * scm/define-grob-interfaces.scm (parentheses-interface): add
5118 padding to parentheses-interface.
5120 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5121 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5123 * VERSION (PATCH_LEVEL): release 2.7.36
5125 * lily/slur.cc: add avoid-slur (ugh.)
5127 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5128 intersection gets smaller. This fixes slurs over extreme points.
5130 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5131 stems with neutral-direction set.
5133 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5135 * lily/open-type-font.cc (load_table): format error.
5137 * lily/change-iterator.cc (process): format fix.
5139 * flower/include/international.hh (_f): idem.
5141 * flower/include/std-string.hh: add format printf attribute.
5143 * scm/define-grobs.scm (all-grob-descriptions): height of all
5144 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5146 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5149 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5151 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5153 * input/regression/: upgraded syntax for some files.
5155 * THANKS: Add bughunters.
5157 2006-02-22 Graham Percival <gpermus@gmail.com>
5159 * Documentation/user/ invoking.itely, advanced-notation.itely,
5160 global.itely: long-awaited "let's make chapter 10 not suck"
5161 update. Rearrange chapter 10; now called "global issues",
5162 addresses file structure, etc. Some info from other files
5163 moved into global.itely.
5165 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5167 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5168 catch trill-span-event notes.
5170 * Documentation/user/examples.itely (Ancient notation templates): typo.
5173 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5175 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5177 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5179 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5181 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5182 froum Laissez_vibrer_engraver.
5184 * ly/declarations-init.ly (repeatTie): add \repeatTie
5186 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5188 * scm/define-grob-properties.scm (all-user-grob-properties): add
5189 head-direction property.
5191 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5192 from_lv_ties. Take head direction argument.
5194 * lily/semi-tie-column.cc: rename from
5195 laissez-vibrer-tie-column.cc. Rename class too.
5197 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5200 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5202 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5204 (find_breaks): idem.
5206 2006-02-21 Graham Percival <gpermus@gmail.com>
5208 * Documentation/user/advanced-notation.itely: fixed make-moment]
5211 * Documentation/user/basic-notation.itely: more clarification to
5214 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5216 * lily/include/constrained-breaking.hh (class
5217 Constrained_breaking): new file.
5219 * lily/constrained-breaking.cc (resize): new file.
5221 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5223 * Documentation/user/advanced-notation.itely (Clusters): insert
5226 * lily/tie-column.cc (calc_positioning_done): support for
5229 * lily/tie-formatting-problem.cc
5230 (generate_extremal_tie_variations): factor out.
5231 (score_ties_configuration): annotate all tie
5232 (print_ties_configuration): new routine.
5233 (generate_configuration): nudge extremal ties outside of the head
5235 (score_ties_configuration): oops. convert to staff-space before
5236 determining position symmetry.
5238 2006-02-20 Graham Percival <gpermus@gmail.com>
5240 * Documentation/user/*-notation.itely: misc minor editing,
5241 shifting doc sections around.
5243 * Documentation/user/*-notation-itely, global.itely,
5244 changing-defaults.itely: added new stuff from NEWS.
5246 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5250 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5252 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5253 lilypond --verbose for lp-book.
5255 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5256 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5258 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5259 $(buildscript-dir) iso. absolute depth.
5261 * buildscripts/genicon.py (dir): thinko.
5263 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5265 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5267 * scm/output-lib.scm: swap darkcyan/darkyellow
5269 * THANKS: Add bughunters.
5271 2006-02-19 Graham Percival <gpermus@gmail.com>
5273 * Documentation/user/programming-interfaces.itely: fixed example.
5275 * Documentation/user/instrument-notation.itely: fix @{ @}.
5277 * scm/script.scm: add avoid-slur for \open.
5279 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5281 * lily/tie-formatting-problem.cc (score_configuration): use
5282 sliding score for min-length.
5284 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5285 spaghetti for icons.
5287 * buildscripts/genicon.py (program_name): new file.
5289 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5291 (generate_configuration): for small ties, also look for collisions
5292 at Y + DIR*h + DELTA_Y.
5293 (get_variations): consider variation for dot positions too.
5295 * lily/side-position-interface.cc (aligned_side): take abs for
5296 quantized rounded position. Fixes tenuto below staff.
5298 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5299 markers when necessary.
5301 * lily/program-option.cc (internal_set_option): add
5302 strict_infinity_checking option.
5304 * scm/output-lib.scm (cyan): swap yellow and cyan.
5306 2006-02-19 Graham Percival <gpermus@gmail.com>
5308 * darwin.patch: trivial linenumber update.
5310 * Documentation/user/ {various}: `\context foo = named' changed
5311 to `\new foo = "name"' in docs.
5313 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5315 * scm/stencil.scm (annotate-y-interval): use it.
5317 * scm/lily-library.scm (interval-sane?): new function.
5319 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5322 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5325 * flower/include/std-vector.hh (iterof): add iterof macro.
5327 * lily/enclosing-bracket.cc (width): new function.
5329 * lily/align-interface.cc (align_elements_to_extents): reinstate
5332 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5334 * Documentation/index.html.in: fix spelling: thankyous.
5336 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5338 * lily/lyric-hyphen.cc: typo.
5340 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5342 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5343 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5346 * VERSION: release 2.7.35
5348 * lily/beam.cc (get_default_dir): oops. Take abs () for
5350 (get_default_dir): use extreme position criterion only in absence
5351 of forced stem directions.
5353 * VERSION (PATCH_LEVEL): bump VERSION.
5355 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5356 dependencies. Necessary for -jX builds.
5358 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5360 * lily/relocate.cc (setup_paths): Yet another const fix.
5362 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5364 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5366 * lily/relocate.cc (setup_paths): oops.
5368 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5370 * Documentation/index.html.in: order links: html before PDF.
5372 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5374 * lily/tie-column-format.cc (Module): remove.
5376 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5378 * lily/text-spanner.cc (print): idem.
5380 * lily/dynamic-text-spanner.cc (print): only print line if longer
5383 * lily/auto-change-iterator.cc (change_to): formatting.
5385 * lily/beam.cc (get_default_dir): take extreme note head as input
5388 * lily/tie.cc (get_default_dir): only look directions for visible
5391 * lily/side-position-interface.cc (aligned_side): oops. Don't
5392 mutiply with direction. This fixes quantized (staccato, tenuto)
5393 scripts below notes.
5395 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5396 direction. Fixes c-lyrics-center-align.ly
5398 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5400 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5403 * lily/std-string.cc:
5404 * lily/include/std-vector.hh (split_string): Move and rename from
5405 lily/include/misc.hh, lily/misc.cc. Update callers.
5407 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5409 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5411 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5413 * flower/test-file.cc: New file.
5415 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5418 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5420 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5422 * flower/include/file-storage.hh: remove file.
5424 * lily/include/midi-item.hh (class Midi_track): idem.
5426 * lily/include/source.hh (class Sources): idem.
5428 * lily/include/performance.hh (class Performance): use vector
5431 * flower/include/cons.hh (class Cons): remove file.
5433 * flower/include/flower-proto.hh: remove template cruft.
5435 * lily/include/font-metric.hh: use size_t not vsize for indices.
5437 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5440 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5442 * lily/include/paper-book.hh (class Paper_book):
5443 make get_system_specs() public.
5445 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5446 the force=10000 case if we don't have a current-best.
5448 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5451 * flower/include/flower-proto.hh: remove outdated templates.
5453 * scm/page.scm: use annotate-spacing
5455 2006-02-15 Graham Percival <gpermus@gmail.com>
5457 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5459 * THANKS: moved Erlend Aasland to contributors.
5461 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5463 * config.hh.in: remove HAVE_PANGO_16
5465 * lily/tuplet-bracket.cc (calc_positions): multiply with
5466 staff-space for beam case. This fixes tuplets+beams on scaled
5469 * config.hh.in: remove all Kpathsea related defines.
5471 * lily/dot-column.cc (side_position): reach stem via dots->
5472 head->stem. Inspect all stems for dot collisions.
5474 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5477 * lily/bar-number-engraver.cc (process_music): document function
5480 * lily/score.cc (default_rendering): add pscore, not systems
5483 * lily/paper-book.cc (get_system_specs): separate generation of
5486 * flower/include/std-vector.hh: don't include config.hh
5488 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5490 * flower/include/std-vector.hh: Better wrapper compatibility with
5493 * flower/include/flower-proto.hh: Remove cheap forward declaration
5496 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5498 2006-02-14 Graham Percival <gpermus@gmail.com>
5500 * Documentation/user/invoking.itely: add warning about command line.
5502 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5504 * lily/include/lily-proto.hh: add Prob, rm Page.
5506 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5508 * VERSION: release 2.7.34
5510 * lily/relocate.cc (framework_relocation): show canary if
5511 GHOSTSCRIPT_VERSION undefined.
5513 * GNUmakefile.in: remove $(VERSION) symlink.
5515 * lily/relocate.cc (setup_paths): add +
5517 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5519 * Documentation/index.html.in: specify sizes for all big HTML pages.
5521 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5523 * config.hh.in: remove @FRAMEWORKDIR@
5525 * lily/system-start-text.cc (get_stencil): new file: separate out
5526 system-start-delimiter text support.
5528 * input/**ly: replace \context with \new where appropriate.
5532 * lily/slur-scoring.cc (get_base_attachments): use
5533 robust_relative_extent. This fixes problems with empty paper-columns.
5535 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5537 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5539 * scm/define-music-properties.scm (all-music-properties):
5540 create-new property.
5542 * lily/context-specced-music-iterator.cc (construct_children):
5543 inspect 'create-new property iso. magical $uniqueContextId context
5546 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5548 * lily/context-key-manager.cc (Module): new file. Encapsulate
5549 object key generation.
5551 * lily/include/context-key-manager.hh (Module): new file.
5553 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5555 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5558 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5560 (reloc_b): excise --enable-framework-dir
5562 * lily/relocate.cc (framework_relocation): use getenv
5563 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5565 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5567 * flower/include/std-string.hh:
5568 * flower/include/std-vector.hh: Finish std:: conversion; move
5569 flower extensions from std:: namespace. Update users.
5571 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5572 their expansion to vector<*>. Update users.
5574 2006-02-10 Graham Percival <gpermus@gmail.com>
5576 * Documentation/user/invoking.itely: add example to File structure.
5578 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5579 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5581 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5583 * ly/paper-defaults.ly: typo.
5585 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5586 set_parent() for parentheses. This will make it show up in bbox
5589 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5590 ly:grob-common* functions.
5592 * lily/grob-scheme.cc (LY_DEFINE):
5593 ly:grob-common-refpoint-of-array: new function
5594 ly:grob-common-refpoint: new function
5595 ly:grob-relative-coordinate: new function
5597 * lily/instrument-name-engraver.cc (process_music): use
5598 Text_interface::is_markup(). This fixes \markup on instrument names.
5600 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5603 * lily/slur.cc (print): idem.
5605 * lily/tie.cc: add line-thickness for ties.
5607 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5609 * scm/output-svg.scm: Document diversion from GNU coding standards
5610 as a workaround for a bug in Microsoft Internet Explorer.
5612 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5614 * lily/instrument-name-engraver.cc (process_music): use
5615 is_markup() iso. is_string()
5617 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5619 * lily/percent-repeat-engraver.cc (process_music): only look at
5620 main_part_ for % repeats.
5622 * lily/stem-tremolo.cc (get_beam_translation): new function.
5623 (calc_slope): new function.
5624 (height): don't use real slope.
5626 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5628 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5629 new connect-to-neighbor, control-points and staff-padding
5630 properties to make ligature brackets showing up again.
5632 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5634 * VERSION: release 2.7.33
5636 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5639 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5640 remove applyOutput example.
5641 (Objects connected to the input): document \tweak, \parenthesize
5643 * lily/relocate.cc (prefix_relocation): allow "current"
5644 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5645 changing VERSION in a lily tree less painful.
5647 * input/regression/parenthesize.ly: new file.
5649 * scm/output-lib.scm (parenthesize-element): new function.
5651 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5653 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5655 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5656 cause: accidentals are caused by note heads, not note events.
5658 2006-02-08 Graham Percival <gpermus@gmail.com>
5660 * darwin.patch: small patch from Erlend, thanks!
5662 * Documentation/user/basic-notation.itely: add stem-neutral example.
5664 * Documentation/user/putting.itely: clarifications.
5666 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5668 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5669 note, add more guidelines to what should go into NEWS.
5671 * input/sakura-sakura.ly: document how to override font.
5673 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5675 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5677 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5679 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5681 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5682 convertrules. Add explicit grouping, needed for python2.2.
5684 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5686 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5688 2006-02-07 Graham Percival <gpermus@gmail.com>
5690 * Documentation/user/global.itely: fix line-width in (text) docs.
5692 * Documentation/user/lilypond-book.itely: same.
5694 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5696 * VERSION (PACKAGE_NAME): release 2.7.32
5698 * Documentation/topdocs/NEWS.tely (Top): document new variable
5701 * flower/include/array.icc (Message): remove file.
5703 * flower/include/std-vector.hh: make sure vsize and VPOS are
5704 defined for binary_search_bounds().
5706 * flower/std-string.cc (std): add to_string(long unsigned).
5708 * configure.in (gui_b): excise std_string option.
5709 (gui_b): excise std_vector option.
5711 * flower/string.cc (Module): excise flower array & string
5713 * flower/include/std-string.hh: excise flower string.
5715 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5717 * python/convertrules.py (lilypond_version_re_str): require
5718 only numbers and dots in \version string.
5720 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5722 * lily/system-start-delimiter.cc (print): allow style = text too.
5724 * lily/system-start-delimiter-engraver.cc
5725 (acknowledge_system_start_text): new function, also add add to
5726 support of system-start-text (instrument names). This fixes
5727 instrument names on piano staves.
5729 * lily/instrument-name-engraver.cc: rewrite. Use
5730 system-start-delimiter approach. This save memory and cpu.
5732 * scm/define-grobs.scm (all-grob-descriptions): remove
5733 instrument-name from break-alignment.
5735 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5737 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5739 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5742 * configure.in (std_vector): On by default.
5744 * lily/include/font-metric.hh:
5745 * lily/include/tfm-reader.hh:
5746 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5749 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5751 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5753 * VERSION (PACKAGE_NAME): 2.7.31
5755 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5756 EPS edge at 0, but take minimum with left-overshoot. This fixes
5757 cut off system start delims.
5759 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5760 hack: add to axis group if not added yet. This fixes hara kiri'd
5763 * lily/hara-kiri-group-spanner.cc
5764 (force_hara_kiri_in_y_parent_callback): fix signatures.
5766 * lily/hairpin.cc (print): check next hairpin to see whether or
5767 not to be continuing.
5769 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5771 * Remove trailing whitespace from makefiles.
5773 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5776 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5778 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5780 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5782 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5784 * configure.in: Use it.
5786 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5788 * scm/music-functions.scm (pitch-of-note): new function.
5790 * ly/music-functions-init.ly: add \octave and \addquote
5792 * lily/parser.yy (music_function_chord_body): softcode \octave.
5793 (lilypond_header): softcode \addquote
5795 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5797 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5798 array.hh, parray.hh at all. Getting ready to flip the
5801 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5803 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5806 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5808 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5810 * flower/include/array.hh: typo.
5812 2006-02-02 Graham Percival <gpermus@gmail.com>
5814 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5816 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5818 * flower/include/pqueue.hh: Derive from std::vector.
5820 * flower/include/parray.hh: Conform to std::vector interface.
5823 2006-02-02 Graham Percival <gpermus@gmail.com>
5825 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5827 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5829 * flower/file-path.cc (is_file): remove if 0 section.
5831 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5832 selecting afii61352.
5834 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5836 * flower/include/std-vector.hh (boundary): Oops, reverse.
5838 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5839 remove superfluous `d'.
5841 * flower/include/std-vector.hh (boundary, top): Detach from class.
5842 Remove empty vector shell.
5844 * flower/include/array.hh (reverse, swap): Detach from class.
5847 * flower/include/std-vector.hh
5848 * flower/include/array.hh (concat): Globally change to insert ().
5851 * flower/include/std-vector.hh
5852 * flower/include/parray.hh
5853 * flower/include/array.hh (elem, elem_ref): Globally replace by
5856 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5858 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5860 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5861 anticipate on identifier substitutions.
5863 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5865 * flower/include/std-vector.hh (insert): Remove, replace by
5866 std::vector interface. Update callers.
5868 * flower/include/array.icc (insert): Change signature to
5869 match std::vector interface.
5871 * flower/include/array.icc (vector_sort): Bugfix.
5873 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5875 * lily/parser.yy (output_def_head_with_mode_switch): new
5876 production. Result: dashes and underscores may be used in the
5879 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5881 * python/convertrules.py (conv): oops. One slash too much.
5883 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5885 * flower/include/std-vector.hh (sort): Remove, replace by
5886 ::vector_sort. Update callers.
5888 * flower/include/std-vector.hh (slice): Remove. Update callers.
5891 * flower/test-std.cc (vector_sort): New test.
5893 2006-02-01 Graham Percival <gpermus@gmail.com>
5895 * Documentation/user/putting.itely: fixes from Erik.
5897 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5899 * flower/test-std.cc: Add simple unit test for vector migration.
5901 * stepmake/stepmake/test*: Unit test support.
5903 * flower/include/std-vector.hh (del): Remove. Use erase (),
5906 * flower/include/array.hh (begin, end): Add.
5909 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5911 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5912 std::string not String.
5914 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5917 * lily/prob.cc (Prob): copy type_ too.
5919 * lily/lily-guile.cc (mangle_cxx_identifier): new
5920 function. Class_bla::foo_bar_[px] ->
5921 ly:class-bla::foo-bar[?!]. Changes throughout
5923 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5925 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5927 * lily/beam.cc (calc_direction): take dir from visible stem in
5930 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5932 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5933 Fix -1, >=0 boundary checks for unsigned vsize.
5935 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5936 loop for unsigned vsize.
5938 * configure.in (--enable-std-vector): New option.
5939 (--enable-std-string): On by default.
5941 * flower/include/std-vector.hh: New file. Enable switch to
5942 std::vector, update client code.
5944 2006-01-30 Graham Percival <gpermus@gmail.com>
5946 * scm/document-translation.scm: clarify "this context is also
5947 known as". Thanks, Werner!
5949 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5951 * Documentation/user/invoking.itely: small fix from Don.
5953 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5955 * scm/lily.scm (define-scheme-options): rename option
5956 preview-include-book-title to book-title-preview
5957 (define-scheme-options): move force-eps-font-include (from paper
5958 block) to eps-font-include -d option.
5960 * VERSION (PATCH_LEVEL): release 2.7.30
5962 * input/bach-schenker.ly (staffPiano): new file.
5964 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5966 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5969 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5971 * ps/lilyponddefs.ps: remove start-system, stop-system,
5972 start-page fluff. This saves putting { } code on the stack, fixing
5973 stack overflows when including EPS files.
5975 2006-01-29 Graham Percival <gpermus@gmail.com>
5977 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5979 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5981 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5983 2006-01-28 Graham Percival <gpermus@gmail.com>
5985 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5987 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5989 * input/mutopia/claop.py: Update.
5991 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5993 * input/regression/completion-heads.ly (texidoc): fix.
5995 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5997 * lily/tie-formatting-problem.cc
5998 (set_ties_config_standard_directions): use abs iso fabs for ints.
6000 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6002 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6003 little less than noteheight, to prevent overlaps in chords.
6005 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6006 head, and fudge stem-attachment.
6008 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6010 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6012 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6014 * lily/main.cc (main): Debugging aid: catch exceptions.
6016 * flower/std-string.cc (to_string): Robustification. Fixes midi
6017 output with std::string.
6019 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6021 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6023 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6025 * Fix -DSTRING_UTILS_INLINED.
6027 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6029 * VERSION (PATCH_LEVEL): release 2.7.29
6031 * lily/relocate.cc (setup_paths): mingw uses std string too.
6033 * lily/*.cc: various fixes for substr(ARG).
6035 * lily/sustain-pedal.cc (print):
6037 * flower/file-name.cc (slashify): use std strings.
6039 * flower/string-convert.cc: remove publib.h
6041 * scm/define-markup-commands.scm (verbatim-file): new markup
6042 command \verbatim-file
6044 * Documentation/topdocs/NEWS.tely: fixup URLs
6046 * input/regression/alignment-vertical-manual-setting.ly (Module):
6049 * lily/align-interface.cc (align_elements_to_extents): overwrite
6050 translations with numbers in alignment-offsets from left bound
6052 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6053 (page-translate-systems): new function: take into account Y-offset.
6055 * Documentation/topdocs/NEWS.tely (Top): document new features.
6057 * input/regression/page-layout-manual-position.ly (Module): new
6060 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6062 * flower/file-path.cc (path::parse_path): Oops.
6064 * Finish std::string interface. For now, use std:: marker
6065 throughout for easy s/r.
6067 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6069 * Documentation/user/putting.itely (Score is a single musical
6071 (Score is a single musical expression): more typos.
6073 * scm/page.scm (annotate-space-left): thinko.
6074 (annotate-page): more thinkos.
6076 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6078 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6079 for different \score blocks separately.
6080 (post-process-pages): put write-page-layout into paper block.
6082 * lily/output-def.cc (get_parser): new file.
6084 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6087 * lily/include/output-def.hh (class Output_def): add parser_ member.
6089 * input/regression/page-layout-twopass.ly (Module): new file.
6091 * scm/lily.scm: remove cpp hack.
6093 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6095 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6097 * GNUmakefile.in (c-clean): New target.
6099 * flower/include/std-string.hh: String/std::string compatibility:
6100 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6103 * flower/rational.cc:
6104 * flower/include/rational.hh:
6107 * flower/include/offset.hh:
6109 * flower/interval.cc:
6110 * flower/include/interval.hh:
6112 * flower/string-convert.cc:
6113 * flower/include/string-convert.hh: Use std::string [interface].
6116 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6118 * Documentation/index.html.in: clean up.
6120 2006-01-25 Graham Percival <gpermus@gmail.com>
6122 * Documentation/user/putting.itely: another new untested doc section.
6124 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6126 * scm/layout-page-layout.scm (write-page-breaks): write
6127 \spacingTweaks #ALIST. Handle grace timing.
6129 * scm/: more imports.
6131 * scm/page.scm (make-page): add footer/header.
6132 (annotate-space-left): revise: only take page argument.
6133 (layout->page-init): new function.
6135 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6136 version of the system/spacing/linebreak hack writing to the output
6138 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6141 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6144 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6146 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6148 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6150 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6151 handling to page.scm
6153 * lily/prob-scheme.cc (LY_DEFINE): new file.
6154 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6156 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6159 * lily/music.cc (derived_mark): derive Music from Prob.
6161 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6163 * lily/prob.cc (Module): Implement Prob (Property Object), object
6164 with shared and r/w property alists.
6166 * lily/include/prob.hh (Module): new file. Declare Prob.
6168 * flower/string.cc: remove is_empty().
6170 * flower/include/string.hh (class String): remove String:: qualifier.
6172 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6173 substitute appropriate functions.
6175 * flower/include/string.hh (class String): remove to_str0 and
6176 is_empty(). S&R everywhere.
6178 2006-01-23 Graham Percival <gpermus@gmail.com>
6180 * Documentation/user/basic-notation.itely: add hairpin
6181 after-linebreak tweak to commonprop.
6183 * Documentation/user/putting.itely: added two new sections.
6185 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6187 * flower/international.cc:
6188 * flower/include/international.hh:
6190 * flower/getopt-long.cc:
6191 * flower/include/getopt-long.hh: Use std::string [interface].
6194 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6196 * stepmake/stepmake/executable-rules.make: Add dependency on
6199 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6201 * flower/file-path.cc:
6202 * flower/include/file-path.hh: Use std::string [interface].
6205 * flower/direction.cc:
6206 * flower/axis.cc: Unused. Remove.
6208 * configure.in (--enable-std-string): New option.
6210 * flower/std-string.cc:
6211 * flower/include/std-string.hh: New file.
6213 * flower/file-name.cc[STD_STRING]:
6214 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6216 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6218 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6220 * scm/define-markup-commands.scm (with-dimensions):
6221 with-dimensions markup command.
6223 * input/test/font-table.ly: use it.
6225 * lily/open-type-font.cc (glyph_list): new function.
6227 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6229 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6231 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6233 * ly/music-functions-init.ly (parallelMusic): new music function
6234 for parallel music entry.
6236 * scm/define-music-properties.scm (all-music-properties): new
6237 'void music property
6239 * scm/music-functions.scm (ly:music-message): make public, to be
6240 used in music function definitions
6242 * scm/lily-library.scm (collect-music-for-book): discard music
6243 when the 'void property is set.
6245 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6247 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6249 * mf/GNUmakefile: idem.
6251 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6253 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6255 * Documentation/user/notation-appendices.itely (The Feta font):
6258 * input/test/font-table.ly: new file. Generate font table within lily.
6260 * Documentation/user/notation-appendices.itely (The Feta font):
6261 use new font-table.ly file.
6263 * stepmake/stepmake/install-out-targets.make
6264 (local-install-outfiles): only create directory if
6265 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6267 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6269 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6271 * VERSION (PACKAGE_NAME): release 2.7.28
6273 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6274 the right font from a Mac dfont.
6275 (write-preamble): don't forget directory, only look at files.
6277 This fixes problems with TTF files in dfonts that don't match
6278 their PostScript names.
6280 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6281 PS name from TTF font.
6283 * input/regression/tie-manual.ly: document new feature.
6285 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6287 * VERSION (MY_PATCH_LEVEL): bump to .28
6289 * Documentation/user/basic-notation.itely (Ties): add tie examples
6292 * lily/tie-formatting-problem.cc (score_ties_configuration):
6293 symmetry penalties for outer ties.
6295 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6297 * lily/tie-formatting-problem.cc (generate_configuration)
6298 (set_manual_tie_configuration): skip non-pair manual
6299 tie-configuration, so you can set individual ties as
6301 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6303 * input/regression/tie-chord.ly: use generateTiePattern to
6306 * lily/tie-formatting-problem.cc (peak_around): new function.
6307 (score_configuration): use sliding criterion for staff line collisions.
6308 (score_configuration): idem for dot collisions.
6309 (generate_configuration): use separate stem_gap for gap to stem.
6311 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6312 separate penalty factors for x and y distance.
6313 (struct Tie_details): separate penalties for tip and center line collisions.
6315 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6317 * lily/tie-formatting-problem.cc (generate_configuration): make
6318 large ties avoid stafflines in the horizontal section.
6319 (score_configuration): use softcoded penalties
6320 (score_aptitude): idem.
6322 * lily/tie-helper.cc (from_grob): softcode tie details
6324 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6326 * lily/staff-symbol-referencer.cc (on_line): rename from
6329 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6331 * ly/music-functions-init.ly: remove duplicate tag.
6333 * lily/include/*.hh: GCC 4.1 fixes.
6335 006-01-16 Erlend Aasland <erlenda@gmail.com>
6337 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6339 * scm/define-music-types.scm: fix bug in desc. string
6340 for OverrideProperty
6342 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6344 * scripts/lilypond-book.py: bugfix
6346 * scm/define-music-types.scm: fix typos.
6348 2006-01-14 Graham Percival <gpermus@gmail.com>
6350 * Documentation/user/ basic-notation.itely, global.itely,
6351 advanced-notation.itely, instrument-notation.itely: small
6352 additions (bugs and commonly tweaked properties).
6354 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6356 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6357 detection of mingw build.
6358 (MINGW_BUILD): opps.
6360 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6362 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6365 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6367 * scm/music-functions.scm (skip->rest): add skip->rest
6369 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6371 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6374 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6375 config dirs. Aids debugging.
6376 (display_config): also display config files.
6378 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6380 * VERSION: release 2.7.27
6382 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6383 for determining bar size.
6385 * lily/staff-symbol.cc (print): place lines at distance line-positions
6387 * scm/define-grob-properties.scm (all-user-grob-properties): add
6390 * lily/staff-symbol.cc (height): new function.
6392 * input/regression/staff-line-positions.ly: new file.
6394 2006-01-06 Graham Percival <gpermus@gmail.com>
6396 * input/test/add-staccato.ly: remove reference to old file.
6398 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6400 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6401 lilypond binary too.
6403 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6405 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6407 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6409 * scripts/midi2ly.py: Bugfix: Declare datadir.
6411 * make/ly-rules.make:
6412 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6413 that seems to be gone). Fixes make web.
6415 * The grand 2005-2006 replace.
6417 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6419 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6421 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6422 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6423 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6424 like -dgs-font-load.
6426 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6427 remove absolute path to lilypond binary.
6429 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6431 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6433 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6435 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6437 * mf/GNUmakefile: remove broken dvips map symlink.
6439 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6442 * configure.in: Cosmetic fixes.
6444 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6446 * Documentation/user/music-glossary.tely (Pitch names): Added
6447 Spanish pitch names and durations, thanks to Ernesto Gancedo
6449 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6451 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6452 init. Fixes verbose printing of .scm files.
6454 * stepmake/aclocal.m4: add spaces before - options.
6456 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6458 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6459 of path search in local block variable.
6461 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6463 * configure.in (NCSB_DIR): --enable-ncsb-dir
6464 (LINK_GXX_STATICALLY): denko.
6466 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6468 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6469 use locate to find c059033l.pfb.
6471 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6473 * lily/tie-formatting-problem.cc
6474 (problem::generate_base_chord_configuration): Use my_round (was
6477 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6478 do not invoke mbrtowc.
6480 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6482 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6484 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6486 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6488 * Documentation/user/invoking.itely (svg): revise.
6490 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6492 * lily/lexer.ll: use sourcefilename iso. renameinput.
6494 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6496 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6497 <PostScriptName>.ttf instead of c059XXXttf.
6499 * lily/program-option.cc (LY_DEFINE): special support for
6500 --verbose, so it works before option init too.
6502 * mf/GNUmakefile (local-install): oops.
6504 * lily/lyric-hyphen.cc (print): oops.
6506 * buildscripts/pfx2ttf.fontforge: new file.
6508 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6509 ($(outdir)/%.ttf): new rule.
6511 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6514 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6517 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6519 * VERSION: release 2.7.26
6521 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6523 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6525 * lily/font-config.cc (init_fontconfig): verbosity.
6527 * THANKS: add Muziekacademie Lede.
6529 * scripts/musicxml2ly.py (print_voice_definitions): new function
6530 (print_score_setup): new function
6531 (convert): read part definition to output staves properly.
6533 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6536 * python/musicexp.py (Output_printer.__init__): use _ in data
6538 (Output_printer.unformatted_output): new function: no formatting,
6540 (Duration.get_length): remove isinstance() checks for
6541 Output_printer everywhere.
6543 * input/regression/lyrics-bar.ly (texidoc): add
6544 Separating_line_group_engraver.
6546 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6548 * lily/relocate.cc (framework_relocation): New function,
6549 factored from set_relocation ().
6550 (prefix_relocation): Rename from set_relocation ().
6551 (setup_paths): Use it.
6553 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6555 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6556 numbers. Patch by Erlend Aasland.
6558 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6560 * lily/font-config.cc (init_fontconfig): print warning if cache
6561 file is not existant.
6563 * lily/main.cc: don't use #ifdef but #if
6565 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6567 * lily/grob-property.cc (internal_set_property): don't abort on
6568 calculation-in-progress.
6570 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6572 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6573 connect-to-neighbor property not connect-to-other
6575 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6576 (LY_DEFINE): oops. don't forget protection.
6578 * flower/parse-afm.cc (Module): strip AFM handling completely.
6580 * lily/stencil-expression.cc: idem.
6582 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6584 * lily/function-documentation.cc (ly_add_function_documentation):
6585 use static member iso. Protected_scm
6587 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6589 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6591 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6593 * lily/relocate.cc (set_env_dir): New function.
6594 (set_relocation): Use it to fix setting PANGO_PREFIX.
6596 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6598 * input/regression/stem-direction-context.ly: remove rest.
6600 * lily/melody-engraver.cc (process_music): restart for bar lines.
6601 (acknowledge_slur): restart for slurs.
6603 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6605 * Documentation/user/invoking.itely: describe how to view SVG
6606 output using Inkscape which replace embedded fonts with OTF fonts.
6608 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6610 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6612 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6614 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6617 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6619 * VERSION (PACKAGE_NAME): release 2.7.25
6621 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6623 * input/regression/stem-direction-context.ly: new file.
6625 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6627 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6630 * ly/engraver-init.ly: add Melody_engraver
6632 * lily/beam.cc (calc_direction): use default-direction
6633 iso. get_default_direction()
6635 * scm/define-grob-properties.scm (all-user-grob-properties): add
6636 default-direction property.
6638 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6640 * lily/stem.cc (calc_default_direction): remove
6641 Stem::get_default_direction, use default-direction with callback
6644 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6646 * lily/melody-engraver.cc: new file. Acknowledge stems for
6647 interpolated stem directions.
6649 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6651 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6653 * lily/slur-configuration.cc (fit_factor): more robust check for
6654 point in curve X-extent.
6656 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6657 (outside_slur_callback): check for 'outside avoidance.
6659 * lily/slur-configuration.cc (score_extra_encompass): don't use
6660 bound->column() == avoid->column() for checking extents, as this
6661 doesn't work for accidentals.
6663 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6664 DynamicText hardcoding.
6666 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6667 crash if bound stem is NULL
6669 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6672 2005-12-22 Graham Percival <gpermus@gmail.com>
6674 * scm/define-markup-commands.scm: typo. @code{\raise}
6677 * darwin.patch: now used again, includes a
6678 required patch from fink.
6680 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6682 * po/TODO: mention gtranslator along with kbabel.
6683 * po/fi.po: update translations.
6685 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6687 * lily/relocate.cc (setup_paths): Bugfix.
6689 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6691 * lily/slur-configuration.cc (score_extra_encompass): don't use
6692 "avoid" choice for avoid-slur.
6694 * stepmake/bin/install.py (dest): don't create existing dir.
6696 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6698 * stepmake/bin/install.py: Remove file before copying.
6701 * stepmake/aclocal.m4: Do not substitute INSTALL.
6703 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6705 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6706 depend on link-tree.
6708 * lily/relocate.cc (setup_paths): only check path for non-absolute
6709 dir without directory part.
6711 * flower/file-name.cc (is_absolute): new method.
6712 (is_absolute): check root_ too.
6714 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6716 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6717 relocation code. Oops, don't comment out too much.
6719 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6722 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6725 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6727 * .cvsignore: Add install-sh.
6729 * autogen.sh (srcdir): Typo.
6731 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6733 * autogen.sh (srcdir): urg. Touch install-sh.
6735 * stepmake/bin/install-sh (Module): remove.
6737 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6739 * lily/include/relocate.hh: new file.
6741 * lily/relocate.cc: new file. Contain relocation logic.
6743 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6744 (main): read LILYPOND_VERBOSE as the first thing.
6746 * stepmake/aclocal.m4: remove INSTALL variable.
6748 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6749 separate target for making font symlinks.
6750 (documentation-dir): use $(if $(findstring )) for switching off
6753 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6754 something if DOCUMENTATION is no.
6756 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6758 * VERSION: release 2.7.24
6760 * lily/script-column-engraver.cc (stop_translation_timestep):
6761 delay adding to script-column.
6763 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6765 * python/convertrules.py (conv): rule for number-visibility
6767 * lily/slur-configuration.cc (score_extra_encompass): different
6768 distance measure for avoid and inside avoidance.
6769 (score_extra_encompass): use 1/(distance+eps) as penalty.
6771 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6772 encompass objects for generating slur curves.
6774 * lily/slur.cc: use details iso. slur-details property.
6776 * input/regression/slur-tuplet.ly: new file.
6778 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6780 * flower/include/offset.hh (class Offset): new operator /=
6782 * lily/tuplet-number.cc (print): new file, new interface.
6784 * scm/define-grob-properties.scm (all-user-grob-properties):
6785 remove number-visibility property.
6787 * lily/tuplet-bracket.cc (calc_control_points): new function
6788 (calc_connect_to_neighbors): new function.
6789 (print): remove text handling for tuplet numberdef.
6791 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6794 * lily/lily-guile.cc (robust_scm2booldrul): new function
6796 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6798 * lily/tuplet-bracket.cc (calc_position_and_height): use
6799 staff-padding to control whether tuplet brackets are over staves.
6801 * lily/grob.cc (suicide): clear dim_caches_.
6803 * lily/dimension-cache.cc (clear): new function.
6805 * lily/grob.cc (extent): swap order of min-extent and extent
6806 calculations. This fixes hara kiri staves.
6808 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6810 * lily/main.cc: Nitpick: relocation is not based on path, but on
6811 directory (location).
6813 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6815 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6817 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6819 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6821 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6823 * stepmake/stepmake/generic-vars.make (Module): idem.
6825 * stepmake/stepmake/executable-targets.make (default): use it.
6827 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6829 * make/GNUmakefile: don't install make rules.
6831 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6833 (prepend_env_path): more verbosity.
6835 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6837 * GNUmakefile.in: add dir argument for find command.
6839 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6840 fixes weird line numbers for point & click.
6842 * lily/source-file.cc (get_counts): init line/column/char counts.
6844 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6846 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6848 2005-12-16 Graham Percival <gpermus@gmail.com>
6850 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6851 minor fixes from Fredric. Thanks!
6853 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6855 * ly/music-functions-init.ly: add \bar and \clef music function
6857 * lily/lily-lexer.cc: idem.
6859 * lily/parser.yy (FIXME): remove BAR and CLEF.
6861 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6863 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6865 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6866 function arguments too
6868 * lily/main.cc (set_relocation): new function.
6870 * scripts/musicxml2ly.py (convert): add \version
6872 * lily/tie.cc: remove get_default_attachments()
6874 * VERSION (PACKAGE_NAME): release 2.7.23
6876 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6877 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6879 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6881 * lily/tie-formatting-problem.cc (score_ties): new function
6882 (get_variations): new function. Try flipping dirs for collisions.
6883 (generate_optimal_chord_configuration): new function. 1-opt search
6884 for better configuration.
6886 * lily/tie-configuration.cc: new file.
6888 * lily/tie.cc: junk Tie::get_configuration()
6890 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6891 (score_ties_configuration): new function.
6892 (generate_ties_configuration): new function.
6893 (generate_base_chord_configuration): new function.
6894 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6895 (set_manual_tie_configuration): Move body from tie-column-format.cc
6897 * input/regression/tie-dot.ly: new file.
6899 * lily/tie-formatting-problem.cc (score_configuration): score
6902 * lily/tie-helper.cc (get_transformed_bezier): new function
6904 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6906 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6907 -undefined suppress iso. -framework Python
6909 * scm/define-grobs.scm (all-grob-descriptions): set
6910 springs-and-rods (thanks Joe Neeman!)
6912 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6914 * input/no-notation/display-lily-tests.ly (test):
6915 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6916 changed from \tag #'(a b) to \tag #'a \tag #'b
6918 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6920 * Documentation/topdocs/NEWS.tely: strip out-www.
6922 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6924 * config.make.in (AR): add AR and RANLIB
6926 * flower/libc-extension.cc: include cassert
6928 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6931 2005-12-11 Graham Percival <gpermus@gmail.com>
6933 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6935 * stepmake/stepmake/python-modules-vars.make: define
6936 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6938 * THANKS: added Johannes Schindelin.
6940 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6942 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6944 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6945 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6947 * lily/parser.yy: reorganize file layout.
6949 * ly/music-functions-init.ly: add tweak music function.
6951 * lily/grob-info.cc (ultimate_music_cause): new function:
6952 recursively lookup causes.
6954 * lily/parser.yy (chord_body_element): allow music functions for
6955 post-events, allow music functions for chord elements.
6957 * lily/font-config-scheme.cc (display_fontset): add cast.
6959 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6960 #'(a b) -> \tag #'a \tag #'b rule.
6962 * python/musicexp.py (Output_printer.dump_version): new function
6964 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6966 * lily/parser.yy (FIXME): remove \tag
6967 (FIXME): remove tag_music() function.
6969 * lily/lily-lexer.cc: remove \tag
6971 * ly/music-functions-init.ly: define music-function "tag"
6973 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6975 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6977 * VERSION (PATCH_LEVEL): release 2.7.22
6979 * input/regression/lyric-hyphen-retain.ly: renew.
6981 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6984 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6985 iso. minimum-length property for rods.
6987 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6988 LyricSpace item to keep lyrics spaced apart.
6990 * ly/engraver-init.ly: remove Separating_line_group_engraver
6992 * Documentation/user/music-glossary.tely: do setfilename before
6995 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6997 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6998 See xref documentation, for example.
7000 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7002 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7003 pending_skip iso. ly_voice[-1]
7004 (main): add if __main__ for debugging.
7006 * python/musicxml.py (Accidental.__init__): new class.
7008 * scripts/musicxml2ly.py (progress): new function
7009 (musicxml_key_to_lily): don't barf on modeless keys.
7010 (create_skip_music): new function.
7011 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7012 (musicxml_note_to_lily_main_event): new function.
7014 * python/musicexp.py (Music.__init__): add comment field.
7015 (NestedMusic.append): new routine.
7016 (SequentialMusic.print_ly): print comment.
7017 (ArpeggioEvent.ly_expression): new class
7018 (BeamEvent.ly_expression): new class
7019 (NoteEvent.__init__): support for cautionary/forced accs.
7021 * lily/lookup.cc (slur): normal order for array loop.
7023 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7026 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7029 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7031 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7033 * scripts/lilypond-book.py: Introduce option
7034 --preserve-line-breaks, for usage with srcltx
7036 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7038 * scm/output-lib.scm (print-circled-text-callback): draw circle
7039 around text using make-circle-markup.
7041 * Documentation/user/*: strip out-www from file names.
7043 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7045 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7046 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7048 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7050 * Documentation/user/GNUmakefile: idem.
7052 * Documentation/user/macros.itexi: strip out-www
7054 * python/rational.py: python 2.3 compat.
7056 * VERSION (PATCH_LEVEL): release 2.7.21
7058 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7059 option formatting, lilypond style.
7061 * python/musicexp.py: grab from Ikebana: a library for composing
7062 ly music expressions.
7063 (Output_printer): class for advanced .ly printing.
7066 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7067 convert to pythonesque structure.
7069 * python/rational.py: PD rational number class.
7071 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7073 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7075 * lily/part-combine-iterator.cc: Minor bugfix
7077 * THANKS: Update bughunters
7079 2005-12-02 Werner Lemberg <wl@gnu.org>
7081 * mf/README: Document process for proper mf2pt1 conversion.
7083 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7086 * mf/feta-harmonica.mf: Removed. Unused.
7088 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7090 * scripts/lilypond-book.py (do_file): fix thinkos.
7092 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7094 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7095 ($(outdir)/parser.cc):
7096 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7098 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7100 * ly/titling-init.ly (tagline): it should be a space between
7101 "Music engraving by LilyPond" and the version number.
7103 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7105 * VERSION (PACKAGE_NAME): release 2.7.20
7107 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7109 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7111 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7113 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7115 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7117 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7119 * kpath-guile/: remove directory
7121 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7122 file. Encapsulate kpathsea using commandline tools.
7124 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7127 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7129 * Documentation/user/advanced-notation.itely (Setting automatic
7130 beam behavior): Correct a few typos. Thanks to David Bobroff.
7132 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7133 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7135 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7137 * scripts/*.py: gmane address for bugs.
7139 2005-11-28 Pal Benko <benkop@freestart.hu>
7141 * make/ly-rules.make: add -f switch to mv
7143 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7145 * lily/bar-line.cc: interpret it
7147 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7149 * configure.in (--disable-documentation): New switch.
7151 * GNUmakefile.in: Use it.
7153 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7155 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7157 * scripts/lilypond-book.py (do_file): search chunks for
7160 * GNUmakefile.in: add copy step in between so we can lose the
7161 out-www directories.
7163 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7165 * lily/pango-font.cc (pango_item_string_stencil): put
7166 geometry.width into glyph-string too.
7168 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7170 * scm/define-music-display-methods.scm (RevertProperty):
7171 (OverrideProperty): Use grob-property-path property, a list of
7172 symbols, instead of grob-property, which used to be a single
7174 (BassFigureEvent): a figure can be a plain number, not necessarily a
7177 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7179 * VERSION: release 2.7.19
7181 * lily/figured-bass-engraver.cc (process_music): check
7182 figuredBassCenterContinuations first.
7184 * scm/translation-functions.scm (format-bass-figure): make double
7187 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7190 * lily/system-start-delimiter-engraver.cc: move from
7191 Nested_system_start_delimiter_engraver, rename
7192 Nested_system_start_delimiter_engraver ->
7193 System_start_delimiter_engraver.
7195 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7196 bracket type from hierarchy.
7198 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7200 * lily/rest.cc (y_offset_callback): read staff-position.
7202 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7203 mark after-line-breaking-callback as internal.
7205 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7207 2005-11-25 Werner Lemberg <wl@gnu.org>
7209 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7211 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7213 * stepmake/bin/add-html-footer.py (do_file): add google
7215 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7216 staff if first_start_ is true.
7218 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7220 * scripts/midi2ly.py (split_track): add __repr__ members.
7221 (track_first_item): only return Item if not None. This fixes a
7222 problem when dumping a track that starts with an empty channel.
7224 * python/midi.c: doc module.
7226 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7228 * Documentation/user/global.itely (Creating MIDI files): Fix
7229 compilation problem.
7231 2005-11-22 Graham Percival <gpermus@gmail.com>
7233 * Documentation/user/basic-notation.itely: clarify dynamic
7236 * Documentation/user/advanced-notation.itely: add unicode
7237 escape control example, whatever that is. :)
7239 * Documentation/user/global.itely: added "removing dynamics
7242 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7244 * VERSION (PATCH_LEVEL): release 2.7.18
7246 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7247 System_start_delimiter_engraver by
7248 Nested_system_start_delimiter_engraver.
7250 * lily/nested-system-start-delimiter-engraver.cc (struct
7251 Bracket_nesting_node): new class.
7252 (struct Bracket_nesting_group): new class
7253 (struct Bracket_nesting_staff): new class.
7254 (process_music): create hierarchy of grobs. This allows separate
7255 tuning of different SSDs.
7257 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7258 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7260 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7262 * lily/side-position-interface.cc (aligned_side): multiply
7265 * lily/script-engraver.cc (make_script_from_event): allow setting
7268 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7270 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7272 * scm/define-grobs.scm (all-grob-descriptions): new grob
7273 NestedSystemStartDelimiter.
7275 * input/regression/system-start-heavy-bar.ly: new file.
7277 * lily/nested-system-start-delimiter-engraver.cc: new file.
7279 * lily/nested-system-start-delimiter.cc: new file.
7281 * input/regression/system-start-nesting.ly: new file.
7283 * scm/define-grobs.scm (all-grob-descriptions): use X side
7284 positioning for positioning braces for nested contexts.
7286 * lily/system-start-delimiter.cc (print): don't divide extent by
7288 (print): use style iso. glyph.
7289 (staff_bracket): translate glyph inside routine already.
7291 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7293 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7296 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7298 * scm/define-context-properties.scm
7299 (all-user-translation-properties): rename figuredBassFormatter
7300 from newFiguredBassFormatter.
7302 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7304 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7306 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7308 * lily/beam.cc (calc_beaming): new function.
7309 (calc_shorten): new function.
7311 * THANKS: add Edward Neeman.
7313 * input/regression/accidental-clef-change.ly: new file.
7315 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7317 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7319 * lily/clef-engraver.cc (inspect_clef_properties): reset
7320 localKeySignature for clef changes.
7322 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7324 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7325 add dummy definition that works in Linux and add information in
7326 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7328 * Documentation/user/changing-defaults.itely (Modifying context
7329 plug-ins): Add index for \with.
7331 * Documentation/user/music-glossary.tely (dal segno): Updated
7332 example to version >=2.6.
7334 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7336 * Documentation/user/instrument-notation.itely (Printing chord
7337 names): Reorder \chordmode and \repeat in one example.
7339 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7341 * VERSION: release 2.7.17
7343 * Documentation/topdocs/NEWS.tely (Top): add note about
7346 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7347 new function. Search region of 3 positions for best tie.
7348 (score_configuration): new function.
7349 (score_aptitude): new function.
7350 (generate_configuration): new function.
7351 (get_configuration): new function.
7352 (Tie_formatting_problem): new function
7354 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7356 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7358 * THANKS: add Eduardo Vieira & Ralph Little
7360 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7363 * lily/include/tie-formatting-problem.hh (class
7364 Tie_formatting_problem): add Tie_details to
7365 Tie_formatting_problem. Update calling conventions.
7367 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7370 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7372 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7374 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7375 scm/define-context-properties.scm: Maintenance bugfix: make
7376 ligature brackets work again by removing obsolete ligature
7377 primitive callback push/pop.
7379 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7380 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7383 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7385 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7386 used and do not call it a path.
7387 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7389 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7391 * lily/include/tie-formatting-problem.hh (class
7392 Tie_formatting_problem): new file.
7394 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7396 * Documentation/misc/ChangeLog-2.3: new file.
7398 * lily/audio-staff.cc (output): degarianize.
7400 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7402 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7403 Unset PYTHONOPTIMIZE. Fixes install if set.
7405 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7407 * python/convertrules.py (conv): add warning about drums.
7409 * make/stepmake.make: include toplevel-version.make after config.make.
7411 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7412 also allow python2.4
7414 * config.make.in (configure-srcdir): remove GXX GCC vars.
7416 * stepmake/aclocal.m4: don't do non-srcdir build with
7417 symlinks. Use inclusion, so the src directory name can be changed.
7419 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7421 * make/mutopia-vars.make:
7422 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7425 2005-11-13 Werner Lemberg <wl@gnu.org>
7427 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7428 but the affected path. This ensures that the (overlapping) outlines
7429 have the same direction, which is a necessary prerequisite for
7430 FontForge's algorithm to remove overlaps.
7433 * mf/feta-haak.mf: Formatting.
7434 (draw_bracket): Slightly modify outline to avoid an unnecessary
7436 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7437 them from the affected paths.
7439 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7441 * mf/README: remove xpm / accordion notes.
7443 * lily/tie-column-format.cc (set_chord_outline): add dots into
7444 skyline extents. This fixes tie formatting if the left head has dots.
7446 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7447 space inside the staff.
7448 (get_configuration): shift another position if necessary in case
7451 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7453 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7454 buildscript-dir iso. $(depth)/buildscripts.
7456 * tex/GNUmakefile (local-uninstall): remove
7457 music-drawing-routines.ps juggling.
7459 * stepmake/stepmake/install-targets.make (local-install-files):
7460 prepend src-dir to install targets.
7462 * lily/system-start-delimiter-engraver.cc
7463 (acknowledge_system_start_delimiter): use
7464 add_offset_callback(). This fixes translation of nested
7467 * lily/grob-closure.cc (add_offset_callback): only encaps in
7468 simple_closure if it's a procedure.
7470 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7473 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7474 remove-empty where pertinent.
7476 2005-11-12 Graham Percival <gpermus@gmail.com>
7478 * Documentation/user/instrument-notation.itely: added
7479 Cameron Horsburgh's multiple stanzas docs. Thanks!
7481 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7484 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7485 make picture in builddir, not srcdir.
7487 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7489 * VERSION: release 2.7.16
7491 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7494 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7496 * Documentation/user/examples.itely (Piano templates): Minor
7497 modification to the Piano centered lyrics example.
7499 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7501 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7504 * Documentation/user/point-and-click.itely: simplify p&c
7505 instruction: don't configure firefox. Put lilypond-invoke-editor
7506 in front of the browser.
7508 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7509 (run-browser): new function.
7511 * lily/parser.yy (Lily_lexer): recognize Book
7513 * lily/book.cc (clone): new function
7515 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7517 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7519 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7520 Maintenance bugfix: reduce number of font related warnings by
7521 updating naming conventions for glyph-name.
7523 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7525 * scm/define-grobs.scm (all-grob-descriptions): add
7526 rhythmic-grob-interface to TabNoteHead.
7528 * scm/layout-beam.scm (check-quant-callbacks): remove
7531 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7533 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7534 alignment of centered divisiones.
7536 * scm/scripts.scm (articulations): Maintenance bugfix:
7537 follow-into-staff -> quantize-position.
7539 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7540 plica head in porrectus deminutus.
7542 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7544 * make/lilypond.fedora.spec.in (Group): add %clean section.
7546 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7547 less then 1/5th of total length.
7548 (print): use gap too. Fixes tupletUp-single-bracket.ly
7550 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7551 events into EventChord. This fixes textspanners on mm rests. Fixes
7554 * lily/side-position-interface.cc (get_axis): read side-axis
7555 (set_axis): set side-axis.
7557 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7558 properties everywhere.
7560 * lily/spacing-spanner.cc (breakable_column_spacing): add
7561 average-spacing-wishes. Take maximum if not set.
7562 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7564 * scm/define-grobs.scm (all-grob-descriptions): add
7565 average-spacing-wishes.
7567 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7568 offset callbacks. This fixes alignment for Fingering objects.
7570 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7571 space for key - timesig combination.
7573 * input/regression/script-stem-tremolo.ly (Module): new file.
7575 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7578 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7579 Fixes: c-tremolo-script.ly.
7581 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7583 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7585 * scm/define-grobs.scm (all-grob-descriptions): remove
7586 self-X-offset. Fixes alignment of octavate-8.
7588 * scripts/lilypond-book.py (datadir): look in
7589 LILYPONDPREFIX/share/lilypond/current/
7591 * GNUmakefile.in: symlink current to <VERSION>.
7593 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7595 * lily/main.cc: eps listed as a backend.
7597 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7599 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7601 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7603 * lily/include/score.hh (class Score): remove texts_ member.
7605 * lily/beam.cc (set_stem_lengths): force direction callback.
7606 (print): read quantized-positions, so we can force
7607 Beam::set_stem_lengths to occur.
7608 (rest_collision_callback): use common X parent.
7610 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7612 * flower/file-path.cc (find): Bugfix: Return name of file found.
7614 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7615 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7616 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7618 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7620 * flower/offset.cc: idem.
7622 * mf/*.mf: update email address.
7624 * lily/font-config-scheme.cc: new file.
7626 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7628 * lily/*: cs.uu.nl -> xs4all.nl
7630 * VERSION (PATCH_LEVEL): release 2.7.15
7632 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7635 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7637 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7639 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7641 * lily/staff-performer.cc (process_music): add audio
7642 elements. This makes MIDI instrument changes work once again.
7644 * lily/main.cc (LY_DEFINE): add gmane address.
7646 * lily/beam.cc: remove calc_positions()
7648 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7649 original_ in private scope.
7650 (class Grob): drop pscore_ pointer, change to output_def pointer.
7651 (class Grob): cleanup class definition.
7653 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7655 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7657 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7658 absolute. Better diagnostics.
7660 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7661 This makes lilypond run from the build directory using argv0
7662 relocation (without any --prefix or LILYPONDPREFIX setting).
7664 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7666 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7668 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7669 with simple-closure.
7671 * lily/self-aligment-interface.cc (set_align_self): new function
7672 (set_center_parent): new function.
7674 * lily/side-position-interface.cc (set_axis): new function.
7676 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7679 * scm/define-grob-properties.scm (all-user-grob-properties):
7680 remove [XY]-offset-callbacks add [YX]-offset
7682 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7684 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7685 entry for time signatures after breathing signs. Bug report by
7688 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7690 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7691 not absolute, make it absolute using PATH.
7693 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7695 * python/midi.c (initmidi): Fix type for mingw.
7697 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7699 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7701 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7704 * stepmake/aclocal.m4: Support python cross compiling.
7706 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7709 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7711 * scm/output-lib.scm (chain-grob-member-functions): replace
7714 * lily/chained-callback.cc (Module): remove file.
7716 * lily/rest-collision.cc (force_shift_callback_rest): change to
7719 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7721 * lily/grob.cc (y_parent_positioning): remove axis argument from
7722 parent_positioning callbacks.
7723 (Grob): junk init code
7724 (get_offset): use generic property callbacks for
7725 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7726 (axis_parent_positioning): new function
7727 (axis_offset_symbol): new function
7728 (chain_offset_callback): new function
7729 (add_offset_callback): new function
7731 * lily/beam.cc (rest_collision_callback): change signature; this
7732 is now a chained callback.
7734 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7735 callback administration.
7737 * lily/simple-closure.cc: new file. Smob type that allows "grob
7740 (ly:make-simple-closure FUNC A B)
7742 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7745 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7748 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7750 * lily/rest.cc (polyphonic_offset_callback): remove.
7752 * lily/script-engraver.cc (try_music): remove bool* argument.
7754 * scm/script.scm (default-script-alist): set quantize-position
7757 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7759 * lily/side-position-interface.cc (aligned_side): move staff
7760 position quantization from
7761 Side_position_interface::quantised_position().
7762 (quantised_position): remove
7764 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7766 * input/regression/beam-quant-standard.ly: reindent, set
7767 debug-beam-quanting to #t.
7769 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7770 10000 if this is a "hard" concave beam.
7772 * lily/beam.cc (calc_least_squares_positions): change from
7773 calc_least_squares_dy
7774 (set_stem_lengths): this is now a chained callback.
7776 * lily/context-property.cc (execute_general_pushpop_property):
7777 bugfix override with procedure should have effect.
7779 * scm/define-grob-properties.scm (all-internal-grob-properties):
7780 remove position-callbacks.
7782 * scm/define-grobs.scm (all-grob-descriptions): use
7783 ly:make-callback-chain for positions property.
7785 * scm/layout-beam.scm (check-quant-callbacks): return list of
7788 * scm/lily.scm (type-p-name-alist): add callback-chain
7790 * lily/lily-guile.cc (type_check_assignment): type check failure
7791 is warning not message.
7793 * lily/grob-property.cc (try_callback): walk callback chain if
7796 * lily/chained-callback.cc: new file. new smob type.
7798 * lily/lily-guile.cc (procedure_arity): new function.
7800 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7802 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7804 2005-10-25 John Mandereau <john.mandereau@free.fr>
7806 * Documentation/user/instrument-notation.itely (Figured bass):
7807 describe new features
7809 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7811 * lily/beam.cc (calc_least_squares_dy): use property callback.
7813 * lily/beam-concave.cc (calc_concaveness): use property callback.
7815 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7817 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7821 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7823 * scm/layout-page-layout.scm (page-headfoot): annotate
7826 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7828 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7829 doesn't take y-space.
7831 * scm/paper.scm (paper-alist): fix A7 dimensions.
7833 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7835 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7836 src-wildcard, remove $(wildcard).
7838 * po/GNUmakefile (PO_FILES):
7839 * ps/GNUmakefile (PS_FILES):
7840 * tex/GNUmakefile (TEX_FILES):
7841 * cygwin/GNUmakefile (POSTINSTALLS):
7842 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7843 some wildcard calls.
7845 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7847 * THANKS: add Thomas Bushnell.
7849 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7851 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7852 (lilypond-main): Redirect to gui-main if 'gui is set.
7854 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7855 for alternative installations kludging s/share/lib/g
7858 * SConstruct (libdir_package_version): Define.
7860 * python/SConscript:
7861 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7864 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7866 * lily/main.cc: clarify --safe.
7868 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7870 * VERSION: release 2.7.14
7872 * Documentation/user/*.itely: remove minimumVerticalExtent.
7874 * scm/define-grobs.scm (all-grob-descriptions): remove
7875 RemoveEmptyVerticalGroup
7877 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7879 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7882 * python/convertrules.py (conv): add rules.
7884 * lily/grob.cc: remove is_empty()
7886 * lily/grob-property.cc: remove add_to_list_property().
7888 * scripts/convert-ly.py (datadir): add prefix switching hack to
7891 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7892 space-function tweak.
7894 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7896 * scm/define-grob-properties.scm (all-user-grob-properties):
7897 remove callback property.
7899 * lily/include/grob.hh (class Grob): remove property_callbacks_
7900 member. Properties of procedure type are assumed to be callbacks.
7902 * lily/ligature-engraver.cc (override_stencil_callback):
7903 rewrite. Use noteHeadLigaturePrimitive as source.
7905 * scm/define-grob-properties.scm (all-internal-grob-properties):
7906 remove ligature-primitive-callback
7908 * lily/include/dimension-cache.hh (class Dimension_cache): make
7909 class, with Grob as friend.
7911 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7912 has_extent_callback()
7914 * scm/translation-functions.scm (format-new-bass-figure): read
7915 figuredBassPlusDirection
7917 * scm/define-context-properties.scm
7918 (all-user-translation-properties): add figuredBassPlusDirection.
7920 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7922 * lily/align-interface.cc (set_ordered): new function.
7924 * lily/grob.cc (flush_extent_cache): rewrite.
7926 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7927 Interval pointer directly.
7929 * lily/main.cc (setup_paths): insert extra / .
7930 (setup_paths): junk cff entry.
7932 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7935 * lily/axis-group-engraver.cc (finalize): remove
7936 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7938 * lily/grob.cc (Grob): don't set extent from ctor.
7939 (extent): use property callbacks.
7941 * lily/axis-group-interface.cc: remove set_axes() function.
7943 * lily/grob-property.cc (del_property): new function.
7945 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7947 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7949 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7951 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7953 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7955 * mf/SConscript: Updates.
7957 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7959 * stepmake/stepmake/*:
7963 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7964 from any directory in build-dir. Cleanups.
7966 * make/srcdir.make.in: Remove.
7968 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7970 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7973 * lily/SConscript: Remove ttftools.
7975 * SConstruct: Resurrect.
7977 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7979 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7982 * lily/paper-book.cc (add_score_title): put Paper_score title into
7985 * scm/translation-functions.scm (format-new-bass-figure): also
7986 allow plus in combination with _
7988 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7990 * VERSION: 2.7.13 released.
7992 * lily/note-collision.cc (check_meshing_chords): don't wipe
7993 stencil, merely set transparent.
7995 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7996 (Top): document #'callbacks.
7997 (Top): document nested \override.
7999 * input/regression/figured-bass.ly: update for slash and pluses.
8001 * input/regression/figured-bass-continuation-forbid.ly (Module):
8004 * scm/translation-functions.scm (format-new-bass-figure): use
8005 slashed-digit if diminished is set.
8006 (format-new-bass-figure): add + if 'augmented is set.
8008 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8010 * input/test/piano-staff-distance.ly: remove file.
8012 * Documentation/user/advanced-notation.itely (Formatting cue
8013 notes): use length-fraction for making stems/beams smaller.
8015 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8018 * lily/new-figured-bass-engraver.cc: new property
8019 centerFiguredBassContinuations
8021 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8024 * lily/context-property.cc (execute_general_pushpop_property):
8027 * input/regression/override-nest.ly: new file.
8029 * python/convertrules.py (FatalConversionError.subber): conversion
8030 rule for #'callbacks
8032 * input/regression/override-nest.ly: new function.
8034 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8037 * lily/context-property.cc (lookup_nested_property): new function.
8038 (evict_from_alist): new function.
8039 (general_pushpop_property): new function.
8040 (execute_general_pushpop_property): rewrite. Support nested
8043 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8045 * lily/beam.cc: use length-fraction too.
8047 * scm/define-grob-properties.scm (all-user-grob-properties):
8048 remove property flag-width-function
8049 (all-user-grob-properties): remove space-function.
8051 * scm/layout-beam.scm: remove flag-width-function.
8053 * lily/beam.cc: remove flag-width-function
8055 * scm/layout-beam.scm: remove beam dir functions.
8057 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8059 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8060 for easier grace tweaks.
8062 * lily/beam.cc: remove dir-function.
8064 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8066 * lily/grob.cc: remove spacing-procedure.
8068 * lily/note-head.cc (calc_stem_attachment): new function.
8069 (internal_print): use callback to get glyph-name.
8071 * lily/grob-property.cc (get_interfaces): new function.
8073 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8075 * lily/stem.cc (calc_stem_end_position): new function.
8076 (calc_length): new function.
8077 document details for stem.
8078 remove Stem::get_direction()
8080 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8082 * lily/grob-property.cc (set_callback): new function.
8084 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8086 * lily/item-scheme.cc: new file.
8088 * lily/bar-line.cc (before_line_breaking): remove function.
8089 remove bar-size-procedure, break-glyph-function
8091 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8093 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8095 * lily/system-start-delimiter.cc (print): suicide from
8096 here. Remove after_line_breaking_callback.
8098 * lily/script-interface.cc (calc_direction): use callback for direction.
8100 * lily/side-position-interface.cc (aligned_side): don't use
8101 Side_position_interface::get_direction directly. Use callback.
8103 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8105 (get_print_stencil): rename from get_stencil: create stencil with
8106 transparency, color and cause.
8108 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8110 * python/convertrules.py (conv): insert temporary warning rule.
8112 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8114 * lily/grob-property.cc (try_callback): remove marker if applicable.
8116 * lily/grob.cc: elucidate doc about after/before-line-breaking
8118 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8120 * lily/stem.cc (height): idem.
8122 * lily/stem-tremolo.cc: idem.
8124 * lily/slur.cc (height): don't use get_uncached_stencil()
8126 * lily/rest.cc (y_offset_callback): use offset callback
8127 iso. after-line-breaking callback.
8129 * lily/grob.cc: change after/before-line-breaking-callback to
8130 after/before-line-breaking dummy properties.
8132 * lily/include/grob.hh: remove Grob_status.
8134 * scm/define-context-properties.scm
8135 (all-user-translation-properties): remove verticalAlignmentChildCallback
8137 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8138 (calc_direction): use callback
8139 (calc_positions): use callback.
8141 * lily/tie.cc (calc_direction): use callback. Only call parent
8142 positioning for more than one tie.
8144 * lily/tie-column.cc (calc_positioning_done): use callback
8146 * lily/slur-scoring.cc (calc_control_points): use callback
8148 * lily/slur.cc (calc_direction): use callback.
8150 * lily/note-collision.cc (force_shift_callback): remove.
8152 * lily/dot-column.cc (force_shift_callback): remove. Use
8153 other_axis_parent_positioning.
8155 * lily/grob.cc (other_axis_parent_positioning): new function.
8156 (same_axis_parent_positioning): new function
8158 * lily/align-interface.cc (alignment_callback): remove function.
8160 * lily/note-collision.cc (calc_positioning_done): use callback.
8162 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8163 (calc_direction): idem.
8164 remove print function.
8166 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8168 * lily/dot-column.cc (calc_positioning_done): use callback.
8170 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8172 * lily/beam.cc (calc_direction): use pseudo-property for beam
8174 (calc_positions): use callback
8176 * lily/align-interface.cc (calc_positioning_done): use
8177 callback. Fold fixed distance and normal alignment in one function.
8179 * lily/stem.cc (calc_stem_end_position): use callback.
8180 (calc_positioning_done): idem.
8181 (calc_direction): idem.
8182 (calc_stem_end_position): idem
8183 (calc_stem_info): idem.
8185 * lily/grob-property.cc (get_property_data): new function:
8186 (try_callback): new function.
8188 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8191 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8193 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8195 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8199 * lily/include/*.hh (Module): compile fixes.
8201 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8203 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8204 as an argument for char-syntax: use (char-syntax (or nil 0))
8205 instead of (char-syntax nil), thanks to Milan Zamazal.
8207 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8209 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8212 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8215 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8217 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8218 add class_name() method.
8220 * lily/music-scheme.cc: remove ly:music-name.
8222 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8224 * cygwin/postinstall-lilypond.sh: Remove cruft.
8226 * cygwin/postremove-lilypond.sh: Remove.
8228 * cygwin/GNUmakefile (default): Remove postremove rules.
8230 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8232 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8235 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8238 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8239 consider break index for broken spanner.
8241 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8242 characters from string before splitting.
8244 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8246 * scm/framework-ps.scm (output-preview-framework): use
8247 is-book-title to determine whether to chop off the booktitle.
8249 * lily/paper-book.cc (systems): init from book-title-properties
8250 (add_score_title): init score-title-properties.
8252 * ly/paper-defaults.ly: add {score,book}-title-properties.
8254 * scm/document-backend.scm (lookup-interface): error message if
8255 using unknown interface.
8257 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8260 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8262 (make_bracket): new function.
8264 * scm/lily.scm (define-scheme-options): add paper-size option.
8266 * ly/declarations-init.ly (laissezVibrer): get paper size from
8269 * scm/translation-functions.scm: use \fontsize for changing the
8272 * scm/define-grobs.scm (all-grob-descriptions): set
8273 between-length-limit to 1.0
8275 * lily/tie-helper.cc: add between_length_limit_ detail property.
8277 * mf/feta-bolletjes.mf: typos.
8279 * lily/note-head.cc (internal_print): don't shadow idx
8280 parameter. This fixes wrong attachment for do shape heads.
8282 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8284 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8286 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8288 * scm/layout-slur.scm: rename from slur.scm
8290 * scm/layout-page-layout.scm: rename from page-layout.scm
8292 * scm/layout-beam.scm: rename from beam.scm
8294 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8295 bass-figure-interface
8297 * lily/new-figured-bass-engraver.cc (process_music): add
8298 implicitBassFigures property.
8300 * scm/define-markup-commands.scm (pad-x): new markup.
8302 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8303 minimumVerticalExtent on FiguredBass context.
8305 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8306 case the continuation crosses a line break.
8308 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8310 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8311 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8312 absolute file name bug.
8314 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8316 * VERSION (PACKAGE_NAME): release 2.7.12
8318 * input/regression/figured-bass-continuation-center.ly: new file.
8320 * input/regression/beam-outside-beamlets.ly: new file.
8322 * lily/beam.cc (set_beaming): don't clip edges.
8323 (connect_beams): don't clip edges.
8325 * lily/beaming-info.cc (clip_edges): new function.
8327 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8329 * Documentation/user/instrument-notation.itely (Figured bass):
8330 demonstrate extenders, update seealso links.
8332 * scm/titling.scm (marked-up-headfoot): change tagline
8333 handling. tagline = ##f will blank the tagline as well.
8335 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8337 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8339 * lily/new-figured-bass-engraver.cc (struct
8340 New_figured_bass_engraver): add new_music_found_ member.
8342 * lily/lilypond-version.cc (Lilypond_version): deal with
8343 incorrectly formatted version strings.
8345 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8346 New_figured_bass_engraver by default.
8348 * lily/ttf.cc (print_trailer): only define glyph names when
8349 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8351 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8353 * lily/horizontal-bracket.cc (make_bracket): new function.
8355 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8356 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8357 BassFigureLine, BassFigureAlignment
8359 * lily/new-figured-bass-engraver.cc (process_music): new file.
8361 * lily/figured-bass-continuation.cc: new file.
8363 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8366 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8368 * scripts/lilypond-book.py: Bug fix, put the quote around the
8369 actual score for LaTeX documents.
8371 * scm/define-grobs.scm (all-grob-descriptions): Change
8372 collapse-height of the SystemStartBracket grob to 5.0,
8373 so the bracket disappears for single stave score lines (similarly
8374 to SystemStartBraces).
8376 * Documentation/user/advanced-notation.itely (Polymetric
8377 notation): Clarify the use of compressMusic.
8379 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8380 that the grace spacer note in other staves need the same duration
8381 and document the stroke-style property.
8383 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8385 * Documentation/user/global.itely (Vertical spacing): document
8386 alignment-extra-space and fixed-alignment-extra-space.
8388 * Documentation/topdocs/NEWS.tely (Top): add entry.
8390 * input/regression/alignment-vertical-spacing.ly: new file.
8392 * python/convertrules.py (conv): add rule.
8394 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8396 * lily/align-interface.cc (stretch_after_break): new
8397 function. Read fixed-alignment-extra-space property.
8398 (align_elements_to_extents): read alignment-extra-space property.
8400 * lily/lily-guile.cc (robust_scm2dir): new function.
8402 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8403 (annotate-space-left): new function. Annotate space left on page.
8404 (annotate-y-interval): new function.
8405 (paper-system-annotate-last): new function. Annotate bottom-space.
8407 * mf/feta-beugel.mf (y):
8409 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8411 * VERSION (PACKAGE_NAME): release 2.7.11
8413 * scm/lily-library.scm (interval-translate): new function
8414 (interval-center): new function.
8416 * scm/page-layout.scm (paper-system-annotate): new function. Add
8417 arrows for dimensions.
8419 * scm/stencil.scm (dimension-arrows): new function.
8421 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8423 * input/regression/page-spacing.ly: add annotatespacing
8425 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8426 (LY_DEFINE): new function ly:paper-system-set-property!
8428 * Documentation/user/global.itely (Paper size): explain how to add
8431 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8432 correspond to GS's definition.
8434 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8436 (print): only connect to next bracket if the next one is alive.
8437 (print): set padding to 0.0 if the bound is a breakable
8438 column. This makes tupletFullLength brackets reach up to the staff
8439 line if it doesn't connect to the next line.
8441 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8443 * lily/bar-number-engraver.cc: correct docs.
8445 * scm/output-lib.scm (first-bar-number-invisible): rename from
8446 default-bar-number-visibility
8448 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8450 * scm/define-music-properties.scm (all-music-properties): remove
8453 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8455 * po/fi.po: refresh.
8457 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8459 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8461 (disappear): bugfix.
8463 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8465 * lily/include/paper-system.hh (class Paper_system): remove
8466 staff_extents_ member.
8468 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8470 * lily/include/paper-system.hh (class Paper_system): remove
8471 number_ variable. Remove is_title_. Remove break_before_penalty_
8473 * lily/paper-book.cc (systems): use 'number property iso. number_
8476 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8477 remove ly:paper-system-number.
8479 * scm/lily-library.scm (paper-system-title?): new function.
8481 * lily/book.cc (process): bugfix: flip ?: cases.
8483 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8486 * ly/music-functions-init.ly: add outputProperty music function.
8488 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8490 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8492 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8494 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8496 * lily/paper-system.cc (internal_get_property): new function.
8498 * Documentation/user/global.itely (Vertical spacing): refer to
8501 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8504 * input/regression/page-spacing.ly: new file.
8506 * input/regression/page-top-space.ly: new file.
8508 * lily/spacing-spanner.cc: cmath -> math.h
8510 * lily/paper-system.cc (read_left_bound): new function. Read
8511 line-break-system-details from left bound to determine extents.
8513 * Documentation/user/programming-interface.itely (Using LilyPond
8514 syntax inside Scheme): change applyxxx -> applyXxx.
8516 * ly/music-functions-init.ly: add outputProperty music function.
8518 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8520 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8522 * python/convertrules.py (conv): rule
8524 * ly/music-functions-init.ly: applyxxx -> applyXxx
8526 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8529 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8531 * flower/include/real.hh: include <math.h> iso. <cmath>
8533 * flower/include/offset.hh: include real.hh
8535 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8537 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8538 fix example, now that 'interfaces is no longer directly available.
8540 * lily/book.cc (process): don't crash if paper == NULL.
8544 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8546 * scm/define-music-types.scm (music-descriptions): set length and
8547 start-callback for QuoteMusic
8549 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8551 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8552 arguments. Fixes compilation error with gcc 3.3.
8554 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8556 * VERSION: release 2.7.10
8558 * stepmake/stepmake/python-module-rules.make
8559 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8561 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8564 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8566 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8567 -Werror. Otherwise GCC barfs over various optimizations.
8569 * scm/define-grob-properties.scm (all-internal-grob-properties):
8570 add note-head property
8572 * Documentation/user/instrument-notation.itely (Laissez vibrer
8575 * input/regression/laissez-vibrer-ties.ly: new file.
8577 * lily/laissez-vibrer-engraver.cc: new file.
8579 * lily/include/tie-column-format.hh: new file.
8581 * lily/tie-column-format.cc: new file.
8583 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8585 * lily/laissez-vibrer-tie.cc: new file.
8587 * lily/include/laissez-vibrer-tie.hh: new file.
8589 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8591 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8593 * scm/define-grobs.scm (all-grob-descriptions): add
8594 LaissezVibrerTie, LaissezVibrerTieColumn
8596 * lily/tie-column.cc (set_tie_config_directions): new function
8597 (final_shape_adjustment): new function.
8598 (shift_small_ties): new function.
8600 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8602 * lily/include/tie.hh (struct Tie_details): add x_gap_
8603 (struct Tie_configuration): add head_position_
8605 * lily/tie-column.cc (set_chord_outline): new function.
8607 * mf/cmr.enc.in: remove file.
8609 2005-09-11 Graham Percival <gpermus@gmail.com>
8611 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8613 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8615 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8616 reduce aliasing effects.
8618 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8621 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8623 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8625 * flower/include/real.hh: std::fabs too.
8627 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8629 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8631 * lily, flower: Include C++ iso C headers. Import namespace std
8634 * lily/side-position-interface.cc:
8636 * lily/note-head.cc:
8637 * lily/include/includable-lexer.hh:
8638 * flower/include/string-data.icc: Remove using std::*.
8640 * lily, flower: Include C++ iso C headers. Import namespace std
8643 * lily/side-position-interface.cc:
8645 * lily/note-head.cc:
8646 * lily/include/includable-lexer.hh:
8647 * flower/include/string-data.icc: Remove using std::*.
8649 * Documentation/user/instrument-notation.itely (Entering lyrics):
8650 Multiple latin-1->utf-8 conversion fix.
8652 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8654 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8656 * lily/tie.cc (get_configuration): also avoid dots for non-space
8659 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8661 * Documentation/user/instrument-notation.itely: Bugfix.
8663 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8665 * tex/GNUmakefile: don't install texinfo.tex
8667 * tex/ : cleanup: remove unused files.
8669 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8671 * flower/include/real.hh: using std::{isnan,isinf}
8673 * VERSION (PATCH_LEVEL): release 2.7.9
8675 2005-09-05 Graham Percival <gpermus@gmail.com>
8677 * Documentation/user/ instrument-notation.itely,
8678 advanced-notation.itely: minor tweaks.
8680 * input/test/script-chart.ly: add item padding.
8682 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8684 * flower/offset.cc: use math.h iso. <cmath>
8686 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8689 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8690 (widen-left-stencil-edges): new function. Fix alignment problems
8691 with LaTeX includegraphics.
8693 * lily/text-interface.cc (interpret_markup): use abort().
8695 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8697 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8699 * lily/tie.cc (get_configuration): update bezier shape as we
8701 (get_configuration): don't move large ties if we're outside of the
8704 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8706 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8708 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8710 * .cvsignore: Add auto-generated configure files and then some.
8712 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8714 * scm/define-grobs.scm (DynamicLineSpanner): Add
8715 X-extent-callback. Fixes hairpin-slur collision.
8717 2005-08-31 Graham Percival <gpermus@gmail.com>
8719 * Documentation/user/advanced-notation.itely,
8720 basic-notation.itely: minor changes.
8722 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8724 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8725 \linebreak between each .eps file if \betweenLilyPondSystem is
8728 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8729 music): Document the \linebreak
8731 * Documentation/user/lilypond-book.itely,
8732 input/tutorial/lbook-latex-test.tex,
8733 Documentation/user/examples.itely: Remove \usepackage{graphics}
8735 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8737 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8739 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8742 * scripts/lilypond-book.py (PREAMBLE_LY): define
8743 inside-lilypond-book
8744 (modify_preamble): new function. Insert \RequirePackage{graphics}
8745 when no {graphics found in preamble.
8747 2005-08030 Graham Percival <gpermus@gmail.com>
8749 * Documentation/user/basic-notation.itely, global.itely,
8750 tutorial.itely: misc small changes.
8752 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8754 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8757 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8759 * lily/tie-column.cc (new_directions): put Tie down on center
8762 * lily/script-interface.cc (before_line_breaking): use
8763 Grob::programming_error
8765 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8767 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8770 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8772 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8774 2005-08-29 Werner Lemberg <wl@gnu.org>
8776 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8777 the `*.scale.pfa' files to avoid warnings.
8779 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8781 * lily/tempo-performer.cc (process_music): idem.
8783 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8785 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8787 * Documentation/user/advanced-notation.itely (Text markup): not a
8790 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8792 * lily/staff-performer.cc (initialize): add tempo/name to
8796 2005-08-26 Graham Percival <gpermus@gmail.com>
8798 * Documentation/user/advanced.itely: add text-only example.
8800 * Documentation/user/invoking.itely: add index entries for
8803 * Documentation/user/ tutorial.itely, basic-notation.itely:
8804 small fixes suggested by Steve D. Thanks!
8806 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8808 * input/regression/markup-bidi-pango.ly: new file.
8810 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8811 standard. Remove #ifdef. Remove memleak.
8812 (text_stencil): use text_dir to decide how to composite items.
8813 (text_stencil): determine uniform text direction for the entire
8816 * scripts/lilypond-book.py (output_name): remove
8817 latex_filter_cmd. Non-portable to non-Unix systems.
8818 (get_latex_textwidth): use File.write and os.unlink() instead.
8820 * THANKS: add Vicente & Trevor.
8822 * lily/grob.cc (discretionary_processing): look up origin for
8823 programming_error too.
8825 * input/regression/tie-broken.ly: new file.
8827 * lily/tie-column.cc (set_chord_outlines): set outline for line
8830 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8832 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8833 unscaled transform, just translate stencils.
8835 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8838 * scm/define-markup-commands.scm (wordwrap-string): use
8840 (wordwrap-stencils): idem.
8843 (wordwrap-stencils): translate last line to right for
8844 text-direction = LEFT.
8846 * scm/define-grob-properties.scm (all-user-grob-properties): add
8849 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8851 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8852 when copying a Lily_parser object.
8854 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8856 * scm/define-markup-commands.scm (null): add null markup.
8858 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8860 * lily/item.cc: Add documentation of center-invisible
8862 2005-08-24 Graham Percival <gpermus@gmail.com>
8864 * Documentation/user/advanced-notation.itely: add info about
8867 * Documentation/user/programming-interface.itely: fix example
8868 involving raised text.
8870 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8872 * lily/beam.cc (print): fix X start/end points of isolated
8875 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8877 * lily/multi-measure-rest.cc (set_text_rods): new function.
8879 * lily/vertical-align-engraver.cc (process_music): call
8880 Align_interface::set_axis(). This forces #'elements to be ordered,
8881 preventing random vertical reordering of staves.
8883 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8884 add avoid-slur property.
8886 * Documentation/user/basic-notation.itely (Measure repeats): add
8887 countPercentRepeats example.
8889 * Documentation/user/advanced-notation.itely (Other text markup
8890 issues): remove remark about normal-font. We have \normal-text
8892 * input/regression/tie-chord.ly: add note about remaining bugs.
8894 * lily/tie.cc (print): try Tie_column::set_directions () if
8895 control-points not yet defined.
8897 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8899 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8900 extent. This fixes braces falling out of the EPS bbox.
8902 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8905 2005-08-23 Graham Percival <gpermus@gmail.com>
8907 * {various} : change #up->#UP and #down->#DOWN.
8909 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8911 * Documentation/user/advanced-notation.itely: clarify
8912 what objects handles text on a multimeasure rest.
8914 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8916 * VERSION (PATCH_LEVEL): release 2.7.7
8918 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8920 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8922 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8924 * input/regression/*.ly: formatting clean-up. Default layout
8925 before music expression.
8927 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8928 romanze28-2 example.
8930 * scm/ps-to-png.scm: remove dir-re function.
8931 (make-ps-images): generate page names, instead of globbing them.
8932 This brings down LilyPond memory usage for make web by a factor
8935 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8936 don't use glob. With 3000 files, globbing
8937 Documentation/user/out-www/ can take too much time.
8939 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8941 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8943 * input/regression/tie-manual.ly: new file
8945 * input/regression/tie-chord.ly: update.
8947 * flower/include/interval.hh (struct Interval_t):
8949 * lily/tie.cc (distance): new function
8950 (height): new function.
8951 (init): new function
8952 (Tie_details): new struct.
8954 * lily/skyline.cc (skyline_height): new function.
8956 * lily/tie-column.cc (set_chord_outlines): new function.
8957 (new_directions): read tie-configuration
8959 * lily/skyline.cc: fix ASCII art.
8961 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8963 * python/convertrules.py (string_or_scheme): Fix spelling error
8965 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8967 * lily/tie-column.cc (set_directions): set directions only once.
8968 (add_configuration): new function.
8970 * lily/tie.cc (set_control_points): new function
8972 * lily/tie-column.cc (new_directions): new function.
8974 * ly/music-functions-init.ly: set 'pitch property
8975 iso. trill-pitch. This makes \relative work with \pitchedTrill
8977 * lily/tie.cc (get_configuration): new function. Don't generate
8978 control points, rather, generate configuration.
8979 remove head-pair property.
8981 * lily/include/tie.hh (struct Tie_configuration): new struct.
8983 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8985 * Documentation/topdocs/NEWS.tely: clarify.
8987 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8989 * lily/tie.cc: remove minimum-length
8991 * scm/define-grob-properties.scm (all-user-grob-properties):
8992 remove staffline-clearance, y-offset
8994 * input/regression/tie-dots.ly (Module): remove.
8996 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8997 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8999 * input/regression/tie-single.ly: new file.
9001 2005-08-21 Graham Percival <gpermus@gmail.com>
9003 * ly/bagpipe.ly: fix compile problem.
9005 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9007 * lily/midi-item.cc (name): new method.
9009 * lily/staff-performer.cc (acknowledge_audio_element): use
9010 signature of baseclass.
9012 * lily/engraver-group.cc (do_announces): move recursion call out
9015 * lily/drum-note-performer.cc (class Drum_note_performer): use
9016 process_music everywhere.
9018 * ly/performer-init.ly: add default children everywhere.
9020 * lily/paper-book.cc (output): call paper-book-write-midis
9021 directly: always write MIDI, even if no \layout {} block.
9023 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9025 * VERSION (PACKAGE_NAME): release 2.7.6
9027 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9028 about not being able to handle repeat.
9030 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9032 * Documentation/user/examples.itely (Piano templates):
9033 * lily/include/performer-group.hh: Remove last traces of
9034 Performer_group_performer. Fixes make web.
9036 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9038 * Documentation/user/examples.itely (Piano templates): change
9039 Engraver_group_engraver -> Engraver_group
9041 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9042 scm_stand_in_procs is not weak_any.
9044 * lily/volta-bracket.cc (print): don't use strcmp().
9046 * lily/volta-engraver.cc (process_music): use
9047 Text_interface::is_markup() for setting the 'text property of the
9050 * input/mutopia/claop.py (accents): update syntax to 2.6
9052 * scm/define-context-properties.scm
9053 (all-user-translation-properties): add countPercentRepeats.
9055 * Documentation/user/basic-notation.itely (Measure repeats): add
9056 isolated percent example.
9058 2005-08-18 Graham Percival <gpermus@gmail.com>
9060 * input/ {various}: change direction #1, #-1 to
9061 #up/#down or \fooUp, \fooDown.
9063 * Documentation/user/music-glossary.tely: #-1 to #down.
9065 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9066 to #up, #-1 to #down.
9068 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9070 * lily/include/engraver-group.hh: rename.
9072 * lily/include/performer-group.hh: rename.
9074 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9076 * input/test/script-abbreviations.ly: Removed some old LaTeX
9079 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9081 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9082 Remove functions. Remove if 1: constructs, reindent.
9084 * scripts/convert-ly.py (add_version): Add functions from
9087 * scm/script.scm (default-script-alist):
9088 s/priority/script-priority. Fixes script stacking. Backportme.
9089 (Fermata): Very low priority.
9091 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9093 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9095 * input/regression/slur-script.ly: remove padding tweaks. Add
9098 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9099 time sigs and related stuff.
9101 * scm/define-grob-properties.scm (all-user-grob-properties): add