1 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * SConstruct (lilypondprefix): use sorted() for list_sort()
6 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
8 * flower/SConscript: Unit test rules.
10 * flower/test-std.cc: Compile fix.
12 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
14 * python/midi.c (pymidi_parse_track): warning fixes.
16 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
19 2006-10-26 Graham Percival <gpermus@gmail.com>
21 * Documentation/user/ {basic-, global}: minor changes from mailist.
23 2006-10-26 Erlend Aasland <erlenda@gmail.com>
25 * scm/define-grobs.scm: trivial beautification
27 * lily/tie-performer.cc: no need to #include "pqueue.hh"
29 * lily/source-file.cc: put multibyte var inside #if clause
31 * scm/define-grob-interfaces.scm:
32 * scm/define-grob-properties.scm:
33 Build fix (string-fret-finger-combinations)
35 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
38 2006-10-26 Joe Neeman <joeneeman@gmail.com>
40 * lily/system.cc (get_paper_system):
41 * lily/paper-book.cc (systems):
42 move most of the backwards compatibility stuff into
45 * Documentation/topdocs/NEWS.tely: add 2 entries for the
48 * Documentation/user/page.itely: remove time-scaled-music
49 bug for the Page_turn_engraver
51 * lily/paper-book.cc (set_system_penalty): backwards
52 compatibility (breakbefore) for the old page breaker
54 2006-10-25 Graham Percival <gpermus@gmail.com>
56 * Diocumentation/user/instrument-notation.itely: added more
57 info about stanzas; thanks Geoff!
59 * Documentation/user/ {basic, advanced}: small fixes from
62 * THANKS: add some bug reporters.
64 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
66 * scm/define-context-properties.scm (all-user-translation-properties):
67 noteToFretFunction: Add.
69 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
70 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
72 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
74 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
77 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
78 Remove bashism in delete.
80 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
82 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
84 * scm/translation-functions.scm (determine-frets-mf): flatten let*
86 * scm/define-context-properties.scm
87 (all-user-translation-properties): add maximumFretStretch property.
89 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
91 * lily/source-file.cc (get_counts): use multibyte variable.
93 * scm/translation-functions.scm (determine-frets-mf): new
94 function: compute fret numbers.
96 * scm/output-lib.scm (string-frets->description) new function.
97 (fret-board::calc-stencil): new function
99 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
101 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
103 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
105 * lily/tab-note-heads-engraver.cc: cleanups.
107 * lily/fretboard-engraver.cc: new file
109 * ly/engraver-init.ly: add FretBoards context
111 2006-10-24 Joe Neeman <joeneeman@gmail.com>
113 * lily/grob.cc (pure_relative_y_coordinate)
114 (pure_height): use the new call_pure_function stuff
116 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
119 * lily/side-position-interface.cc (pure_y_aligned_side): add an
122 * lily/simple-closure.cc (ly_eval_simple_closure): make
123 simple-closure evaluatable from scheme
124 (evaluate_with_simple_closure): make simple-closures pure-
127 * lily/slur.cc (pure_outside_slur_callback): new function
129 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
130 fits in with previous changes that made the page forces much
133 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
134 and pure-Y-extent into this new function.
135 (pure-conversions-alist): add outside-slur-callback
137 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
139 * Documentation/user/advanced-notation.itely (Instrument names):
140 Remove obsolete bug workaround for instrument names on piano
143 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
145 * Documentation/user/lilypond-book.itely (Integrating DocBook and
146 music): patch by Bertalan Fodor for docbook.
148 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
149 of $(LILYPOND). Prevents lilypond run for .txt files.
151 * INSTALL.txt: gitness.
153 * .cvsignore: update to force gitness.
155 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
157 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
158 detect suicide in nested tuplets.
160 2006-10-23 Werner Lemberg <wl@gnu.org>
162 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
163 typo in argument to FT_Get_X11_Font_Format.
165 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
167 * stepmake/stepmake/po-vars.make: more gitness.
169 * flower/polynomial.cc (check_sol): no empty if bodies.
171 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
173 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
175 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
177 * Documentation/user/examples.itely (Transcription of mensural
178 music): Added more comments in .ly source. Suggest to remove
179 Forbid_line_break_engraver to allow line breaking at all bars.
181 * Documentation/user/instrument-notation.itely (Ancient
182 articulations): Updated @refbugs regarding episem.
184 * Documentation/user/instrument-notation.itely (Gregorian square
185 neumes ligatures): Added \augmentum dots. Updated @refbugs
186 regarding \augmentum.
188 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
190 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
193 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
196 * ly/gregorian-init.ly: Added \augmentum macro.
198 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
200 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
202 * lily/pango-font.cc (pango_item_string_stencil): use
203 FT_Get_X11_Font_Format()
205 2006-10-22 John Mandereau <john.mandereau@free.fr>
207 * po/fr.po: update translation.
209 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
211 * VERSION (PATCH_LEVEL): bump version
213 * input/regression/horizontal-bracket-break.ly: new file.
215 * scm/define-grobs.scm (all-grob-descriptions): calc
218 * lily/horizontal-bracket.cc (make_bracket): support
219 connect-to-neighbor. Fix #118
221 * VERSION: release 2.9.26-2
223 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
225 * VERSION (PACKAGE_NAME): release 2.9.26
227 * buildscripts/output-distance.py (test_basic_compare): add
229 (FileLink.multi_img_cell): new function, glob multi-page png
232 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
234 * po/lilypond.pot: update.
236 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
238 * Documentation/user/global.itely (File structure): remove
241 * lily/parser.yy (FIXME): remove ADDQUOTE
243 * Documentation/user/global.itely (Extracting fragments of
244 notation): new node, about clip systems.
246 * Documentation/user/lilypond-book.itely (Many quotes of a large
247 score): ref to clip systems.
249 * Documentation/user/instrument-notation.itely (Entering lyrics):
250 add note about lyric ties and required font.
252 * lily/open-type-font.cc (glyph_list): format errors.
254 * Documentation/user/programming-interface.itely (Scheme
255 procedures as properties): more doco on simple-closure and scheme
257 (Input variables and Scheme): use lilypond[verbatim], document
260 * Documentation/user/page.itely (Displaying spacing): use \book
261 explicitly, so arrows show .
262 (Line breaking): add note about Forbid_line_break_engraver
264 * Documentation/user/tweaks.itely (Common tweaks): also set length
265 to prevent tie squeezing.
266 (Default files): use @var{}
268 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
269 (Generating LilyPond files): add FOMUS.
271 2006-10-20 Joe Neeman <joeneeman@gmail.com>
273 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
274 Y-offset for TextScript and Script
276 * lily/text-engraver.cc (make_item):
277 * lily/script-engraver.cc (make_script_from_event):
278 remove call to Side_position_interface::set_axis since all scripts
279 now have this set by default
282 * lily/prob.cc: use variables
284 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
286 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
287 at typography, rather analyse stream event duration.
289 * Documentation/user/page.itely (Page formatting): set a6 paper
290 for system separator example.
292 * lily/arpeggio.cc (Module): idem.
294 * lily/accidental-placement.cc: add script-priority property.
296 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
298 * lily/ttf.cc (print_trailer): if all else fails: use
299 glyphIndexXXXX as glyph name. Fixes #117.
301 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
302 entry if cmap contains glyph.
303 (get_index_to_charcode_map): remove from Pango_font class, use
304 global filename -> font mapping.
305 (get_glyph_index_name): new function.
306 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
309 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
311 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
314 * scm/define-grob-properties.scm (all-user-grob-properties):
315 remove outdated doc. Fixes #116
317 * lily/completion-note-heads-engraver.cc (process_music): always
318 clone input events; otherwise we may overwrite input 'duration
319 property. Fixes #115.
321 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
324 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
327 * VERSION (PATCH_LEVEL): bump version.
329 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
331 * lily/engraver.cc (internal_make_grob): use variables.
333 * flower/string-convert.cc (dec2double): clean-up warnings.
335 * configure.in (CXXFLAGS): add -Werror.
337 * VERSION (PACKAGE_NAME): release 2.9.25
339 2006-10-18 Joe Neeman <joeneeman@gmail.com>
341 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
342 line even if we precede a forced break.
344 * lily/optimal-page-breaking.cc (try_page_spacing): square line
345 forces too. Make page-spacing weight default to 10 because the
346 changes to vertical springs decreased the page force/line force
347 proportions. Also, take the average of line force and page force
348 instead of just the sum.
350 * lily/constrained-breaking.cc (initialize): make the stiffness
351 of the vertical springs depend on the height of the system. This
352 prevents pages with only a few large systems from getting huge
355 * Documentation/user/page.itely (Page formatting): document the
356 change in default page-spacing-weight
358 * lily/include/constrained-breaking.hh: initialise bottom_padding_
360 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
362 * input/typography-demo.ly (melody): remove superfluous slur.
364 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
365 add piano-pedal-script-interface
367 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
369 * scripts/lilypond-book.py: DocBook support.
371 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
373 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
375 (stop_translation_timestep): set bound to currentMusicalColumn if
376 not set yet. Fixes #102
378 * lily/piano-pedal-bracket.cc: formatting.
380 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
382 * lily/piano-pedal-align-engraver.cc: new class
383 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
386 2006-10-18 Heikki Junes <hjunes@gmail.com>
388 * po/fi.po: Update Finnish translation (before the next release).
390 2006-10-17 Joe Neeman <joeneeman@gmail.com>
392 * lily/system.cc (get_paper_system): reinstate the backwards-
393 compatible page breaking for the old page breaker.
395 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
397 * lily/recording-group-engraver.cc: removed
399 * lily/context.cc, lily/translator-group.cc: Don't touch
400 Context::implementation_ if it's null
402 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
404 * scm/paper.scm: only use left-margin if defined.
406 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
408 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
410 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
411 strokeFingerOrientations
413 * lily/script-column.cc (row_before_line_breaking): also handle
414 accidentals and arpeggios in horizontal script stacking.
416 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
419 * input/regression/script-stack-horizontal.ly: trim.
421 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
423 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
426 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
427 'text if string argument.
429 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
431 * scm/define-context-properties.scm
432 (all-user-translation-properties): change to strokeFingerOrientations
434 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
436 * lily/parser.yy: remove debug output
438 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
440 * ly/paper-defaults.ly: set left/right margin.
442 * scm/paper.scm (set-paper-dimensions): use left-margin and
443 right-margin for computing linewidth.
445 * Documentation/topdocs/NEWS.tely (Top): idem.
447 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
450 * scm/define-markup-commands.scm (tied-lyric): increase negative
451 space: space syllables tighter.
453 * VERSION (PATCH_LEVEL): bump version.
455 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
458 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
460 * COPYING: further clarification
462 * VERSION: release 2.9.24
464 * input/regression/script-stack-horizontal.ly: add version.
466 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
468 * input/regression/lyric-tie.ly (texidoc): use different words.
470 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
472 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
474 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
475 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
477 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
479 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
481 * Doxyfile: remove file.
483 * scm/define-grob-interfaces.scm (string-finger-interface): add
484 string-finger-interface
486 * lily/general-scheme.cc (LY_DEFINE): move
487 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
489 * Documentation/topdocs/NEWS.tely (Top): add note for
490 string-finger feature.
492 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
495 * scm/output-lib.scm (string-finger::calc-text): read 'digit
498 * input/regression/script-stack-horizontal.ly: new file.
500 * ly/engraver-init.ly: add Script_row_engraver.
502 * lily/script-column.cc (order_grobs): refactor: separate axis
504 (row_before_line_breaking): new function.
506 * lily/script-row-engraver.cc (Script_row_engraver): new file.
508 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
510 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
512 * Documentation/user/instrument-notation.itely: Cleanup: Remove
513 annoying skip notes from mensural ligature example. Update
514 @refbugs for ligatures and mensural ligatures.
516 * lily/coherent-ligature-engraver.cc,
517 lily/include/coherent-ligature-engraver.hh,
518 lily/mensural-ligature-engraver.cc,
519 lily/vaticana-ligature-engraver.cc: Revise code for item
520 reparentizing. There should now be less programming_error
523 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
525 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
526 Maintenance bugfix: Don't create empty Stencil (), but empty box
527 instead. This fix should eliminate some programming_error
530 * ly/engraver-init.ly (MensuralStaff): Set default accidental
533 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
534 \layout block _before_ score.
536 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
538 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
540 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
542 2006-10-13 Erlend Aasland <erlenda@gmail.com>
544 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
546 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
548 * VERSION (PATCH_LEVEL): bump version.
550 * COPYING: clarify exception note.
552 * lily/main.cc: remove remark about "COPYING".
554 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
555 system-count starts at 0 for each clip-region. Change name to
556 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
557 layout block, per score.
559 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
561 * lily/input-smob.cc: add equal_p for Input
563 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
566 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
568 * lily/prob.cc: Add equal_p predicate for Prob
570 * lily/translator.cc: small cleanup
572 * scm/document-music.cc: use data from translator listener
573 registration to generate documentation for event classes
575 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
577 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
579 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
581 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
583 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
585 * Documentation/topdocs/INSTALL.texi: Thinko.
587 * .cvsignore: Update.
589 * lexer-gcc-3.1.sh: Remove.
591 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
592 Update anonymous cvs access. Remove comment about gcc 3.0.4.
594 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
596 * VERSION: release 2.9.23
598 * lily/paper-column-engraver.cc (stop_translation_timestep): also
601 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
603 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
605 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
607 * input/regression/clip-systems.ly (Notes): new file.
609 * scm/lily.scm (define-scheme-options): add clip-systems option.
611 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
613 (dump-stencil-as-EPS): move bbox calculation from previous
615 (output-framework): use -dclip-systems
617 * scm/lily-library.scm (filtered-map): new function
619 * scm/framework-ps.scm (clip-system-EPS): new function.
620 (clip-system-EPSes): new function.
622 * lily/paper-column.cc: add rhythmic-location to interface
624 * scm/define-grob-properties.scm (all-user-grob-properties): add
625 rhythmic-location property.
627 * scm/clip-region.scm: new file: rhythmic-location data type and
628 system-clipped-x-extent function.
630 * ly/init.ly: use (scm clip-region)
632 * lily/paper-column-engraver.cc (stop_translation_timestep): set
633 rhythmic-location for paper column grobs.
635 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
637 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
639 * ly/engraver-init.ly: Remove obsolete comment on
642 * Documentation/user/instrument-notation.itely: Tune Ancient
643 Articulations figure, such that the episem actually shows.
645 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
646 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
648 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
651 2006-10-12 Graham Percival <gpermus@gmail.com>
653 * Documentation/user/ {some}: minor edits that were lost somehow.
655 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
657 * VERSION (PACKAGE_NAME): bump version.
659 * input/regression/lyric-tie.ly (texidoc): new file.
661 * Documentation/topdocs/NEWS.tely (Top): add new feature.
663 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
665 * scm/define-markup-commands.scm (tied-lyric): new function: split
666 string along ~ and reattach with U+203F (tie character) and
669 * scm/output-lib.scm (lyric-text::calc-text): new function.
671 * lily/lyric-engraver.cc (process_music): don't set 'text.
673 * scm/output-lib.scm (string-finger::calc-text): new function
674 (lyric-text::print): new function.
676 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
677 generic for fingering & string number. Use for string-finger.
679 * scm/define-music-types.scm (music-descriptions): add
682 * lily/fingering-engraver.cc (listen_string_finger): new function
684 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
686 * scm/define-context-properties.scm
687 (all-user-translation-properties): add stringFingerOrientations
689 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
691 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
692 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
694 * lily/dots.cc: Added style property for dots.
696 * mf/parmesan-heads.mf: Fix typo in comment.
698 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
699 adding longa head to feta font and removing obsolete default
702 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
704 * scm/output-lib.scm (fingering::calc-text): use origin
705 event-property, not music-property.
707 * lily/lilypond.rc.in: spell my name correctly.
709 2006-10-10 Joe Neeman <joeneeman@gmail.com>
711 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
712 already have a non-empty extent. Fixes estimation for Hara-kiri
715 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
717 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
720 * lily/ligature-engraver.cc: Remove unused #include.
722 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
723 Bugfix: remove method check_for_prefix_loss(Item *) from global
724 namespace to avoid namespace pollution.
726 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
728 * VERSION: release 2.9.22
730 * ly/generate-documentation.ly: update option name.
732 * lily/dynamic-text-spanner.cc (print): revert fix.
734 * scm/define-grob-interfaces.scm
735 (trill-pitch-accidental-interface):
736 add trill-pitch-accidental-interface
738 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
739 dereference if it's really a duration.
741 * lily/figured-bass-engraver.cc (process_music): clear spanner if
742 useBassFigureExtenders is not set.
743 (listen_bass_figure): record as new event if
744 useBassFigureExtenders not set. Fixes #103.
746 * scm/stencil.scm (circle-stencil): don't center stencil argument,
747 instead: move circle. Fixes #107.
749 * scm/define-grobs.scm (all-grob-descriptions): set
750 allow-loose-spacing for PaperColumn and
751 NonMusicalPaperColumn. Kludge for #110.
753 * lily/spaceable-grob.cc: add allow-loose-spacing property.
755 * lily/spacing-determine-loose-columns.cc (is_loose_column):
756 allow-loose-spacing property.
758 * scm/define-markup-commands.scm (postscript): gsave & grestore
759 around embedded PS. Do setlinewidth too. Fixes #109.
761 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
763 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
764 code. This patch fixes ligature brackets that were not at all
767 2006-10-08 Graham Percival <gpermus@gmail.com>
769 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
771 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
773 * scm/define-context-properties.scm: clarified docs (bug 91).
775 * Documentation/user/basic-notation.itely: document volta brackets
776 not aligning (bug 63).
778 * Documentation/user/ global.itely invoking.itely: ignore or
779 add warnings about texstr.
781 2006-10-08 John Mandereau <john.mandereau@free.fr>
783 * po/fr.po: update translation.
785 * po/: update msgids.
787 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
789 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
791 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
793 * Documentation/user/page.itely (Two-pass vertical spacing): add
794 documentation for two-pass spacing technique.
796 2006-10-06 Graham Percival <gpermus@gmail.com>
798 * Documentation/user/convert-ly.txt: new file; new
799 storage place for this file (moved from bugs/ CVS).
801 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
803 * lily/note-head.cc: Fixed programming_error message.
805 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
807 * scm/define-grobs.scm (pure-conversion): move pure-callback
810 * scm/script.scm (default-script-alist): set avoid-slur for turn,
811 marcato, stopped, thumb.
813 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
815 * lily/completion-note-heads-engraver.cc (process_music): don't
816 skimp on memory usage.
818 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
821 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
822 parenthesis item. This fixes premature Y-extent triggering. Fixes
825 * VERSION (PATCH_LEVEL): bump version.
827 2006-10-04 Graham Percival <gpermus@gmail.com>
829 * Documentation/user/advanced-notation.itely: added
830 info about instrument names for piano or other contexts,
833 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
835 * mf/feta-bolletjes.mf (solfa_quarter_width): use
836 solfa_base_notewidth as unit for non-DO-notes too.
838 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
840 * VERSION: release 2.9.21
842 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
845 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
847 * python/lilylib.py (progress): Minor fix.
849 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
851 * lily/note-name-engraver.cc: doc engraver.
853 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
855 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
857 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
860 * lily/stem-engraver.cc (make_stem): don't set duration-log
862 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
863 write snippet-names binary.
865 * python/lilylib.py (system): use os.system for mingw32
867 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
870 * scm/backend-library.scm: update email address.
872 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
875 * scm/define-grobs.scm (all-grob-descriptions): use callback to
878 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
879 handle dot creation separately.
881 * lily/tab-note-heads-engraver.cc (process_music): idem.
883 * lily/drum-note-engraver.cc (process_music): idem.
885 * lily/note-heads-engraver.cc (process_music): idem.
887 * lily/rest-engraver.cc: don't set duration-log.
889 * scm/output-lib.scm (string-number::calc-text): new function.
890 (note-head::calc-duration-log): new function.
892 * lily/fingering-engraver.cc (make_script): remove 'text setting.
894 * scm/output-lib.scm (fingering::calc-text): new function.
896 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
898 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
899 and include-eps-font -> include-eps-fonts
901 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
903 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
905 * lily/timing-translator.cc: list properties.
906 (start_translation_timestep): update internalBarNumber too.
908 * scm/define-context-properties.scm
909 (all-user-translation-properties): add internalBarNumber.
911 * input/regression/spacing-no-note.ly: new file.
913 * buildscripts/output-distance.py (link_file): verbosity for OSError.
915 * lily/book.cc: #include cleanup.
917 * lily/include/lily-guile-macros.hh: add assert to
918 scm_or_str2symbol(SCM).
920 * VERSION (PATCH_LEVEL): bump version.
922 * lily/spacing-spanner.cc (musical_column_spacing): handle
923 musical->nonmusical spacing case, where there is no spacing
924 wish. Fixes issue #61.
926 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
927 (pango_item_string_stencil): use logical rect horizontally (to
928 preserve spaces), ink_rect vertically (for time signatures).
930 * lily/font-metric.cc (word_stencil): new interface function
932 * input/regression/utf-8-mixed-text.ly: new file.
934 * lily/percent-repeat-engraver.cc (listen_percent): remove
937 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
938 non-dynamic scripts. Fixes #30.
940 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
942 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
944 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
945 SCM_UNDEFINED for non-existent data.
947 * lily/side-position-interface.cc (general_side_position): allow
948 optional current_offset argument for chaining, so combinations of side-position
949 and outside slur callback don't add up. Fixes issue #92.
951 * lily/pango-font.cc (pango_item_string_stencil): use
952 logical_rect. This prevents spaces after words from disappearing,
955 * VERSION: release 2.9.20
957 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
959 * scm/define-grob-properties.scm (all-user-grob-properties):
960 mention stencil as user settable.
962 2006-10-02 Joe Neeman <joeneeman@gmail.com>
964 * Documentation/user/page.itely (Page formatting):
965 document auto-first-page-number
967 * lily/page-breaking.cc (find_chunks_and_breaks):
968 * lily/paper-score.cc (calc_breaking): Follow changes to the
969 Constrained_breaking interface
971 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
972 here backwards, as an optimisation
973 (initialize): new function; move most of the code in resize () here
974 (combine_demerits): cache ragged_right_
975 (Constrained_breaking): constructor now takes the Paper_score
977 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
979 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
980 avoid parser lookahead for 0-ary functions.
982 * lily/translator.cc: Extract event classes from
983 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
985 2006-10-02 Heikki Junes <hjunes@gmail.com>
987 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
990 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
992 * scm/layout-page-layout.scm (page-breaking-wrapper): new
993 function. Call the page breaking function selected in the
994 `page-breaking' \paper variable, then the post processing function
995 chosen using the `page-post-process' \paper variable.
996 (line-height): new function. Return the height of a system.
997 (line-minimum-position-on-page): new function. Return the position
998 of a system on page (using the previous line position), only
999 considering between system padding.
1000 (stretchable-line?): new function. Says whether a line can be
1001 stretched (ie. is not a title nor a single staff system).
1002 (page-maximum-space-left): new function. Computes space left on a
1003 page, when all systems are separated by their padding.
1005 * lily/page-breaking.cc (breaking::make_pages): Move page post
1006 processing function call to page breaking wrapper (common to all
1009 * lily/paper-book.cc (book::pages): call the page breaking
1010 wrapper, instead of the page breaker directly
1012 * ly/paper-defaults.ly: Add \paper variables for page breaking
1013 wrapper and page post processing function. Make
1014 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1015 `system-maximum-stretch-procedure' variable for holding a function
1016 computing the maximum stretch a system allows.
1018 * scm/layout-page-dump.scm (write-page-breaks): computes the
1019 stretch to apply to systems on a page to minimize left
1020 space. Dump this stretch length.
1022 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1023 the system-stretch property of the tweak data to stretch the
1025 (includePageLayoutFile): Void function which includes the
1026 generated page-layout file if it exists and if the page layout
1027 dumping is not asked.
1028 (scoreTweak): if the score tweak named by the argument exists,
1031 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1033 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1034 handle correctly the case where there are multiple \noPageBreaks
1037 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1039 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1041 * abc2ly.py fix so that entering " -- " will translate to a -- in
1042 the lilypond instead of a " - - "
1044 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1046 * lily/align-interface.cc: fix typo
1048 * lily/dynamic-text-spanner.cc (print): Add a special case for
1049 trill spanner right sides.
1051 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1053 * lily/align-interface.cc (get_extents_aligned_translates): add
1054 support for padding variable.
1056 * lily/break-align-interface.cc (self_align_callback): oops: use
1057 loop variable in guard.
1059 * input/regression/repeat-percent-grace.ly: new file.
1061 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1062 remember first currentCommandColumn of a grace run. Fixes issue 70.
1064 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1065 move class definition to CC file.
1067 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1069 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1070 measure-long repeats.
1072 * flower/include/international.hh: include stdarg.h
1074 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1076 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1077 put_systems_on_pages to return an empty result, we need to assign
1078 demerits properly in that case.
1079 (put_systems_on_pages): Make the number of pages depend on the
1080 evenness of page_number. Add auto-first-page-number.
1081 (calc_subproblem): ensure that the page-number is even for the
1082 left-hand page. Warn if the first page-turn doesn't fit onto the
1083 first (right-hand) page.
1085 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1086 (min_page_count): make this publicly accessible
1087 (min_page_count): fix a bug when there are forced page breaks that
1088 was introduced when I made this loop run backwards
1089 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1090 replace space_systems_on_min_pages with these two. The logic in
1091 space_systems_on_min_pages was getting too convoluted and is better
1092 contained in page-turn-page-breaking.
1094 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1096 (breakable_column): typo
1098 * lily/source-file.cc (get_line): fix off-by-one error
1099 and clean up some of the logic
1101 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1103 * lily/page-breaking.cc (make_pages): honour the first-page-number
1106 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1108 * VERSION (PACKAGE_NAME): bump version.
1110 2006-09-26 Pal Benko <benko.pal@gmail.com>
1112 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1113 (the latter is the same as petrucci-f which is kept for compatibility)
1115 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1117 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1119 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1121 * lily/global-context.cc (run_iterator_on_me): break out of loop
1122 if moment doesn't increase.
1124 * scm/define-grob-properties.scm (all-user-grob-properties): add
1127 * lily/accidental.cc (after_line_breaking): read forced property.
1129 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1132 * input/regression/accidental-forced-tie.ly: new file.
1134 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1136 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1138 * lily/figured-bass-engraver.cc: only listen to rest events if
1139 ignoreFiguredBassRest is not set.
1141 * scm/define-context-properties.scm
1142 (all-user-translation-properties): add ignoreFiguredBassRest property
1144 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1146 * lily/paper-book.cc (get_system_specs):
1147 (set_system_penalty): fix breakbefore.
1148 We used to set a penalty on the system after the break, now we
1149 set a permission on the system before the break
1151 * lily/grob-property.cc: add scm debugging hooks into
1152 property modification
1154 * lily/context-property.cc:
1156 rename make_foo_from_properties to internal_make_foo and
1157 move it from context-property.cc to a member function of
1160 * lily/include/lily-guile-macros.hh:
1161 overload ly_symbol2scm macro so that there is no more need
1164 * lily/volta-repeat-iterator.cc:
1165 * lily/tweak-engraver.cc:
1166 * lily/tuplet-bracket.cc:
1167 * lily/span-bar-engraver.cc:
1168 * lily/script-engraver.cc:
1169 * lily/prob-scheme.cc:
1170 * lily/pointer-group-interface.cc:
1172 * lily/grob-scheme.cc:
1173 * lily/grob-property.cc:
1175 * lily/context-property.cc:
1176 * lily/break-substitution.cc:
1177 * lily/break-align-engraver.cc:
1178 * lily/axis-group-interface.cc:
1179 * lily/align-interface.cc:
1180 remove calls to internal_FOO
1182 * lily/system-start-delimiter-engraver.cc:
1183 * lily/parenthesis-engraver.cc:
1184 * lily/accidental-engraver.cc:
1185 remove calls to make_foo_from_properties
1187 2006-09-23 Graham Percival <gpermus@gmail.com>
1189 * Documentation/user/programming-iterfaces.itely: fix
1190 def-music-function -> define-music... leftover.
1192 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1194 * lily/page-spacing.cc (min_page_count): by running the loop
1195 backwards, we can calculate ragged_last properly.
1197 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1199 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1200 printfirst-page-number -> print-first-page-number
1202 * python/convertrules.py: corresponding rule.
1204 * Documentation/user/page.itely (Page formatting): Document the
1205 default values of all page layout parameters.
1207 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1209 * lily/lexer.ll: remove limitation on music function arity. New
1210 mode extratoken, which inserts extra EXPECT_* tokens after
1211 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1213 * lily/parser.yy: Change grammar for music function accordingly.
1215 * lily/include/lily-parser.hh: New method get_state, new member
1216 hidden_state. Works around a problem when parser fetches
1217 MUSIC_FUNCTION token but not the following EXPECT_* token.
1219 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1222 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1223 references to Music; use ASSIGN_EVENT_ONCE everywhere
1225 * lily/grob-info.cc: junk *music_cause
1227 * lily/music.cc: copy eventified articulations to stream event
1229 * lily/part-combine-iterator.cc: Cleanup using enums
1231 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1234 * lily/include/engraver.hh: Junk music.hh include
1236 * lily/stream-event.cc: Changed constructors
1238 2006-09-21 Graham Percival <gpermus@gmail.com>
1240 * Documentation/user/tweaks.itely (Fitting music onto fewer
1241 pages): change settings to avoid warning messages.
1243 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1245 * Documentation/user/tweaks.itely (Fitting music onto fewer
1246 pages): Add between-system-space setting.
1248 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1250 * lily/accidental-placement.cc (calc_positioning_done): don't
1251 trigger Y-extent calculation too early. Use pure_height instead.
1253 * lily/scale.cc (LY_DEFINE): new file.
1255 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1257 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1258 that happen at the start of a score: having a zero-length
1259 chunk was messing up min_system_count calculations.
1261 * lily/source-file.cc (get_line): lower_bound, not
1262 binary_search. Fixes problem where point-and-click would
1263 always point to the first line.
1265 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1267 * lily/accidental-placement.cc (calc_positioning_done): also put
1268 stems into accidental support.
1270 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1273 * scm/script.scm (default-script-alist): avoid-slur and
1274 slur-padding for portato script.
1276 * lily/stem-tremolo.cc (translated_stencil): new function.
1277 (height): use new function. Fixes tremolos on whole notes.
1279 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1282 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1284 * scripts/abc2ly.py (try_parse_comment): idem.
1286 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1287 bar_string iso. string.find()
1291 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1294 2006-09-18 Graham Percival <gpermus@gmail.com>
1296 * Documentation/user/basic-notation.itely: add bug
1297 warning about ties and octavation/clef.
1299 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1301 * VERSION (PACKAGE_NAME): release 2.9.18
1303 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1305 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1306 figure out midi file names right here.
1308 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1310 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1312 * scm/backend-library.scm: option naming: gs-font-load*s*
1314 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1317 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1319 * scm/define-music-types.scm (music-descriptions): remove
1320 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1321 Music::to_event doesn't complain.
1323 * lily/accidental-placement.cc (ape_compare):
1324 * lily/semi-tie.cc (compare):
1325 * lily/note-column.cc (shift_compare): replace by XXX_less
1327 * lily/tie-formatting-problem.cc (set_chord_outline):
1328 * lily/tie-column.cc (calc_positioning_done):
1329 * lily/system.cc (post_processing)
1331 * lily/stem.cc (note_head_positions)
1332 (calc_positioning_done):
1333 * lily/spanner.cc (do_break_processing)
1334 (find_broken_piece):
1335 * lily/span-bar.cc (print):
1336 * lily/semi-tie-column.cc (calc_positioning_done):
1337 * lily/rest-collision.cc (calc_positioning_done):
1338 * lily/program-option.cc (get_help_string):
1339 * lily/note-collision.cc (get_clash_groups):
1340 * lily/new-fingering-engraver.cc (position_scripts):
1341 * lily/keyword.cc (Keyword_table):
1342 * lily/hara-kiri-group-spanner.cc (request_suicide):
1343 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1344 * lily/accidental-placement.cc (calc_positioning_done):
1346 * lily/beam.cc (get_beam_segments):
1347 * lily/grob-array.cc (remove_duplicates):
1350 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1351 ragged-last-bottom = ##f (test the new page breaker)
1353 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1355 * scm/define-context-properties.scm
1356 (all-internal-translation-properties): remove properties that
1357 were used to communicate page-turn stuff to the paper-column
1360 * lily/lily-guile.cc (robust_scm2string): new function
1362 * lily/paper-column-engraver.cc: Clean up page turn stuff
1364 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1365 instead of cluttering up paper-column-engraver.cc
1367 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1369 * scm/layout-page-dump.scm (scm): export utility function names,
1370 to allow user writing cutsom dumping functions.
1372 * scm/layout-page-layout.scm: export utility function names to
1373 enable custom page breaking function writing. Tabify.
1374 (line-next-space): use ?-suffix only for predicates
1375 (page-maximum-space-to-fill): new function. Return the space
1376 between first and bottom system of a page, to give to
1378 (space-systems): use a space-to-fill argument (for instance as
1379 computed by page-maximum-space-to-fill) instead of computing
1380 internaly this space with the page height. That way, the caller
1381 can adjust the space to use.
1382 (make-page-from-systems, walk-paths): compute space to fill before
1383 calling space-systems.
1385 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1387 * scm/script.scm (default-script-alist): set paddings for every
1388 type here, increase for portato mark.
1390 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1393 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1395 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1396 use spanner::set-spacing-rods
1398 * lily/note-column.cc: reformat.
1400 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1401 step positioning for note/rest combinations.
1403 * input/regression/rest-note-collision.ly: new file.
1405 * scm/define-grobs.scm (all-grob-descriptions): add
1408 * flower/include/std-vector.hh: switch off again.
1410 * VERSION (PATCH_LEVEL): bump to 2.9.18
1412 * flower/include/std-string.hh: idem.
1414 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1416 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1418 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1421 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1423 * Documentation/user/page.itely: update page breaking documentation
1425 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1427 * lily/note-collision.cc (calc_positioning_done): only access
1428 first head if available.
1430 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1432 * scm/framework-ps.scm (output-preview-framework): use new name.
1434 * lily/program-option.cc (internal_set_option): use new names.
1436 * Documentation/user/SConscript (lilypond_book_flags): update -d
1439 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1440 output into other programs): new variable names.
1442 * scm/lily.scm (define-scheme-options): uniformize var names.
1444 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1445 tuplets_ is non-empty before popping.
1447 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1449 * lily/spanner.cc (find_broken_piece):
1450 * lily/spacing-spanner.cc (get_columns):
1451 * lily/source-file.cc (get_line):
1452 * lily/simple-spacer.cc (get_column_description):
1453 * lily/keyword.cc (lookup):
1454 use the new binary search.
1456 * flower/include/std-vector.hh: replace binary_search with
1457 a more STL-like version
1459 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1461 * lily/tie-performer.cc: remove unused last_event_ property.
1462 (class Tie_performer): add now_tied_heads_ property for
1463 partially-tied heads.
1464 (acknowledge_audio_element): when adding an Audio_note, put the
1465 note in now_tied_heads_ if the audio note is partially tied.
1466 (stop_translation_timestep): always include entries in
1467 now_tied_heads_ in heads_to_tie_.
1469 * lily/drum-note-performer.cc (process_music): look for tie-events
1470 in the articulations; pass to Audio_note constructor.
1472 * lily/note-performer.cc (process_music): look for tie-events in
1473 the articulations; pass to Audio_note constructor.
1475 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1478 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1479 include initializer in constructor.
1481 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1483 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1484 unless they are breakable. This fixes discrepancies between the forces
1485 calculated here and the forces calculated in get_line_configuration.
1487 * lily/grob.cc (pure_relative_y_coordinate): fix some
1488 mis-estimation that was happening with piano staves.
1490 * lily/constrained-breaking.cc (resize): don't choke if we get a
1491 measure that won't fit on a line.
1492 (combine_demerits): don't consider uniformity when ragged
1494 * lily/page-spacing.cc (solve): why the f* were there two of these?
1495 (calc_subproblem): properly handle the case where a system is taller
1498 * lily/system.cc (get_paper_system): ensure that all the permissions
1499 and penalties are passed to the paper systems.
1501 * lily/page-breaking.cc (create_system_list): support system-count.
1503 * scm/define-grobs.scm (pure-print-callbacks): add
1504 ly:script-interface::print
1506 * lily/page-spacing.cc (min_page_count): fix calculation of min
1507 pages if we are ragged and there are non-zero springs.
1509 * scm/layout-page-layout.scm: if the pure-height estimates are under
1510 the real height, allow space-systems to ignore padding if it is
1511 needed in order to fit the systems on one page
1513 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1515 (solve): fix performance problem. Make sure we always get at least
1518 * lily/page-breaking.cc (make_pages): include write-page-breaks
1521 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1523 * scm/define-grobs.scm: add the new slur-callback
1524 fix pure-relevant to not exclude grobs whose extent is already
1527 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1530 * lily/slur.cc (pure_height): new callback to estimate the height
1533 2006-09-02 Graham Percival <gpermus@gmail.com>
1535 * Documentation/user/invoking.itely: small update on
1536 MacOS X notes; thanks Trevor!
1538 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1540 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1542 * lily/lexer.ll: accept EOF in all states.
1544 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1546 * lily/source-file.cc (Source_file): always 0-terminate character
1547 array, to prevent Flex from barfing.
1549 * lily/global-context.cc (get_output): robustness: don't crash if
1550 no Score context found.
1552 * lily/include/book.hh (class Book): idem.
1554 * lily/include/context-def.hh (struct Context_def): idem.
1556 * lily/include/score.hh (class Score): don't derive from Input.
1558 * lily/book.cc (Book): add a copy ctor.
1560 * buildscripts/output-distance.py (FileLink.calc_distance): count
1561 orphans in distance too.
1563 * python/midi.c (midi_parse_track): robustness: don't read past
1566 * ly/performer-init.ly: add Control_track_performer, move
1567 Tempo_performer and Time_signature_performer to Score.
1569 * lily/score-performer.cc (acknowledge_audio_elements): override
1570 from base class: add to audio-columns
1572 * lily/control-track-performer.cc (add_text): new file: generate
1575 * lily/performance.cc: move output_header_track to
1576 Control_track_performer ()
1578 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1580 * lily/include/midi-item.hh (class Midi_channel_item): insert
1581 class into hierarchy, for items that can have a channel setting. Dehungarify.
1583 * lily/include/performer.hh (class Performer): remove
1584 play_element(); move functionality into announce/acknowledge.
1586 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1588 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1589 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1591 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1593 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1596 * lily/all-font-metrics.cc: remove TFM support.
1598 * lily/include/tfm.hh: remove TFM support, TFM reader.
1600 * lily/include/binary-source-file.hh: remove Binary_source_file.
1602 2006-08-27 Graham Percival <gpermus@gmail.com>
1604 * Documentation/topdocs/NEWS.itely: add @c marker for
1605 stuff I've processed.
1607 * Documentation/user/ various: info from NEWS.
1609 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1611 * lily/paper-column-engraver.cc (finalize): Oops, this change
1612 should have gone in on 2006-08-23
1614 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1616 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1617 quotes to quote arguments. Fixes Windows problem.
1619 * python/lilylib.py (progress): idem
1621 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1623 * scripts/musicxml2ly.py: fix for importing
1624 minor key signatures from MusicXML. (Phillip Kirlin)
1626 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1628 * python/musicxml.py:
1629 (Attributes.get_key_signature): now correctly retrieves mode from
1632 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1634 * lily/parser.yy (output_def_body): take ownership of identifier
1637 * Documentation/user/advanced-notation.itely (Metronome marks):
1638 update use of \tempo in \midi.
1640 * VERSION: release 2.9.16
1642 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1644 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1647 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1649 * input/regression/tie-chord-partial.ly: clarify example.
1651 * scm/define-music-properties.scm (all-music-properties): remove
1654 * ly/music-functions-init.ly: remove \untied.
1656 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1657 stream events and music events.
1658 (stop_translation_timestep): search acknowledged heads for
1661 * input/regression/tie-chord-partial.ly: new file.
1663 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1664 for \char markup command.
1666 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1668 * scm/define-music-types.scm (music-descriptions): consistency:
1669 Use solo-{one,two}-event iso. solo-[12]-event.
1671 * lily/part-combine-engraver.cc (process_music):
1672 Use solo-{one,two}-event iso. solo-[12]-event.
1674 * ly/declarations-init.ly (partCombineListener): add Timing as
1677 * flower/std-string.cc (string_copy): use copy ()
1679 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1681 2006-08-24 Graham Percival <gpermus@gmail.com>
1683 * Documentation/user/changing-defaults.itely, global.itely,
1684 lilypond-book.itely, page.itely: minor changes from mailist.
1686 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1688 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1691 * scm/define-context-properties.scm
1692 (translator-property-description): robustness: detect type errors
1693 in property definitions.
1695 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1696 after getting it from SCM.
1698 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1701 * lily/include/performer.hh (class Performer): strip get_tempo()
1704 * lily/midi-def.cc: strip file.
1706 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1708 * lily/include/context-def.hh (struct Context_def): use
1709 VIRTUAL_COPY_CONSTRUCTOR().
1711 * lily/source-file.cc: smobification.
1713 * lily/include/source-file.hh (class Source_file): smobify
1714 Source_file. Trim redundant members.
1716 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1717 clones after creation. This plugs a huge memory leak.
1719 * python/convertrules.py (FatalConversionError.sub_tempo):
1720 complete rule for \midi{ \tempo }
1722 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1724 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1726 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1728 * input/regression/optimal-page-breaking-hstretch.ly: test for
1729 ragged-last-bottom also
1731 * lily/paper-column-engraver.cc (finalize): make the end of a score
1732 breakable by default. This is to balance out a change in behaviour
1733 of the page-turn-breaker which no longer makes the end of a score
1736 * lily/paper-book.cc (pages): set the systems_ once the pages are
1739 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1740 Page_breaking interface.
1742 * lily/page-breaking.cc (class Page_breaking): make the interface
1743 more consistent and provide abstractions for dealing with
1746 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1747 algorithm. Use the new interface to Page_breaking.
1749 * lily/page-spacing.cc: better support for ragged-bottom and
1752 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1754 * python/convertrules.py (conv): warning on \tempo{}
1756 * ly/performer-init.ly: set tempoWholesPerMinute.
1758 * ly/midi-init.ly: remove \midi
1760 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1763 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1764 tempoUnitDuration for determining what to print.
1766 * lily/lyric-extender.cc: typo.
1768 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1770 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1773 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1775 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1776 eps-pad-boxes is set.
1778 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1780 * THANKS: update sponsors.
1782 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1784 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1786 * input/regression/tie-chord-untied.ly: new file.
1788 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1790 * scm/define-music-properties.scm (all-music-properties): add
1793 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1795 (headertext_nopics): sanitize no-examples text.
1797 * scm/page.scm (make-page-stencil): don't rely on extents of
1798 page-stencil. This fixes spurious space around .EPS files produced
1799 with the EPS backend.
1801 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1803 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1805 * lily/hara-kiri-engraver.cc (process_music): remember
1806 keepAliveInterfaces after processing \set
1808 * lily/lyric-extender.cc (print): support left/right-padding for
1811 * scm/documentation-generate.scm (string-append): revert lilypond/
1814 2006-08-20 Graham Percival <gpermus@gmail.com>
1816 * Documentation/user/lilypond.tely: clarification to
1817 license presentation (not to actual license).
1819 * Documentation/user/basic-notation.itely,
1820 instrument-notation.itely: minor changes.
1822 * input/ {regression, test}/+.ly: clarification to
1823 text (you can click on examples). Thanks, Mats!
1825 * input/manual/bar-lines.ly: adds ||: repeats.
1827 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1829 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1831 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1833 * Documentation/user/lilypond.tely: strip lilypond/ from info
1834 links, rename to category LilyPond
1836 * lily/pango-font.cc (description_string): new function.
1838 * VERSION: release 2.9.15
1840 * lily/spacing-engraver.cc (stop_translation_timestep): use
1841 Dscho's fix for spacing spanner.
1843 * scm/define-music-types.scm (music-descriptions): use
1844 apply-output-event for ApplyOutputEvent
1846 * lily/output-property-engraver.cc (listen_apply_output): rename
1847 from listen_layout_instruction.
1849 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1852 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1854 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1855 commandline args with contains, split by \n.
1857 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1858 write snippet-names file, call with -dread-file-list. Fixes
1859 command limitations on 64-bit systems.
1861 * input/regression/stencil-color-rotation.ly: new file.
1863 * lily/include/translator.hh (struct Acknowledge_information):
1864 revert: don't use Protected_scm in global objects, as GUILE can't
1865 handle gc_unprotect from automated destructors on MacOS X.
1867 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1868 color, not the original stencil. Fixes combinations of
1869 color/transparency/rotation.
1871 * scripts/lilypond-book.py (main): add --formats=eps for
1874 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1875 crash if spacing_ is nonexistent.
1877 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1879 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1880 \catcode`\@=12 in the LaTeX output.
1882 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1884 * scm/define-music-types.scm (music-descriptions):
1885 use sustain-event iso. sustain-pedal-event.
1887 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1889 * scripts/convert-ly.py: honour the -n command-line switch
1891 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1893 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1894 break specification.
1896 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1898 * Documentation/user: convert-ly the user manual
1900 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1902 * stepmake/aclocal.m4: version check patch (thanks MWD)
1904 * ly/music-functions-init.ly: robustness. Don't crash if
1905 currentBarNumber is not a number.
1907 * VERSION (PATCH_LEVEL): bump.
1909 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1911 * stepmake/aclocal.m4: better version check; handle fooX.Y
1914 * ly/performer-init.ly: instrument name fixup.
1916 * input/manual/chord-names-jazz.ly (banterProperties):
1917 instrumentName update
1919 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1921 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1923 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1924 function. Use hash tables to check membership.
1926 * lily/general-scheme.cc (LY_DEFINE): new function.
1928 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1930 * lily/include/translator.hh (struct Acknowledge_information): add
1933 * ly/music-functions-init.ly: change name to BreathingEvent
1935 * input/regression/*.ly: apply it.
1937 * python/convertrules.py (conv): better instrumentName conversion
1940 * scm/define-music-types.scm (music-descriptions): add
1941 line-break-event to LineBreakEvent music
1943 * lily/music.cc (to_event): don't crash if music type not set.
1945 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1948 * lily/spacing-engraver.cc (stop_translation_timestep): set
1949 spacing for proportional notation too.
1951 * scm/translation-functions.scm (format-bass-figure): inspect
1954 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1956 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1958 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1960 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1962 * scm/layout-page-layout.scm (make-page-from-systems): new function
1963 (optimal-page-breaks): use the new page-breaking calling convention
1965 * scm/define-context-properties.scm (all-user-translation-properties):
1968 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1969 revokePageTurns functionality. If there is a special barline within
1970 the breakable region, break there instead of at the end of the region.
1972 * lily/paper-book.cc (pages): use the new page-breaking calling
1975 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1977 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1979 * scripts/lilypond-book.py: insert \sourcefileline command in
1980 output, so lilypond error messages refer to the spot in the
1981 original .lytex / .itely sourcefile.
1983 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1985 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1986 space to next column for distance to fixed col.
1988 * VERSION (PACKAGE_NAME): release 2.9.14
1990 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1993 * lily/accidental-engraver.cc (process_acknowledged): don't create
1994 accidental for trill span event. This fixes spurious accidentals
1997 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
1999 * scm/define-grob-properties.scm (all-user-grob-properties):
2000 Clarify documentation of side-axis and direction. Thanks to Paul
2001 for the inspiration.
2003 * lily/bar-line.cc: Add documentation for "||:" also in the
2004 interface documentation.
2006 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2008 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2010 * lily/paper-column.cc (set_system): new function.
2012 * lily/spacing-engraver.cc (stop_translation_timestep): store
2013 SpacingSpanner refs in Paper_column.
2015 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2016 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2018 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2020 * lily/beam-engraver.cc (listen_beam): add method for
2021 Grace_beam_engraver too.
2023 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2025 * python/convertrules.py: Fix indentation bug that broke
2026 conversion of files older than 1.3.117.
2027 Fix escape error in the description for 2.9.6.
2029 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2031 * lily/*-engraver.cc: convert all try_music functions to listen_*
2034 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2035 enums to represent pedal types, and calculate more data statically.
2037 * scm/part-combiner.scm (recording-group-emulate): create a
2038 softcoded substitute for recording-group-engraver.cc.
2040 * lily/music.cc: make a common transpose function for events and
2043 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2044 ManualMelismaEvent, and obsoletes Melisma_translator.
2046 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2048 * input/test/instrument-name-align.ly: update version.
2050 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2052 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2053 Doc the --pdf flag to lilypond-book.
2055 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2057 * Documentation/topdocs/NEWS.tely (Top): add description.
2059 * input/regression/tuplet-full-length-note.ly: add file.
2061 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2062 always store axis group.
2064 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2066 * input/regression/instrument-switch.ly: new file.
2068 * lily/instrument-switch-engraver.cc (process_music): new file.
2070 * ly/engraver-init.ly: add Instrument_switch_engraver
2072 * ly/music-functions-init.ly: \instrumentSwitch
2074 * scm/define-context-properties.scm
2075 (all-user-translation-properties): add instrumentCueName
2077 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2079 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2081 * ly/music-functions-init.ly: music function \transposition.
2083 * lily/parser.yy (command_element): softcode \transposition.
2085 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2086 (process_music): oops.
2088 * lily/instrument-name-engraver.cc (start_spanner): new
2089 function. Create spanner when property changes.
2090 (stop_spanner): new function.
2092 * python/convertrules.py (conv): add rule.
2094 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2095 shortInstrumentName iso. instr.
2097 * scm/output-ps.scm (dashed-line): add phase argument to
2100 * lily/bar-line.cc (dashed_bar_line): new function.
2101 (compound_barline): support \bar "dashed".
2103 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2104 --output=DIR to DIR/BASE if it is a dir.
2106 * flower/file-name.cc (file_part): new function
2107 (dir_part): new function
2109 * lily/lily-parser-scheme.cc (LY_DEFINE):
2111 * DEDICATION: update
2113 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2115 * lily/instrument-name-engraver.cc: formatting.
2117 * python/convertrules.py (conv): bugfix for \epsfile.
2119 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2123 * lily/gourlay-breaking.cc: Oops, these should have been included
2126 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2128 * scripts/*.py (program_name): cleanup relocation snippets.
2130 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2132 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2134 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2135 page-breakable by default
2137 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2138 correctly calculated for a single-system page
2140 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2141 bigger than the second number
2143 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2144 acknowledge that we aren't satisfying constraints)
2146 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2149 * lily/grob.cc (pure_height): add minimum-Y-extent
2151 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2154 * lily/constrained-breaking.cc: convert code to use new Matrix class
2155 (get_best_solution): new function
2157 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2158 is a page with no systems
2160 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2162 * VERSION (PACKAGE_NAME): release 2.9.13
2164 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2167 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2169 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2171 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2174 * scm/define-grob-properties.scm (all-user-grob-properties):
2175 remove grace-space-factor.
2177 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2178 grace-spacing-interface
2179 (spacing-options-interface): add.
2181 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2183 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2185 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2186 GraceSpacing object.
2188 * lily/note-spacing.cc: fix prop list formatting
2190 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2191 beaming for grace notes too.
2193 * input/regression/spacing-grace.ly: update.
2195 * lily/grace-spacing-engraver.cc: new file.
2197 * lily/spacing-spanner.cc: add strict-grace-spacing.
2199 2006-07-20 Graham Percival <gpermus@gmail.com>
2201 * lily/parser.yy: compile fix.
2203 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2205 * scm/define-grobs.scm (all-grob-descriptions): typo.
2207 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2208 .eps extension from includegraphics.
2210 * scripts/lilypond-book.py (main): add support for --pdf.
2212 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2213 callback to compute common shortest duration.
2214 (set_springs): typo.
2216 * scm/define-grob-properties.scm (all-user-grob-properties): add
2217 strict-grace-spacing.
2219 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2220 support float_grace_columns_.
2222 * lily/spacing-options.cc (init_from_grob): new file.
2224 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2226 * input/regression/spacing-loose-grace.ly: new file.
2228 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2230 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2231 tupletFullLengthNote too. Choose right bound depending on value.
2233 * input/regression/tuplet-full-length-note.ly: new file.
2235 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2237 * lily/*-performer.cc: Converted try_music to listen_*
2239 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2240 as a stream-event internally. Introduce event_cause (), deprecate
2243 * scm/define-music-types.scm: Removed BusyPlayingEvent
2245 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2247 * Documentation/user/advanced-notation.itely (Font selection):
2248 Document how to get a list of available fonts using 'lilypond
2249 -dshow-available-fonts blabla'.
2251 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2253 * GNUmakefile.in: filter lily-XXX.pdf files.
2255 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2257 * scm/define-grob-properties.scm (all-internal-grob-properties):
2258 remove delta-pitch. Use delta-position everywhere.
2260 * scm/output-lib.scm (fall::print): use new order.
2262 * scm/output-ps.scm (path): reorder arguments.
2264 * scm/output-svg.scm (path): support for path primitive.
2266 * input/regression/bend-after.ly: new file.
2268 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2269 recipe for eps -> pdf conversion.
2271 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2273 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2276 2006-07-19 Graham Percival <gpermus@gmail.com>
2278 * input/manual/screech-boink.ly: moved to here.
2280 * input/screech-boink.ly: deleted.
2282 * scm/define-grob-properties.scm: clarify doc string.
2284 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2286 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2288 * scm/output-ps.scm (path): define path.
2290 * scm/define-stencil-commands.scm
2291 (ly:register-stencil-expression): add path.
2293 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2295 * ly/engraver-init.ly: add Fall_engraver
2297 * lily/parser.yy (music_function_event): allow musicfunction
2298 without music arg as music_function_event.
2300 * lily/grob-scheme.cc (LY_DEFINE):
2301 ly:grob-robust-relative-extent. New function.
2303 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2305 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2307 * scm/output-lib.scm (fall::print): new function
2309 * lily/fall-engraver.cc (stop_fall): new file.
2311 * ly/music-functions-init.ly: alphabetise.
2313 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2316 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2318 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2320 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2323 * lily/translator-group.cc (connect_to_context): non const error message.
2325 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2327 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2330 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2332 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2334 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2337 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2339 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2341 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2343 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2345 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2347 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2349 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2351 * scm/layout-page-layout.scm: Define module, tidy code, use more
2352 functions iso. a single big one.
2354 * scm/layout-page-dump.scm: move page dump functions used in two
2355 pass spacing to this file. Define module.
2357 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2360 * ly/paper-defaults.ly: use module layout-page-layout.
2362 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2364 * lily/music.cc: Revised MusicEvent event class. It now contains
2365 event data directly instead of encapsulating it in music. The
2366 previously used class is renamed to OldMusicEvent.
2368 * lily/stream-event.cc: Stream events are now probs.
2370 * lily/translator-group.cc, lily/translator.cc: Translators can
2371 now listen directly to stream events, by using macros
2372 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2374 * lily/arpeggio-engraver.cc: Converted to use new event system
2376 * THANKS: Corrected spelling mistake.
2378 2006-07-12 Graham Percival <gpermus@gmail.com>
2380 * Documentation/user/SConscript, make/lilypond-vars.make,
2381 input/GNUmakefile: doc build looks in input/manual instead
2384 * input/manual/ GNUmakefile, SConscript: build files for
2387 * input/test/ various: some files moved to input/manual/
2389 * Documentation/user/basic-notation.itely: small updates;
2390 thanks Kieren and Charles!
2392 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2394 * VERSION (PACKAGE_NAME): release 2.9.11
2396 * Documentation/topdocs/NEWS.tely (Top): update prop value
2398 * Documentation/user/basic-notation.itely (Tuplets): new property
2401 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2403 * python/convertrules.py (conv): tweaks.
2405 * VERSION (PATCH_LEVEL): bump version.
2407 * python/convertrules.py (conv): add rule for
2408 tupletNumberFormatFunction.
2410 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2411 tupletNumberFormatFunction.
2413 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2414 text through 'text callback.
2416 * lily/time-scaled-music-iterator.cc (construct_children): copy
2417 tweaks generated events.
2419 * scm/define-context-properties.scm
2420 (all-user-translation-properties): remove tupletNumberFormatFunction
2422 * lily/tuplet-engraver.cc (process_music): don't read
2423 tupletNumberFormatFunction
2425 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2428 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2430 * lily/global-context-scheme.cc: Separated ly:run-translator into
2433 * lily/score-engraver.cc, lily/score-performer.cc,
2434 scm/define-context-properties.scm: Make paper/midi output
2435 accessable as a context property.
2437 * lily/score-translator.cc, lily/score-context.cc: Removed.
2439 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2441 * scm/ps-to-png.scm (Module):
2442 * scm/framework-tex.scm (Module):
2443 * scm/framework-ps.scm (Module):
2444 * scm/backend-library.scm (Module):
2445 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2446 "dDEVICEHEIGHTPOINTS".
2448 2006-07-04 Graham Percival <gpermus@gmail.com>
2450 * Documentation/user/ various: general improvements to
2451 "working with lilypond files" section.
2453 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2455 * lily/sequential-iterator.cc: Change the default get_music_list
2456 to read elements-callback music property
2458 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2459 processing of multimeasure rests. Softcoded
2460 sequential-music-iterator.
2462 * lily/sequential-music-iterator.cc: Removed.
2464 2006-06-28 Graham Percival <gpermus@gmail.com>
2466 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2468 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2470 * lily/parser.yy: Wrap non-post-events in EventChords before
2471 assigning them to identifiers.
2473 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2475 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2476 gives correct vertical placement of \bar ":" in all staff
2477 sizes. Thanks Martial!
2479 2006-06-26 Graham Percival <gpermus@gmail.com>
2481 * Documentation/user/invoking.itely : minor update from mailist.
2483 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2485 * lily/ various: Introduce stream events of types Prepare,
2486 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2487 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2489 * lily/global-context*.cc: Time is now -inf before iteration
2492 * lily/include/context.hh: Removed unique_, init_
2494 * Documentation/topdocs/NEWS: Make the feathered beam example
2495 avoid triggering a bug.
2497 2006-06-24 Graham Percival <gpermus@gmail.com>
2499 * Documentation/user/ various: small additions from mailist.
2501 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2503 * ly/performer-init.ly: Add some missing links in the context
2504 hierarchy for MIDI output. There are probably some more missing!
2506 2006-06-21 Graham Percival <gpermus@gmail.com>
2508 * Documentation/user/ various: minor spelling fixes;
2509 thanks Dave Luttinen!
2511 * Documentation/user/ various: small clarifications;
2512 thanks Anthony Youngman!
2514 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2516 * po/fr.po: add \n appropriately.
2518 * lily/lexer.ll: remove ? from version-seen?
2520 2006-06-19 John Mandereau <john.mandereau@free.fr>
2522 * po/fr.po; update translation, by Jean-Charles Malahieude and
2525 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2527 * THANKS: add Markus Schneider.
2529 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2530 Staff_symbol_engraver
2532 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2533 replace staff_engraver
2535 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2538 * lily/staff-collecting-engraver.cc
2539 (acknowledge_end_staff_symbol): new function
2541 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2543 * lily/staff-collecting-engraver.cc
2544 (acknowledge_end_staff_symbol): new function.
2546 * lily/main.cc: switch on relocation by default.
2548 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2550 * lily/spacing-spanner.cc (musical_column_spacing): set
2551 compound_fixed_note_space to 0.0. Document why.
2553 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2554 range of inverse_hooke_
2555 (Simple_spacer): init completely.
2557 (get_line_configuration): don't use cols.resize(); it introduces
2560 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2562 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2564 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2565 try. Divide by beatlength.
2567 * input/regression/beaming-ternary-metrum.ly: update doc.
2568 add beatLength hack.
2570 * scm/music-functions.scm (make-time-signature-set): add
2571 standard-beat-grouping.
2573 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2575 * input/regression/tie-whole.ly: new file.
2577 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2578 cross center of note head in case of invisible stem.
2580 2006-06-16 Graham Percival <gpermus@gmail.com>
2582 * Documentation/user/ various: small fixes from mailist.
2584 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2586 * lily/breathing-sign.cc (offset_callback): idem.
2588 * lily/align-interface.cc (align_to_fixed_distance): remove
2591 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2594 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2596 * VERSION (PACKAGE_NAME): release 2.9.9
2598 * ly/lilypond-book-preamble.ly: add \version
2600 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2602 * scripts/lilypond-book.py (PREAMBLE_LY): include
2603 lilypond-book-preamble.ly
2605 * lily/stem.cc (get_beaming): return max of 0 and
2606 scm_ilength. Fixes slurring from/to beams.
2608 * ly/lilypond-book-preamble.ly: new file.
2610 * lily/slur.cc: add inspect-index feature.
2612 2006-06-13 Graham Percival <gpermus@gmail.com>
2614 * Documentation/user/tutorial.itely: trivial fix.
2616 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2618 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2619 all non-event music in the parser via MAKE_SYNTAX.
2621 * lily/parser-scheme.cc: Add ly:parser-error function
2623 * scm/paper.scm: fix typo
2625 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2629 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2632 * buildscripts/output-distance.py (test_compare_signatures):
2634 (read_signature_file): use new signature format.
2636 * scm/stencil.scm (write-system-signature): simpler signature
2639 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2642 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2643 stem_end_position, but estimate instead.
2645 * lily/tuplet-bracket.cc (calc_positions): look at
2646 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2647 brackets narrower than beams.
2649 * lily/lexer.ll: set version-seen? even if version is
2652 * lily/rest.cc (y_offset_callback): bugfix: decide position
2653 override based on scm_is_number(). Fixes \rest on center staff
2656 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2657 patterns for 16th triplets.
2659 2006-06-10 Graham Percival <gpermus@gmail.com>
2661 * Documentation/user/ page.itely, global.itely: editing
2664 * Documentation/user/ various: findex -> funindex.
2666 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2668 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2669 insert extra tuplet events.
2671 2006-06-10 Graham Percival <gpermus@gmail.com>
2673 * Documentation/user/programming-interfaces.itely: add
2676 * python/convertrules.py: add annotatefoo -> annotate-foo
2679 * Documentation/user/global.itely: start editing.
2681 * Documentation/user/page.itely: major editing, new spacing
2684 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2686 * scm/define-markup-commands.scm (wordwrap-markups): use
2687 output-def 'line-width if undefined.
2689 * HACKING: trim outdated info.
2691 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2693 * scm/define-grobs.scm (all-grob-descriptions): Add
2694 line-spanner-interface to all grobs that already have
2695 text-spanner-interface or dynamic-text-spanner-interface
2697 * scm/page.scm: Rename annotate{headers,systems,page}->
2700 * input/regression/page-spacing.ly,
2701 input/regression/page-layout-manual-position.ly: idem
2703 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2705 * lily/line-spanner.cc: cleanup property list.
2707 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2708 generator expressions (2.3 compat).
2710 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2712 * lily/vertical-align-engraver.cc: Make sure that the
2713 align{Above,Below}Context properties are included in the automatic
2716 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2718 * scm/paper-system.scm (paper-system-annotate): also annotate the
2719 estimated pure-Y-extent
2721 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2723 * lily/system.cc (break_into_pieces): set the estimated height
2724 of each child system
2726 * lily/stem.cc (pure_height): new pure-Y-extent callback
2728 * lily/staff-symbol-referencer.cc (callback): don't destroy
2729 the staff-position property
2731 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2732 consider_suicide into two functions
2734 * lily/constrained-breaking.cc (resize): use the new pure
2735 callbacks to estimate the height of a system
2737 * lily/axis-group-interface.cc (pure_group_height): new
2738 side-effect-free VerticalAxisGroup height-callback
2740 * lily/align-interface.cc (get_extents_aligned_translates):
2741 split align_elements_to_extents into two functions
2742 (get_pure_child_y_translation): new function
2744 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2746 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2748 * lily/paper-score.cc: cache break_indices and columns
2750 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2752 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2754 * lily/font-config.cc (init_fontconfig): do the init if
2755 cache_file, but don't look at cache_file.
2757 * input/regression/quote-tie.ly: new file.
2759 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2760 to Head_event_tuple, so we deal gracefully with ties on
2763 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2766 2006-06-08 Graham Percival <gpermus@gmail.com>
2768 * input/test/ smart-transpose.ly, reverse-music.ly:
2769 \applyMusic to music functions update, thanks Michael!
2771 2006-06-07 Graham Percival <gpermus@gmail.com>
2773 * input/test/ add-staccato.ly, add-text-script.ly,
2774 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2775 music functions update, thanks to Michael Meixner.
2777 * Documentation/user/music-glossary.tely: small fix
2780 * Documentation/user/ various: minor additions from mailist.
2782 * Documentation/user/lilypond.tely, basic-notation.itely:
2783 small test of @funindex. (works here)
2785 * input/test/font-table.ly: reduce size to partially
2786 de-ugly version in manual.
2788 * Documentation/user/page.itely: new file (split former
2789 "global issues" into "page settings" and "non-musical
2792 * Documentation/user/ various: fix @ref{}s to match
2793 new chapter names (above).
2795 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2797 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2799 2006-06-06 Graham Percival <gpermus@gmail.com>
2801 * Documentation/user/advanced-notation.itely: add example
2802 for segno/coda on barline.
2804 * tex/texinfo.tex: merge from upstream.
2806 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2808 * scripts/lilypond-book.py (process_snippets): Argument fix.
2811 * buildscripts/builder.py:
2814 * Documentation/user/SConscript: More SCons fixes.
2816 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2818 * lily/font-config.cc (init_fontconfig): Only initialize if
2819 global cache_file is found.
2821 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2823 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2826 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2828 * VERSION (PACKAGE_NAME): release 2.9.8
2830 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2831 function. Delay ledger modifying ledgered grobs to
2832 stop_translation_timestep(), to ensure that we're ledgering
2833 according to the new spanner.
2834 (acknowledge_staff_symbol): don't check for non-NULL
2835 staff_sym->get_bound()
2837 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2840 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2843 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2844 directly from srcdir/stepmake/aclocal.m4
2846 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2849 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2851 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2853 * lily/simple-spacer.cc (get_line_configuration): add
2854 keep-inside-line rods
2855 (struct Column_desc): add constructor
2856 (struct Rod_desc): add constructor
2857 (get_line_forces): check for forced page breaks here too
2859 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2860 support/elements cycles between InstrumentNames and AxisGroups
2862 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2864 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2866 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2867 make-txt-files target.
2869 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2870 make-txt-files target.
2872 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2874 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2877 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2879 * Documentation/user/instrument-notation.itely,
2880 input/regression/breathing-sign-ancient.ly,
2881 input/test/divisiones.ly: Removed redundant property settings for
2884 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2885 fix lyrics alignment problems. They are implemented now as scheme
2886 functions that add the appropriate unicode char to the first lyric
2887 event rather than adding a separate lyric event. Minor edit of
2890 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2892 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2893 pollute src dir with built .txt files, but install directly from
2894 Documentation/topdocs/out/
2896 * buildscripts/output-distance.py
2897 (ComparisonData.create_html_result_page): put version/directories
2900 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2903 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2904 Patch by Karl Hammar
2906 * buildscripts/readlink.py: add file.
2907 Patch by Karl Hammar
2909 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2911 * lily/tuplet-number.cc (print): prevent stencil from being
2914 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2916 * scm/stencil.scm (write-system-signature): explicitly
2917 -well, superfluously- close output port.
2919 * buildscripts/output-distance.py (main): oops. Add extra argument.
2921 2006-06-05 Graham Percival <gpermus@gmail.com>
2923 * Documentation/user/music-glossary.tely: clarified example
2924 from Francisco Vila, thanks!
2926 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2928 * input/regression/spacing-section.ly: new file.
2930 * lily/input.cc (programming_error): new function.
2932 * lily/spacing-engraver.cc (try_music): new function. Accept
2933 spacing-section-event
2935 * lily/spacing-spanner.cc (set_springs): take slices of all
2936 columns for spacing.
2938 * lily/include/paper-column.hh (class Paper_column): add
2939 Paper_column::compare.
2941 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2943 * scm/define-music-types.scm (music-descriptions): add
2946 * lily/music-iterator.cc (report_event): use programming_error for
2947 sending non-event error.
2949 * lily/input.cc (programming_error): new function
2951 * buildscripts/output-distance.py (main): use compare-XXX for
2953 (main): --threshold option, default at 0.30
2955 * output-distance.py (main): add --threshold option.
2957 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2959 * scm/paper-system.scm (paper-system-annotate): fix problem when
2960 annotating an empty system
2962 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2964 * GNUmakefile.in: reinstate old web tar/copying.
2966 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2968 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2969 nothing changes. (Erik S)
2971 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2974 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2976 * scm/define-markup-commands.scm (whiteout): do not force
2977 foreground color of argument markup to black.
2979 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2980 the left of the arrow, instead of below the arrow name, so that,
2981 when two little arrows are vertically stacked, their dimensions
2982 and name should not overlap. Add a color key parameter.
2984 * scm/paper-system.scm (paper-system-annotate): Annotate
2985 next-space+next-padding instead of next-space. Annotate space
2986 between next-padding and next-space+padding, respectively, and
2987 following system extent and refpoint-Y-extent. Use colors.
2989 * scm/page.scm (annotate-page): translate annotations slightly to
2992 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2994 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2995 fix for x-staff slurs. Thanks Joe!
2997 * buildscripts/output-distance.py
2998 (SystemLink.output_expression_change_count): keep track of changed
2999 details, and dump in details html page.
3001 * input/regression/figured-bass-staff.ly: add note about setting
3002 properties in Staff context.
3004 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3005 add slurs and ties to support too.
3007 * buildscripts/output-distance.py (main): set dest_dir
3008 argument. Add --max-count option.
3010 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3012 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3013 shortcuts for special unicode chars that are useful in chant
3014 notation. Revised exisiting and added new comments.
3016 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3018 * make/mutopia-rules.make: remove duplicate recipe.
3020 2006-06-02 Werner Lemberg <wl@gnu.org>
3022 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3023 Add support for U+0132 (IJ) and U+0133 (ij).
3025 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3027 * buildscripts/output-distance.py (FileLink): new class. collect
3028 info systems from one .ly file.
3029 (FileLink.link_files_for_html): further tweaks.
3031 2006-06-02 Graham Percival <gpermus@gmail.com>
3033 * tex/texinfo.tex: partial fix for @funindex.
3035 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3038 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3040 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3042 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3043 @example too. Backportme.
3045 2006-06-02 Graham Percival <gpermus@gmail.com>
3047 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3048 from Werner Lemberg.
3050 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3052 * Documentation/user/music-glossary.tely: additional spanish
3053 updates and a lyrics fix in an example.
3055 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3057 * scm/define-grob-properties.scm: Previous patch contained
3058 spurious line from another patch not yet committed. Fixed.
3060 * scm/define-grob-properties.scm: Add missing doc strings for
3063 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3065 * buildscripts/output-distance.py
3066 (ComparisonData.write_text_result_page): separate the scores, sort
3069 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3072 * buildscripts/output-distance.py (me_path): use argv[0] for
3074 (ComparisonData.img_cell): use colored borders.
3076 * scm/stencil.scm (write-system-signature): escape newlines too.
3077 (write-system-signature): use (1,-1) interval for empty interval
3079 2006-01-01 Graham Percival <gpermus@gmail.com>
3081 * Documentation/user/music-glossary.tely: Spanish updates
3082 from Francisco Vila.
3084 * Documentation/user/lilypond-book.itely: addition from
3087 * Documentation/user/ various: edits, small additions
3090 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3092 * GNUmakefile.in (tree-lib-prefix-current):
3093 (tree-share-prefix-current): Use version number in tree, add
3096 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3098 * GNUmakefile.in: write VERSION, again.
3100 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3101 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3103 * stepmake/aclocal.m4: robuster version detection.
3105 * buildscripts/output-distance.py
3106 (ComparisonData.create_html_result_page): copy only if file
3107 exists, fixup src paths.
3109 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3111 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3113 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3114 Another datarootdir reto.
3116 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3117 available. This should be moved to postinstall-lilypond-doc.
3119 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3121 * GNUmakefile.in: simplify local-WWW-post.
3122 remove -type l from find.
3124 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3125 fixes. Don't follow symlinks.
3126 (ComparisonData.create_html_result_page): remove previous results.
3127 insert ../python in path.
3129 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3131 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3133 * config.make.in (datadir): Add datarootdir to silence autoconf.
3135 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3137 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3139 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3141 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3142 slash beams too wide.
3144 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3146 * VERSION: release 2.9.7
3148 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3150 * lily/relocate.cc (read_relocation_dir): Do not blindly
3153 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3155 * lily/parser.yy: replace THIS by PARSER
3157 * Documentation/index.html.in: add link to test-results.html page.
3159 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3161 * scm/translation-functions.scm (format-bass-figure): translate
3162 digits over 10 to the left
3164 * scm/define-markup-commands.scm (translate-scaled): new markup.
3166 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3169 * ly/engraver-init.ly: add Figured_bass_engraver
3171 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3173 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3175 * lily/score-engraver.cc (announce_grob): only note START announces.
3177 * lily/include/engraver-group.hh (Translator_group):
3178 acknowledge_hash_table_ is now drul.
3180 * lily/engraver.cc (announce_end_grob): new method.
3182 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3184 * lily/translator-dispatch-list.cc (create): take start_end argument.
3186 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3187 acknowledge_static_array_ to drul
3189 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3191 * scm/define-grob-interfaces.scm
3192 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3194 * scm/define-grobs.scm (all-grob-descriptions): add
3195 BassFigureAlignmentPositioning
3197 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3198 number stays up to date. Backportme.
3200 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3202 * Documentation/user/basic-notation.itely (Bar lines): Document
3205 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3207 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3209 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3210 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3213 * Resurrect `scons lily' build.
3215 * SConstruct (symlink_tree): Bugfix: link
3216 music-drawing-routines.ps to file iso directory.
3218 * lily/SConscript: Remove kpath-guile from LIBS.
3220 * SConstruct (libdir_package_version): Typo.
3221 (configure): Comment-out fontforge for lack of fontforge.pc .
3222 Also add libdir* to environment.
3224 2006-05-30 Graham Percival <gpermus@gmail.com>
3226 * Documentation/user/ various: minor additions from mailist and
3229 2006-05-30 Paco <fravd@ya.com>
3231 * Documentation/user/music-glossary.tely: numerous corrections and
3232 some new translations.
3234 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3238 * buildscripts/output-distance.py
3239 (ComparisonData.create_html_result_page): new routine: summarise
3240 results in HTML page with images.
3241 (ComparisonData.create_text_result_page): create summary text files too.
3243 * GNUmakefile.in (web-ext): package .signature files too. They
3246 * scm/stencil.scm (write-system-signature): typo.
3248 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3250 * scm/stencil.scm (write-system-signature): better escaping.
3251 only write signature for music systems, not for markup systems.
3253 * scm/framework-ps.scm (output-framework): dump-signatures support
3256 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3258 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3259 for -dno-point-and-click
3261 * lily/grob.cc (get_print_stencil): don't read
3262 point_and_click_global to determine whether to set grob-cause.
3264 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3266 * buildscripts/output-distance.py (main): new function.
3267 (ComparisonData): new class.
3269 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3270 careful with generating new LedgerLineSpanners.
3272 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3274 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3275 context. This fixes double ledger lines in output.
3277 * lily/system.cc (get_paper_system): remove 3 layer limit.
3279 * buildscripts/output-distance.py (SystemLink.distance): new
3280 file. Compare signatures.
3282 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3284 * lily/grob-array.cc (remove_duplicates): rename from
3285 uniq(). Sort before calling uniq() so it actually works.
3287 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3289 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3290 \version from lilypond file snippet.
3291 (Lilypond_file_snippet.ly): oops. typo.
3292 (find_toplevel_snippets): urgh. again.
3294 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3295 prevent duplicated broken items in output.
3297 * scm/framework-eps.scm (output-classic-framework): only dump if
3298 dump-signatures is set.
3300 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3302 * scm/stencil.scm (write-system-signature): new routine: write
3303 python parseable signature of a separate paper system.
3306 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3308 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3312 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3314 * translator-group.cc: send music events to engravers in
3315 non-bottom contexts.
3317 * tuplet-engraver.cc: process tuplet brackets in correct order.
3319 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3321 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3322 arg 2 might point us to a new binary (patch by Karl Hammar)
3324 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3326 * VERSION (PACKAGE_NAME): release 2.9.6
3328 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3330 * Documentation/user/*.itely: 2nd
3331 attempt: replace funindex -> findex globally.
3333 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3335 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3336 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3338 * scm/define-music-display-methods.scm: display methods for
3339 breaks. Fix \applyOutput.
3341 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3343 * Documentation/user/macros.itexi: comment out funindex expansion.
3345 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3348 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3349 Karl Hammar. Backportme.
3351 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3353 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3355 * Documentation/user/programming-interface.itely (Running a
3356 function on all layout objects): idem.
3358 * Documentation/user/introduction.itely (Automated engraving):
3359 update \applyOutput syntax
3361 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3362 remove debugging hook.
3364 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3367 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3369 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3370 TEXI2DVI_FLAGS to texi2dvi invocation.
3372 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3374 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3375 works. More work is done by iterator now, and engraver has been
3376 very much simplified.
3378 * lily/translator-group.cc: try_music is now invoked through a
3381 * lily/*-iterator.cc: Massive cleanups. Junked
3382 try_music_in_children globally. Renamed try_music to report_event,
3383 and made that method descend to a bottom context automatically.
3385 * lily/event-iterator.cc: New file.
3387 * lily/output-property-iterator.cc,
3388 lily/old-lyric-combine-music-iterator.cc: Removed.
3390 * python/convert-rules.py: Modified the syntax for \applyOutput.
3392 2006-05-23 Graham Percival <gpermus@gmail.com>
3394 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3397 * Documentation/user/ various: stuff that might have helped
3398 to fix the pdf creation, plus some minor doc additions.
3400 * Documentation/user/changing-defaults.itely: remove @b from
3401 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3403 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3405 * lily/beaming-pattern.cc (beamify): deal with negative start
3406 moments for beaming patterns.
3408 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3410 * lily/beaming-info.cc (beamify): new function: read beatLength
3411 and beatGrouping from context.
3413 * input/regression/beam-beat-grouping.ly (Module): new file.
3415 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3417 * lily/beam.cc (get_beam_segments): generate events for
3418 max_connect_ case too.
3419 (get_beam_segments): read Stem::max-beam-connect.
3421 * input/regression/beam-single-stem.ly: new file.
3423 * lily/stem.cc (set_beaming): use #f as signaling value for
3426 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3428 * lily/beam.cc (set_beaming): read clip-edges property.
3429 (calc_direction): don't suicide for single stem.
3431 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3432 argument, remove 1<<15 hack. Remove clip_edges()
3434 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3436 2006-05-21 Graham Percival <gpermus@gmail.com>
3438 * Documentation/user/basic-notation.itely: reorg.
3440 * Documentation/user/ various: minor fixes.
3442 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3444 * lily/stencil-expression.cc (register_stencil_head): opps, append
3445 to cdr of static SCM object.
3447 2006-05-19 Graham Percival <gpermus@gmail.com>
3449 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3450 update framework for command index. DOC WRITERS: use @funindex
3451 instead of @cindex @code{}.
3453 * Documentation/user/ various: replace @cindex @code{} => @funindex
3455 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3457 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3458 case positions is set manually.
3460 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3462 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3465 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3467 * Documentation/user/changing-defaults.itely (Contexts explained):
3468 use absolute dimension for @image.
3470 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3471 out image for illustration too.
3472 ($(outdir)/%.png): add more png <-> eps rules.
3474 2006-05-17 Graham Percival <gpermus@gmail.com>
3476 * Documentation/user/ various: remove trailing whitespace, cosmetic
3477 change to reduce changes produced by diff.
3479 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3481 * lily/main.cc (do_chroot_jail): correctness tweak.
3483 * python/lilylib.py (system): import subprocess in system () only.
3485 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3487 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3488 variable. Backportme.
3490 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3492 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3494 2006-05-17 Werner Lemberg <wl@gnu.org>
3496 * lily/lexer.ll (init_signature_has_table): Add
3497 `scm-scm-music-music'.
3499 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3500 (Generic_prefix_music_scm): Add rule for it.
3502 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3503 `quoted-transposition' property.
3505 * ly/music-functions-init.ly (transposedCueDuring): New function.
3507 * scm/define-music-properties.scm (all-music-properties): Updated.
3509 * Documenation/topdocs/NEWS.itely: Document it.
3511 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3513 * python/lilylib.py (system): move import subprocess to system()
3516 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3518 * VERSION (PATCH_LEVEL): release 2.9.5
3520 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3523 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3525 2006-05-16 Graham Percival <gpermus@gmail.com>
3527 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3529 * Documentation/user/ various: minor fixes.
3531 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3533 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3535 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3537 * Documentation/user/advanced-notation.itely (Instrument names):
3538 Modified obsolete instruction on how to move instrument names away
3539 from the staves. Hmm, at second thought the bug probably has been
3540 solved, so the full bug description should probably be removed.
3542 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3544 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3545 currentCommandColumn.
3547 * lily/hairpin.cc (print): also add padding for non-neighbor
3550 * scm/define-context-properties.scm
3551 (all-user-translation-properties): add hairpinToBarline
3553 * input/regression/hairpin-to-barline.ly: new file.
3555 * lily/context.cc (internal_send_stream_event): thinko fix.
3557 * lily/tie.cc (set_default_control_points): robustness fix.
3559 * python/musicxml.py (Part.interpret): don't complain about
3560 incomplete measures.
3562 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3563 new music if last_event_chord() returned None.
3565 * python/musicxml.py (Part.interpret): skip back over chord notes.
3567 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3569 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3570 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3571 lily/slash-repeat-engraver.cc,
3572 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3573 iterator sends PercentEvents
3575 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3576 rework tuplets: send start/stop events to engraver
3578 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3579 dispatchers event-source and events-below to Context
3581 2006-05-15 Graham Percival <gpermus@gmail.com>
3583 * Documentation/user/README.txt: update info for doc writers.
3585 * Documentation/user/programming-interface.itely: integrate
3586 Nicolas' fixes for chapter rewrite.
3588 * Documentation/user/ various: minor fixes.
3590 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3592 * lily/clef-engraver.cc: cleanup.
3594 * Documentation/user/GNUmakefile: dist context-example.eps too.
3596 * lily/key-engraver.cc (create_key): use
3597 explicitKeySignatureVisibility for cancellation too.
3599 * lily/font-config.cc (init_fontconfig): don't close file if
3602 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3604 * Documentation/topdocs/NEWS.tely: niente and rotation news
3606 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3608 * lily/include/stencil.hh
3609 * lily/stencil.cc (rotate): new function. Makes it possible
3610 to rotate a stencil around a given offset.
3612 * lily/grob.cc (get_print_stencil): add rotation support
3614 * lily/stencil-interpret.cc (interpret_stencil_expression):
3615 add rotation support
3617 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3619 * scm/define-grob-properties.scm: add 'rotation property
3621 * scm/define-markup-commands.scm: add rotate markup command
3623 * scm/output-ps.scm: add rotation support in PostScript backend
3625 * scm/output-svg.scm: add rotation support in SVG backend
3627 2006-05-13 Graham Percival <gpermus@gmail.com>
3629 * Documentation/user/music-glossary.itely: French correction.
3631 * Documentation/user/programming-interface.itely: major
3632 new docs, some reorg, some info from Nicolas.
3634 * Documentation/user/ various: small fixes.
3636 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3638 * Documentation/user/programming-interface.itely (Markup
3639 programmer interface): Remove duplicate text.
3641 2006-05-12 Graham Percival <gpermus@gmail.com>
3643 * Documentation/user/context-example.eps: new file.
3645 * Documentation/user/changing-defaults.itely: set up file to
3648 * Documentation/user/programming-interface.itely: changes
3651 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3653 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3655 2006-05-11 Graham Percival <gpermus@gmail.com>
3657 * Documentation/user/programming-interface.itely: first round of
3658 editing and merging emails from Nicolas.
3660 * Documentation/user/scheme-tutorial: minor edit.
3662 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3664 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3666 (Xml_node.message): use it.
3668 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3669 oops. Add duration argument.
3671 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3673 * lily/paper-column-engraver.cc (make_columns):
3674 * scm/define-grobs.scm: Revert my previous change and set the default
3675 in define-grobs.scm instead.
3677 2006-05-09 Graham Percival <gpermus@gmail.com>
3679 * Documentation/user/changing-defaults.itely: general editing,
3680 info about \set and \override.
3682 * Documentation/user/tweaking.itely, advanced-notation.itely:
3683 fixes from Dave Luttinen, thanks!
3685 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3687 * lily/paper-column-engraver.cc (make_columns): By default, a column
3688 needs to be breakable.
3690 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3692 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3694 (musicxml_time_to_lily): idem
3695 (musicxml_key_to_lily): idem
3696 (instrument_drumtype_dict): dict for supported drumtypes.
3697 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3698 moments and pending mm rests
3699 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3700 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3701 (musicxml_voice_to_lily_voice): add mode change.
3702 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3703 speed and less memory usage (factor 5 to 10).
3704 (convert): write -defs.ly and driver file separately so people
3705 can script their own part extraction.
3707 * python/musicxml.py (minidom_demarshal_node): new function:
3708 separate minidom handling.
3709 (lxml_demarshal_node): new function: support lxml.etree too.
3710 (Xml_node.message): new function: verbose error message, with XML
3711 path to offending node.
3712 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3713 (Part_list.generate_id_instrument_dict): new method: collect
3714 instrument names, to be able to set drum_type.
3715 (Part.interpret): handle underfull measures
3716 (Part.interpret): assign instrument names.
3718 * python/musicexp.py (Output_printer.close): new method
3719 (MusicWrapper.print_ly): new class: support other modes,
3721 (BarCheck.print_ly): new class. Support bar checks, with comments
3722 and fancy barchecks.
3723 (NoteEvent.__init__): also set drum_type for drum notes.
3724 (MultiMeasureRest.lisp_expression): dump mm rests.
3726 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3727 line-break-permission if forbidBreak is not set.
3729 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3731 * scm/define-context-properties.scm:
3732 * scm/define-grob-properties.scm:
3733 * scm/define-grobs.scm:
3734 * scm/define-music-display-methods.scm:
3735 * scm/define-music-properties.scm:
3736 * scm/define-music-types.scm:
3737 * scm/music-functions.scm:
3738 * ly/declarations-init.ly:
3739 * lily/include/constrained-breaking.hh:
3741 * lily/spaceable-grob.cc:
3742 * lily/simple-spacer.cc:
3743 * lily/paper-score.cc:
3744 * lily/paper-column.cc:
3745 * lily/paper-column-engraver.cc:
3747 * lily/gourlay-breaking.cc:
3748 * lily/constrained-breaking.cc:
3749 * python/convertrules.py:
3750 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3751 "page-break-penalty" and "line-break-permission".
3752 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3753 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3755 * lily/bar-engraver.cc:
3756 * lily/beam-engraver.cc:
3757 * lily/forbid-break-engraver.cc:
3758 * lily/ligature-engraver.cc:
3759 * lily/paper-column-engraver.cc:
3760 * lily/percent-repeat-engraver.cc:
3761 * lily/score-engraver.cc:
3762 * lily/score-engraver.hh:
3763 * lily/paper-column-engraver.hh:
3764 Inter-engraver communication regarding line breaks is done through context
3765 properties (Score.forbidBreak) instead of function calls.
3767 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3769 * VERSION (PACKAGE_NAME): release 2.9.4
3771 2006-05-08 Graham Percival <gpermus@gmail.com>
3773 * Documentation/user/working.itely: proofreading from Dave
3776 * Doucmentation/user/README.txt: updated with manual style info.
3778 * Documentation/user/ various: trim linewidth to 78 chars.
3780 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3782 * scm/define-grob-properties.scm (all-internal-grob-properties):
3783 remove chord-tremolo property.
3785 * lily/beam.cc (get_beam_segments): don't use stem position as
3786 base for broken ends.
3788 2006-05-06 Graham Percival <gpermus@gmail.com>
3790 * Documentation/user/putting.itely: proofreading from Dave
3793 * Documentation/user/ various: more reorg and clarifications.
3795 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3797 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3799 * ly/music-functions-init.ly: new function featherDurations
3801 * lily/beam.cc: read grow-direction for feathered beaming.
3803 * Documentation/topdocs/NEWS.tely (Top): typo.
3805 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3807 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3810 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3811 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3812 used by music streams.
3814 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3815 lily/stream-event.cc, lily/stream-event-scheme.cc,
3816 lily/listener.cc, lily/scheme-listener.cc,
3817 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3818 lily/include/stream-event.hh, lily/include/listener.hh,
3819 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3820 Created data structures for music streams.
3822 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3824 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3825 construction of a beam.
3828 * flower/include/std-vector.hh (default_compare): use only one comparison.
3830 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3831 (note-by-number): further attachment fixes.
3833 * scm/lily-library.scm (ordered-cons): new function.
3834 (interval-index): new function
3836 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3838 * lily/note-head.cc (get_stem_attachment): new function.
3840 * scm/define-markup-commands.scm (note-by-number): read 'style
3843 * input/regression/markup-note.ly: show note-head style option.
3845 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3848 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3850 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3852 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3854 * lily/include/constrained-breaking.hh: GCC 4 fix.
3856 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3858 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3859 Replace it with functions get_line_forces and get_line_configuration.
3860 (class Simple_spacer): Make data private.
3861 Rewrite compression algorithm to be faster and simpler.
3863 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3864 * lily/gourlay-breaking.cc (solve):
3865 * lily/constrained_breaking.cc (space_line):
3866 Change it to the new simple-spacer code.
3868 * lily/paper-score.cc (get_paper_systems):
3871 Delay breaking the systems until they are requested.
3872 (find_break_indices):
3873 Use vsize for indices.
3875 Move the "Calculating line breaks" message here.
3877 * lily/system.cc (pre_processing):
3878 Move the "Calculating line breaks" message away from here.
3879 (break_into_pieces):
3880 Allow multiple calls to this function in sequence (with touching-but-
3881 not-overlapping breakpoints).
3883 * lily/constrained-breaking.cc:
3884 Replace most of the get_XXXX functions with get_line_details.
3885 Only calculate the force for each line. Calculate configurations only
3886 for the lines we will actually use.
3887 Replace cols_ with lines_.
3889 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3891 * mf/GNUmakefile (depth): remove FC_FIND.
3893 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3895 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3897 * scm/framework-ps.scm (write-preamble): new function.
3898 (write-preamble): load mac fonts via fondu, even if gs-font-load
3901 2006-05-03 Werner Lemberg <wl@gnu.org>
3903 * mf/GNUmakefile (FC_FIND): Fix typo.
3905 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3907 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3909 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3911 * stepmake/aclocal.m4: run python-config for crosscompiling
3914 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3915 -f png for HTML, TEXINFO formats.
3917 * input/tutorial/lbook-html-test.html: new file.
3919 * lily/include/tie-formatting-problem.hh (class
3920 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3921 [column, direction]. This fixes laissez vibrer ties.
3923 * flower/include/tuple.hh (struct Tuple2): new file.
3925 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3926 $(FCMATCH), only if $(NCSB_DIR) not set.
3928 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3930 * config.make.in (DOCUMENTATION): set FCMATCH.
3932 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3934 2006-05-03 Graham Percival <gpermus@gmail.com>
3936 * Documentation/user/ various: final round of reorg.
3938 * Documentation/user/instrument-notation.itely: some more
3939 fixes from Eduardo, thanks!
3941 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3943 * VERSION (PACKAGE_NAME): release 2.9.3
3945 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3947 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3949 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3951 * scm/define-grob-properties.scm (all-user-grob-properties):
3952 Correct typo, thanks to Eduardo.
3954 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3956 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3958 * buildscripts/lilypond-words.py (F): indent fix.
3960 * input/regression/tie-arpeggio-collision.ly: new file.
3962 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3963 function: store outlines per column rank.
3965 * lily/include/tie-configuration.hh (class Tie_configuration): add
3966 column_ranks_ to specification and configuration, to distinguish
3967 between ties for different heads in arpegiated chords.
3969 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3971 * *.py: more 4 space indents.
3973 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3975 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3977 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3979 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3981 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3983 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
3985 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3987 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
3989 * python/convertrules.py (conv): indent 4 for python files.
3991 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
3993 * Documentation/user/changing-defaults.itely (Creating contexts):
3994 Clarify \new semantics.
3996 2006-04-28 Graham Percival <gpermus@gmail.com>
3998 * Documentation/user/ various: major new sections in the
3999 Learning manual, slight reorg elsewhere.
4001 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4003 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4005 * scm/framework-ps.scm (output-framework): remove PageMedia
4007 2006-04-27 Graham Percival <gpermus@gmail.com>
4009 * Documentation/user/ tweaks.itely, working.itely: new
4010 files, being more advanced "learning manual" chapters.
4012 * Documentation/user/ tutorial, putting, lilypond: reorg.
4014 2006-04-26 Graham Percival <gpermus@gmail.com>
4016 * input/regression/lyric-combine-polyphonic.ly: fixed test
4017 (no more "can't find context `one'" error).
4019 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4021 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4023 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4025 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4027 * lily/relocate.cc (read_relocation_dir): new function.
4029 2006-04-26 Graham Percival <gpermus@gmail.com>
4031 * Documentation/user/instrument-notation.itely: a few more fixes
4032 from Eduardo, thanks!
4034 * Documentation/user/README.txt: new file; contains info on
4035 style that used to be in lilypond.tely.
4037 * Documentation/user/ various: first round of doc reorg.
4039 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4040 graphic; this probably causes problems on some pdf
4041 viewers, notably Adobe Acrobat.
4043 2006-04-24 Graham Percival <gpermus@gmail.com>
4045 * Documentation/user/instrument-notation.itely: many alterations
4046 to Vocal music, from Eduardo Viera.
4048 2006-04-23 Graham Percival <gpermus@gmail.com>
4050 * Documentation/user/instrument-notation.itely: fix \new
4051 instead of \context problem.
4053 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4055 * lily/relocate.cc (expand_environment_variables): new function.
4057 (read_relocation_file): id.
4059 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4061 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4063 * ly/engraver-init.ly: remove old comments from TabVoice
4065 2006-04-20 Graham Percival <gpermus@gmail.com>
4067 * Documentation/user/instrument-notation.itely: added Erlend's
4068 latest doc patch, thanks!
4070 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4072 * lily/include/slur.hh:
4074 * lily/phrasing-slur-engraver.cc:
4075 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4076 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4077 Slur_engraver:: and putting it in
4078 Slur::auxiliary_acknowledge_extra_object ().
4080 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4082 * lily/note-collision.cc: fix a comment
4084 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4086 * stepmake/bin/add-html-footer.py: fix footer position in
4087 generated html files: before </body> and </html> tags.
4089 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4091 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4092 Earlier successive `make' commands finally compiled ok.
4094 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4096 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4098 * lily/include/stem-tremolo.hh:
4099 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4103 * lily/include/lookup.hh: add rotated_box ()
4105 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4107 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4108 been generated. Fixes "can't get `--help'" bug after make clean.
4110 * THANKS: alphabetize contributors.
4112 2006-04-17 Graham Percival <gpermus@gmail.com>
4114 * Documentation/user/instrument-notation.itely: added Erlend's
4115 tabs and banjo doc patch. Thanks!
4117 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4119 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4121 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4123 * scm/output-lib.scm: add some more predefined string tunings.
4125 * Documentation/user/instrument-notation.itely: and doc them.
4127 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4129 * ly/engraver.ly: Remove obsolete comments.
4131 * ly/gregorian-init.ly: Define default layout block.
4133 * input/puer-fragment.ly: Updated and extended.
4135 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4137 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4138 pdf conversion behaviour.
4140 * flower/file-name.cc (dir_name)
4141 (get_working_directory): Move from relocate.cc.
4143 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4145 * lily/relocate.cc: Encapsulate sys/stat.h in
4148 2006-04-14 Graham Percival <gpermus@gmail.com>
4150 * Documentation/user/ various: small updates from Cameron
4151 and Juergen, thanks!
4153 * Documentation/user/ various: small updates of my own.
4155 * THANKS: 2.7 -> 2.8.
4157 2006-04-11 Graham Percival <gpermus@gmail.com>
4159 * scm/define-context-properties.scm: typo.
4161 * Documentation/user/ : many more small updates.
4163 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4165 * scm/define-music-types.scm: disposed "docme".
4167 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4169 * lily/hairpin.cc: make niente circles a bit smaller.
4171 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4173 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4174 get-pfa and get-*-fonts targets.
4176 2006-04-10 Graham Percival <gpermus@gmail.com>
4178 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4179 music-glossary, programming-interface: more minor fixes
4182 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4184 * scm/define-context-properties.scm: another old \property update.
4185 This time tested for compiling!
4187 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4189 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4191 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4193 * scm/define-context-properties.scm (all-user-translation-properties):
4194 * Documentation/user/global.itely (Page formatting): Compile fix.
4196 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4198 * Documentation/user/advanced-notation.itely (Polymetric
4199 notation): Update the example to use the "+" symbol and add link
4200 to input/test/compound-time.ly.
4202 2006-04-08 Graham Percival <gpermus@gmail.com>
4204 * scm/define-grob-properties.scm: clarify docs for #'direction.
4206 * scm/define-context-properties.scm: update old \property override.
4208 * Documentation/user/ advanced-notation, global, lilypond-book:
4209 more minor doc updates.
4211 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4213 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4215 * scm/backend-library.scm (search-gs): oops.
4217 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4219 * scripts/lilypond-book.py (output): use base, not filename for href.
4221 * scm/backend-library.scm: only look for gs.
4223 * scripts/lilypond-book.py (output): fix printfilename.
4225 * lily/parser.yy (music_function_musicless_prefix): fold together
4226 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4228 * lily/slur.cc (print): only set font-size if not set yet.
4230 * lily/slur-configuration.cc (add_score): improved layout of debug
4233 2006-04-05 David Feuer <David.Feuer@gmail.com>
4235 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4236 (draw_circle): Hopefully fixed regression.
4237 Improved documentation for several procedures.
4239 2006-03-04 Werner Lemberg <wl@gnu.org>
4241 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4243 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4245 * scripts/musicxml2ly.py (bindir): add dynamic
4248 2006-04-04 Graham Percival <gpermus@gmail.com>
4250 * Documentation/user/ basic-notation, advanced-notation, putting,
4251 instrument-notation, invoking, lilypond, THANKS: another ream of small
4252 fixes from the Doc Helpers.
4254 2006-04-03 David Feuer <David.Feuer@gmail.com>
4256 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4258 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4260 * Cleaned up interfaces between PostScript and Scheme, and moved
4261 computations from PostScript to Scheme:
4263 * music-drawing-routines.ps
4264 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4265 with stroke_and_fill throughout.
4266 (euclidean_length, print_letter, draw_box): Deleted unused
4267 procedures. If someone needs draw_box, implement it using
4268 draw_round_box; don't duplicate code.
4269 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4270 Refactored/cleaned up interfaces.
4273 * output-ps.scm: reordered arguments to PostScript functions to
4274 match new interfaces
4275 (glyph-string): Rewrote glyph-string.
4276 (grob-cause): Replaced string-append with format.
4277 (repeat-slash): Rewrote to do computation here.
4278 (round-filled-box): Rewrote to do computation here.
4280 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4282 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4284 * stepmake/stepmake/toplevel- targets.make: print help info about
4287 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4289 * input/regression/hairpin-circled.ly: new file
4291 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4293 * lily/hairpin.cc (print): add support for circled tip
4295 * scm/define-grob-properties.scm: add circled-tip parameter
4297 * scm/define-grobs.scm: init circled-tip to false
4299 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4301 * scm/music-functions.scm (quote-substitute): set
4304 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4306 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4309 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4311 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4313 2006-03-31 David Feuer <david.feuer@gmail.com>
4315 * scm/framework-ps.scm:
4317 * scm/output-ps.scm: glyph-string now produces smaller, more
4318 readable, and probably faster PostScript. Several findfont
4319 scalefont setfont instances changed to selectfont
4320 Hacked-up string-appends changed to formats.
4322 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4324 2006-03-30 Graham Percival <gpermus@gmail.com>
4326 * scm/lily-library.scm: make "no version" warning message more polite.
4328 * lily/music.cc: add double quotes to failed octave check.
4330 * Documentation/user/ advanced-notation, changing-defaults,
4331 instrument-notation, invoking, music-glossary: whole bunch of minor
4334 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4336 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4337 $(buildscriptdir) iso. depth.
4339 * VERSION (PACKAGE_NAME): release 2.9.1
4341 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4343 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4345 * VERSION (PATCH_LEVEL): bump version number.
4347 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4350 * lily/pango-font.cc (pango_item_string_stencil): use
4353 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4354 $(outdir)/emmentaler-%.svg): remove canary.
4356 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4357 glyphnames if we have a ttf font.
4359 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4361 * Documentation/user/advanced-notation.itely (Font selection):
4362 Corrected reference to the font-family-override.ly example.
4364 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4366 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4367 stem-tremolo object in the stem (or else the stem might not be
4370 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4372 * lily/ttf.cc (print_trailer): only print existing glyphs.
4374 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4376 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4377 position the tremolo based on the position of the notehead.
4379 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4380 notes and update the texidoc line with the new positioning rules.
4382 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4384 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4386 * scripts/lilypond-book.py (Module): set default for linewidth if
4389 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4391 * VERSION (PACKAGE_NAME): release 2.9.0.
4393 * input/regression/stem-tremolo-position.ly: new file.
4395 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4397 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4399 * lily/stem-tremolo.cc (print): position
4400 the tremolo depending only on the end of the stem
4401 and not on the notehead
4402 (raw_stencil): center, on the middle staff line, the
4403 flag that is closest to the end of the stem (previously
4405 (calc_width): add this callback to shorten a tremolo when
4406 it is beamed or it is stemup with a flag
4407 (style): add this callback to make a tremolo rectangular when
4408 it is beamed or it is stemup with a flag
4409 (rotated_box): this is like Lookup::beam but makes a rotated
4410 rectangle instead of a parallelogram
4412 * lily/stem.cc (calc_stem_info): make sure the stem
4413 is long enough to fit the tremolo
4414 (calc-length): reduce the length of tremolo stems since the
4415 tremolo code is now capable of better positioning
4417 * scm/define-grobs.scm: make calc_width the default beam-width
4418 callback for stem-tremolo and add the style callback
4420 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4422 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4425 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4427 * lily/ttf.cc (make_index_to_charcode_map): restore old
4430 2006-03-28 Werner Lemberg <wl@gnu.org>
4432 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4434 2006-03-28 Graham Percival <gpermus@gmail.com>
4436 * THANKS: update for 2.9, add section for Documentation helpers.
4438 * Documentation/topdocs/NEWS.tely: compile fix.
4440 * Documentation/user/ basic-notation, global, advanced-notation,
4441 examples.itely: minor fixes from mailist.
4443 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4445 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4448 * lily/ttf.cc (print_trailer): use it.
4450 * lily/pango-font.cc (get_unicode_name): new function.
4452 * lily/ttf.cc (make_index_to_charcode_map): move function from
4454 (print_trailer): substitute uniXXXX name if applicable.
4456 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4457 (pango_item_string_stencil): use it to generate uniXXXX names.
4459 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4460 note heads, for uniform widths in shape note output.
4461 (overdone_heads): hmm. remove them again.
4463 * scripts/lilypond-book.py (output): add links to filenames.
4465 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4467 * lily/note-collision.cc (get_clash_groups): only consider when
4468 Note_column::dir <> CENTER.
4470 * scripts/lilypond-book.py (get_option_parser): init output_name
4473 2006-03-24 Graham Percival <gpermus@gmail.com>
4475 * Documentation/topdocs/NEWS.tely: add @end itemize
4477 * Documentation/user/ global, advanced-notation: minor
4480 2006-03-23 Graham Percival <gpermus@gmail.com>
4482 * Documentation/user/ lilypond.tely, music-glossary,
4483 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4485 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4487 * mf/GNUmakefile: don't install .enc files.
4489 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4491 * VERSION (PATCH_LEVEL): bump to 2.9.0
4493 2006-03-22 Graham Percival <gpermus@gmail.com>
4495 * Documentation/user/advanced-notation.itely: minor fixes
4498 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4500 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4502 * branch lilypond_2_8
4504 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4506 * scripts/lilypond-book.py (samefile): new function, for windoze
4509 2006-03-21 Graham Percival <gpermus@gmail.com>
4511 * ly/engraver-init.ly: add info about StaffGroup.
4513 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4515 * input/regression/stem-direction-context.ly: idem.
4517 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4521 * input/regression/page-layout-twopass.ly: comment out \markup so
4524 * lily/instrument-name-engraver.cc (finalize): add to instrument
4525 name global System. This also fixes chopped instrument names, but
4526 doesn't crash when there are slurs/beams.
4528 * lily/slur-configuration.cc (add_score): disallow negative slur
4531 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4533 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4535 * lily/instrument-name-engraver.cc (process_music): kludge: add
4536 InstrumentName spanner to axis group of left bound. Fixes chopped
4537 off instrument names in EPS images.
4539 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4541 * scripts/abc2ly.py (option_parser): update to 2.7.40
4543 2006-03-20 Graham Percival <gpermus@gmail.com>
4545 * THANKS: move small doc contributors to SUGGESTIONS.
4547 * Documentation/user/ basic-notation, advanced-notation,
4548 global: small changes from mailist.
4550 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4552 * Documentation/user/advanced-notation.itely (Text marks): update
4553 for new rehearsalMarkAlignSymbol convention.
4555 * VERSION (PATCH_LEVEL): bump version.
4557 * input/test/instrument-name-align.ly: new file.
4559 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4561 * input/test/instrument-name-align.ly: new file. Document how to
4562 align instrument names.
4564 * lily/mark-engraver.cc: remove properties.
4566 * scm/define-context-properties.scm
4567 (all-user-translation-properties): remove align symbol properties
4568 for barnumber/reh. mark.
4570 * lily/break-align-interface.cc (self_align_callback): new
4571 interface, new function. Look at complete alignment. This handles
4572 tunable break alignments in case break-align-symbols are missing.
4574 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4576 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4578 * python/convertrules.py (conv): mark/bar number alignment rule.
4580 * lily/break-align-interface.cc (calc_positioning_done): also
4581 store offset from last visible break-alignment to its
4582 neighbor. This makes alignment on non-visible objects more reliable.
4584 * po/lilypond.pot (Module): ran po-replace.
4586 * input/regression/tie-single-manual.ly (Module): new file.
4588 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4589 look at has_manual_position_.
4590 (from_ties): set has_manual_position_ if tie has staff-position set.
4592 * lily/tuplet-bracket.cc (calc_positions): idem.
4594 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4597 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4599 * scm/define-markup-commands.scm (smallCaps): new markup command
4600 for turning a text to small caps using smaller font size and upper
4603 2006-03-17 Graham Percival <gpermus@gmail.com>
4605 * Documentation/user/ examples, instrument-notation,
4606 advnaced-notation: minor fixes from mailist.
4608 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4610 * Documentation/user/tutorial.itely (First steps): change example
4613 2006-03-17 Graham Percival <gpermus@gmail.com>
4615 * Documentation/user/ examples, advanced: minor changes from mailist.
4617 * THANKS: add Geoff Horton, for documentation stuff.
4619 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4621 * python/lilylib.py (system): revert have_select kludge.
4623 * Documentation/user/tutorial.itely (Commenting input files):
4624 update version numbers in doc.
4626 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4627 bound-padding to multi-measure-interface
4629 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4631 * input/test/engraver-example.ily: update version number.
4633 * VERSION (PACKAGE_NAME): release 2.7.39
4635 * lily/note-spacing.cc (get_spacing): heighten threshold where
4636 accidentals/arpeggios influence previous spacing fully.
4638 * lily/rest.cc (y_offset_callback): only use direction if
4639 staff-position wasn't set before.
4641 * lily/bar-number-engraver.cc: add support for
4642 barNumberAlignSymbol.
4643 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4645 * lily/pointer-group-interface.cc (set_ordered): new function.
4646 (add_unordered_grob): new function.
4648 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4649 to ordered, unless the opposite has been proved. This fixes
4650 random reordering of large object groups across linebreaks,
4653 * lily/main.cc (do_chroot_jail): printf format fix.
4655 * lily/tie-formatting-problem.cc (generate_configuration):
4656 multiply y-shift for dot with direction.
4658 * scm/define-markup-commands.scm (note-by-number): put (magstep
4659 size) in y-attach too.
4661 * Documentation/topdocs/NEWS.tely (Top): show override.
4663 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4664 direction for stems.
4666 2006-03-15 Graham Percival <gpermus@gmail.com>
4668 * Documentation/user/ changing-defaults, global: minor
4671 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4673 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4675 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4676 breakable items after uniformly stretched notes.
4678 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4679 outline with outer edge of note heads. This prevents infinity
4680 problems with tied whole notes.
4682 * scripts/lilypond-book.py (do_file): use os.popen
4684 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4686 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4688 * Documentation/user/invoking.itely: Add ragged-right to bug report
4691 2006-03-14 Graham Percival <gpermus@gmail.com>
4693 * Documentation/user/global.itely: small fix from mailist.
4695 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4697 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4698 file descriptor returned by tempfile.mkstemp() when writing
4699 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4702 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4704 * po/fi.po: newline bugfix.
4706 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4708 * scm/paper.scm (paper-alist): Rounding fixes.
4710 2006-03-13 Graham Percival <gpermus@gmail.com>
4712 * Documentation/user/ changing-defaults, instrument-notation,
4713 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4715 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4719 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4721 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4724 * python/lilylib.py (print_environment): move ps_page_count to
4727 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4729 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4731 * scm/framework-ps.scm (embed-document): new function. Use to
4734 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4736 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4738 * Documentation/user/instrument-notation.itely (Setting simple
4739 songs): Added \book{...} around the full example, so the separate
4740 markups are included in the printed example.
4742 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4744 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4747 * python/lilylib.py (system): rewrite system() using
4748 subprocess. Remove >& redirection trickery.
4750 2006-03-11 Graham Percival <gpermus@gmail.com>
4752 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4753 notation-appendices.itely: minor fixes from mailist.
4755 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4757 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4758 unsplit man also needs images.
4760 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4762 * VERSION (PACKAGE_NAME): 2.7.38 released.
4764 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4766 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4769 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4771 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4772 respects the Score.skipTypesetting property.
4774 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4776 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4777 Prolog. No %%EOF after CFF file.
4779 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4781 * lily/constrained-breaking.cc (get_max_systems): used to return a
4783 (combine_demerits): use pointers to reduce copying data
4784 (calc_subproblem): idem
4785 (get_page_penalty): add page turn penalties
4787 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4789 * Documentation/user/invoking.itely (Invoking lilypond): better
4790 explanation of -e usage.
4792 * lily/main.cc (main_with_guile): don't append to
4793 init_scheme_code_string
4795 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4797 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4799 * scripts/convert-ly.py (do_options): don't print help for
4802 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4803 @code and @example. Update from texinfo.tex from CVS.
4805 2006-03-08 Graham Percival <gpermus@gmail.com>
4807 * Documentation/user/scheme-tutorial.itely: clarifies distances
4808 measured in staff-spaces.
4810 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4812 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4813 consider[k] is true.
4815 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4817 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4818 consider columns that have originals. Unifies spacing for mm
4819 rests around line breaks.
4821 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4822 (set_text_rods): idem.
4823 (calculate_spacing_rods): new function: share code between
4824 set_text_rods and set_spacing_rods.
4825 (set_text_rods): take extents of bounds into account.
4827 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4829 * Documentation/user/basic-notation.itely (Writing music in
4830 parallel): don't use relative.
4832 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4834 * ly/music-functions-init.ly (Module): add shiftDurations
4836 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4838 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4840 * ly/engraver-init.ly: init vocalName to nil.
4842 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4844 * scm/music-functions.scm (music->make-music): bugfix,
4845 KeyChangeEvents are now handled correctly.
4847 * scripts/lilypond-book.py: Add --debug option.
4849 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4851 * python/lilylib.py: add tempfile.
4853 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4855 * VERSION (PACKAGE_NAME): release 2.7.37
4857 * python/lilylib.py (ps_page_count): remove make_ps_images().
4858 (ps_page_count): remove mkdir_p
4859 (system): remove cleanup_temp.
4860 (exit): remove lilypond_version_(check)
4861 (error_log): remove pseudo_filter_p
4866 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4869 * lily/accidental-engraver.cc (make_standard_accidental): only add
4870 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4872 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4873 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4874 Make incompatibilities.
4876 * scm/output-ps.scm (grob-cause): replace backslashes by /
4877 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4879 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4881 * cygwin/GNUmakefile: Install fixes.
4883 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4885 * lily/note-head.cc (head::get_balltype): Compile fix.
4887 * flower/file-name.cc (dos_to_posix): Flower string fix.
4889 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4891 * python/lilylib.py: pychecker cleanups.
4893 * scripts/lilypond-book.py
4894 (Lilypond_snippet.output_print_filename): pychecker cleanups
4896 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4898 * python/lilylib.py (underscore): remove identify() , warranty()
4900 * ps/music-drawing-routines.ps: change Border routine for GSView
4903 * lily/stem.cc (height): use quantize-positions. This triggers
4904 set_stem_lengths, so scripts on beamed stems are handled correctly.
4906 * lily/side-position-interface.cc (aligned_side): check if edges
4907 of script are inside staff. Fixes accent of edge of the staff.
4909 * input/regression/staccato-pos.ly: more examples.
4911 * stepmake/aclocal.m4 (depth): fix bashism.
4913 * lily/lyric-combine-music-iterator.cc: move from
4914 new-lyric-combine-iterator.cc
4915 (process): add pending_grace_lyric_ member to delay lyrics on
4918 * lily/system-start-text.cc (print): suicide if we don't have any
4919 elements. Fixes hara kiri'd instrument names.
4921 * scripts/mup2ly.py (Module): remove.
4923 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4925 * Documentation/user/global.itely (A single music expression):
4926 close @lilypond properly
4928 * lily/volta-bracket.cc (modify_edge_height): change from
4929 after_line_breaking_callback. Suicide last bracket if appropriate.
4931 * python/lilylib.py: strip getopt support
4933 * scripts/etf2ly.py (do_options): use optparse
4935 * scripts/midi2ly.py: optparse, strip lilylib copy.
4937 * scripts/abc2ly.py (voices): use optparse.
4939 * stepmake/stepmake/generic-vars.make: new function absdir.
4941 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4943 * scripts/lilypond-book.py (find_file): use global_options for
4946 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4949 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4951 * python/lilylib.py (get_global_option): ughness for extracting
4952 global options from lilylib.
4953 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4955 * scripts/lilypond-book.py (get_option_parser): use optparse for
4956 option handling. Put options in global_options variable.
4958 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4960 * Documentation/index.html.in: clarify.
4962 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4964 * scm/layout-page-layout.scm (write-page-breaks): add a
4965 music-system-heights property to the page layout output.
4967 * scm/page.scm (make-page-stencil): take footer into account when
4968 computing the 'space-left page property
4969 (annotate-space-left): take footer into account when annonating
4972 2006-02-28 Graham Percival <gpermus@gmail.com>
4974 * Documentation/user/ advanced-notation, global: more (final)
4975 docs for music expressions, removed special fermatas.
4977 2006-02-27 Graham Percival <gpermus@gmail.com>
4979 * Documentation/user/ basic-notation, global: minor changes
4982 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
4984 * scm/framework-ps.scm:
4985 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4986 layer for inf? and nan? from framework-ps to lily-library.
4988 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
4990 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4991 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4993 * buildscripts/substitute-encoding.py (Module): remove file.
4995 * mf/GNUmakefile: more PFA strippage.
4997 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4999 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5002 * scm/framework-ps.scm: remove font name munging.
5004 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5006 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5008 * scm/markup.scm (define-markup-command): change
5009 def-markup-command to define-markup-command
5011 * scm/music-functions.scm (define-music-function): change
5012 def-music-function to define-music-function.
5014 * python/convertrules.py (conv): rules for def-music-function
5015 and def-markup-commands
5017 * Documentation/user/programming-interface.itely,
5018 input/no-notation/display-lily-tests.ly,
5019 input/regression/lily-in-scheme.ly,
5020 input/regression/markup-user.ly,
5021 input/regression/music-function.ly, input/regression/tie-chord.ly,
5022 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5023 ly/gregorian-init.ly: use new macro names (define-music-function,
5024 define-markup-command).
5026 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5028 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5029 (output): add comments to lp-book latex output.
5031 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5034 2006-02-23 Graham Percival <gpermus@gmail.com>
5036 * Documentation/user/ tutorial, global: minor changes.
5038 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5040 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5041 blocks (for make 3.80)
5043 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5044 \notemode so that user should not have to explicitely type it.
5046 * scm/define-music-display-methods.scm: various
5047 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5050 * input/no-notation/display-lily-tests.ly: new tests for
5051 \applyOutput and \applyContext
5053 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5055 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5056 changed it slightly so that the number of systems returned by
5057 solve () will be the same as the last value passed to resize
5058 (). I've also added more documentation, removed casts, fixed style
5059 problems and put in some recovery if constraints aren't satisfied."
5061 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5063 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5064 for emacs < 22 compatibility.
5065 (count-rexp): Use it.
5066 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5067 substring juggling (Milan Zamazal).
5069 2006-02-23 Graham Percival <gpermus@gmail.com>
5071 * Documentation/user/ basic-notation, advanced-notation,
5072 global.itely, invoking.itely, tutorial,itely:
5073 minor fixes from mailist.
5075 * scm/define-markup-commands.scm: improve docs of \filled-box.
5077 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5079 * Documentation/index.html.in: changes concern the previous release.
5081 * input/regression/+.ly: cultivate typographical terminology.
5083 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5085 * scm/define-grob-interfaces.scm (parentheses-interface): add
5086 padding to parentheses-interface.
5088 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5089 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5091 * VERSION (PATCH_LEVEL): release 2.7.36
5093 * lily/slur.cc: add avoid-slur (ugh.)
5095 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5096 intersection gets smaller. This fixes slurs over extreme points.
5098 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5099 stems with neutral-direction set.
5101 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5103 * lily/open-type-font.cc (load_table): format error.
5105 * lily/change-iterator.cc (process): format fix.
5107 * flower/include/international.hh (_f): idem.
5109 * flower/include/std-string.hh: add format printf attribute.
5111 * scm/define-grobs.scm (all-grob-descriptions): height of all
5112 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5114 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5117 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5119 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5121 * input/regression/: upgraded syntax for some files.
5123 * THANKS: Add bughunters.
5125 2006-02-22 Graham Percival <gpermus@gmail.com>
5127 * Documentation/user/ invoking.itely, advanced-notation.itely,
5128 global.itely: long-awaited "let's make chapter 10 not suck"
5129 update. Rearrange chapter 10; now called "global issues",
5130 addresses file structure, etc. Some info from other files
5131 moved into global.itely.
5133 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5135 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5136 catch trill-span-event notes.
5138 * Documentation/user/examples.itely (Ancient notation templates): typo.
5141 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5143 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5145 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5147 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5149 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5150 froum Laissez_vibrer_engraver.
5152 * ly/declarations-init.ly (repeatTie): add \repeatTie
5154 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5156 * scm/define-grob-properties.scm (all-user-grob-properties): add
5157 head-direction property.
5159 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5160 from_lv_ties. Take head direction argument.
5162 * lily/semi-tie-column.cc: rename from
5163 laissez-vibrer-tie-column.cc. Rename class too.
5165 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5168 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5170 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5172 (find_breaks): idem.
5174 2006-02-21 Graham Percival <gpermus@gmail.com>
5176 * Documentation/user/advanced-notation.itely: fixed make-moment]
5179 * Documentation/user/basic-notation.itely: more clarification to
5182 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5184 * lily/include/constrained-breaking.hh (class
5185 Constrained_breaking): new file.
5187 * lily/constrained-breaking.cc (resize): new file.
5189 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5191 * Documentation/user/advanced-notation.itely (Clusters): insert
5194 * lily/tie-column.cc (calc_positioning_done): support for
5197 * lily/tie-formatting-problem.cc
5198 (generate_extremal_tie_variations): factor out.
5199 (score_ties_configuration): annotate all tie
5200 (print_ties_configuration): new routine.
5201 (generate_configuration): nudge extremal ties outside of the head
5203 (score_ties_configuration): oops. convert to staff-space before
5204 determining position symmetry.
5206 2006-02-20 Graham Percival <gpermus@gmail.com>
5208 * Documentation/user/*-notation.itely: misc minor editing,
5209 shifting doc sections around.
5211 * Documentation/user/*-notation-itely, global.itely,
5212 changing-defaults.itely: added new stuff from NEWS.
5214 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5218 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5220 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5221 lilypond --verbose for lp-book.
5223 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5224 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5226 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5227 $(buildscript-dir) iso. absolute depth.
5229 * buildscripts/genicon.py (dir): thinko.
5231 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5233 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5235 * scm/output-lib.scm: swap darkcyan/darkyellow
5237 * THANKS: Add bughunters.
5239 2006-02-19 Graham Percival <gpermus@gmail.com>
5241 * Documentation/user/programming-interfaces.itely: fixed example.
5243 * Documentation/user/instrument-notation.itely: fix @{ @}.
5245 * scm/script.scm: add avoid-slur for \open.
5247 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5249 * lily/tie-formatting-problem.cc (score_configuration): use
5250 sliding score for min-length.
5252 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5253 spaghetti for icons.
5255 * buildscripts/genicon.py (program_name): new file.
5257 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5259 (generate_configuration): for small ties, also look for collisions
5260 at Y + DIR*h + DELTA_Y.
5261 (get_variations): consider variation for dot positions too.
5263 * lily/side-position-interface.cc (aligned_side): take abs for
5264 quantized rounded position. Fixes tenuto below staff.
5266 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5267 markers when necessary.
5269 * lily/program-option.cc (internal_set_option): add
5270 strict_infinity_checking option.
5272 * scm/output-lib.scm (cyan): swap yellow and cyan.
5274 2006-02-19 Graham Percival <gpermus@gmail.com>
5276 * darwin.patch: trivial linenumber update.
5278 * Documentation/user/ {various}: `\context foo = named' changed
5279 to `\new foo = "name"' in docs.
5281 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5283 * scm/stencil.scm (annotate-y-interval): use it.
5285 * scm/lily-library.scm (interval-sane?): new function.
5287 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5290 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5293 * flower/include/std-vector.hh (iterof): add iterof macro.
5295 * lily/enclosing-bracket.cc (width): new function.
5297 * lily/align-interface.cc (align_elements_to_extents): reinstate
5300 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5302 * Documentation/index.html.in: fix spelling: thankyous.
5304 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5306 * lily/lyric-hyphen.cc: typo.
5308 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5310 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5311 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5314 * VERSION: release 2.7.35
5316 * lily/beam.cc (get_default_dir): oops. Take abs () for
5318 (get_default_dir): use extreme position criterion only in absence
5319 of forced stem directions.
5321 * VERSION (PATCH_LEVEL): bump VERSION.
5323 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5324 dependencies. Necessary for -jX builds.
5326 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5328 * lily/relocate.cc (setup_paths): Yet another const fix.
5330 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5332 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5334 * lily/relocate.cc (setup_paths): oops.
5336 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5338 * Documentation/index.html.in: order links: html before PDF.
5340 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5342 * lily/tie-column-format.cc (Module): remove.
5344 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5346 * lily/text-spanner.cc (print): idem.
5348 * lily/dynamic-text-spanner.cc (print): only print line if longer
5351 * lily/auto-change-iterator.cc (change_to): formatting.
5353 * lily/beam.cc (get_default_dir): take extreme note head as input
5356 * lily/tie.cc (get_default_dir): only look directions for visible
5359 * lily/side-position-interface.cc (aligned_side): oops. Don't
5360 mutiply with direction. This fixes quantized (staccato, tenuto)
5361 scripts below notes.
5363 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5364 direction. Fixes c-lyrics-center-align.ly
5366 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5368 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5371 * lily/std-string.cc:
5372 * lily/include/std-vector.hh (split_string): Move and rename from
5373 lily/include/misc.hh, lily/misc.cc. Update callers.
5375 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5377 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5379 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5381 * flower/test-file.cc: New file.
5383 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5386 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5388 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5390 * flower/include/file-storage.hh: remove file.
5392 * lily/include/midi-item.hh (class Midi_track): idem.
5394 * lily/include/source.hh (class Sources): idem.
5396 * lily/include/performance.hh (class Performance): use vector
5399 * flower/include/cons.hh (class Cons): remove file.
5401 * flower/include/flower-proto.hh: remove template cruft.
5403 * lily/include/font-metric.hh: use size_t not vsize for indices.
5405 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5408 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5410 * lily/include/paper-book.hh (class Paper_book):
5411 make get_system_specs() public.
5413 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5414 the force=10000 case if we don't have a current-best.
5416 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5419 * flower/include/flower-proto.hh: remove outdated templates.
5421 * scm/page.scm: use annotate-spacing
5423 2006-02-15 Graham Percival <gpermus@gmail.com>
5425 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5427 * THANKS: moved Erlend Aasland to contributors.
5429 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5431 * config.hh.in: remove HAVE_PANGO_16
5433 * lily/tuplet-bracket.cc (calc_positions): multiply with
5434 staff-space for beam case. This fixes tuplets+beams on scaled
5437 * config.hh.in: remove all Kpathsea related defines.
5439 * lily/dot-column.cc (side_position): reach stem via dots->
5440 head->stem. Inspect all stems for dot collisions.
5442 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5445 * lily/bar-number-engraver.cc (process_music): document function
5448 * lily/score.cc (default_rendering): add pscore, not systems
5451 * lily/paper-book.cc (get_system_specs): separate generation of
5454 * flower/include/std-vector.hh: don't include config.hh
5456 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5458 * flower/include/std-vector.hh: Better wrapper compatibility with
5461 * flower/include/flower-proto.hh: Remove cheap forward declaration
5464 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5466 2006-02-14 Graham Percival <gpermus@gmail.com>
5468 * Documentation/user/invoking.itely: add warning about command line.
5470 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5472 * lily/include/lily-proto.hh: add Prob, rm Page.
5474 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5476 * VERSION: release 2.7.34
5478 * lily/relocate.cc (framework_relocation): show canary if
5479 GHOSTSCRIPT_VERSION undefined.
5481 * GNUmakefile.in: remove $(VERSION) symlink.
5483 * lily/relocate.cc (setup_paths): add +
5485 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5487 * Documentation/index.html.in: specify sizes for all big HTML pages.
5489 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5491 * config.hh.in: remove @FRAMEWORKDIR@
5493 * lily/system-start-text.cc (get_stencil): new file: separate out
5494 system-start-delimiter text support.
5496 * input/**ly: replace \context with \new where appropriate.
5500 * lily/slur-scoring.cc (get_base_attachments): use
5501 robust_relative_extent. This fixes problems with empty paper-columns.
5503 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5505 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5507 * scm/define-music-properties.scm (all-music-properties):
5508 create-new property.
5510 * lily/context-specced-music-iterator.cc (construct_children):
5511 inspect 'create-new property iso. magical $uniqueContextId context
5514 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5516 * lily/context-key-manager.cc (Module): new file. Encapsulate
5517 object key generation.
5519 * lily/include/context-key-manager.hh (Module): new file.
5521 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5523 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5526 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5528 (reloc_b): excise --enable-framework-dir
5530 * lily/relocate.cc (framework_relocation): use getenv
5531 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5533 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5535 * flower/include/std-string.hh:
5536 * flower/include/std-vector.hh: Finish std:: conversion; move
5537 flower extensions from std:: namespace. Update users.
5539 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5540 their expansion to vector<*>. Update users.
5542 2006-02-10 Graham Percival <gpermus@gmail.com>
5544 * Documentation/user/invoking.itely: add example to File structure.
5546 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5547 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5549 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5551 * ly/paper-defaults.ly: typo.
5553 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5554 set_parent() for parentheses. This will make it show up in bbox
5557 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5558 ly:grob-common* functions.
5560 * lily/grob-scheme.cc (LY_DEFINE):
5561 ly:grob-common-refpoint-of-array: new function
5562 ly:grob-common-refpoint: new function
5563 ly:grob-relative-coordinate: new function
5565 * lily/instrument-name-engraver.cc (process_music): use
5566 Text_interface::is_markup(). This fixes \markup on instrument names.
5568 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5571 * lily/slur.cc (print): idem.
5573 * lily/tie.cc: add line-thickness for ties.
5575 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5577 * scm/output-svg.scm: Document diversion from GNU coding standards
5578 as a workaround for a bug in Microsoft Internet Explorer.
5580 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5582 * lily/instrument-name-engraver.cc (process_music): use
5583 is_markup() iso. is_string()
5585 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5587 * lily/percent-repeat-engraver.cc (process_music): only look at
5588 main_part_ for % repeats.
5590 * lily/stem-tremolo.cc (get_beam_translation): new function.
5591 (calc_slope): new function.
5592 (height): don't use real slope.
5594 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5596 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5597 new connect-to-neighbor, control-points and staff-padding
5598 properties to make ligature brackets showing up again.
5600 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5602 * VERSION: release 2.7.33
5604 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5607 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5608 remove applyOutput example.
5609 (Objects connected to the input): document \tweak, \parenthesize
5611 * lily/relocate.cc (prefix_relocation): allow "current"
5612 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5613 changing VERSION in a lily tree less painful.
5615 * input/regression/parenthesize.ly: new file.
5617 * scm/output-lib.scm (parenthesize-element): new function.
5619 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5621 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5623 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5624 cause: accidentals are caused by note heads, not note events.
5626 2006-02-08 Graham Percival <gpermus@gmail.com>
5628 * darwin.patch: small patch from Erlend, thanks!
5630 * Documentation/user/basic-notation.itely: add stem-neutral example.
5632 * Documentation/user/putting.itely: clarifications.
5634 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5636 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5637 note, add more guidelines to what should go into NEWS.
5639 * input/sakura-sakura.ly: document how to override font.
5641 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5643 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5645 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5647 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5649 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5650 convertrules. Add explicit grouping, needed for python2.2.
5652 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5654 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5656 2006-02-07 Graham Percival <gpermus@gmail.com>
5658 * Documentation/user/global.itely: fix line-width in (text) docs.
5660 * Documentation/user/lilypond-book.itely: same.
5662 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5664 * VERSION (PACKAGE_NAME): release 2.7.32
5666 * Documentation/topdocs/NEWS.tely (Top): document new variable
5669 * flower/include/array.icc (Message): remove file.
5671 * flower/include/std-vector.hh: make sure vsize and VPOS are
5672 defined for binary_search_bounds().
5674 * flower/std-string.cc (std): add to_string(long unsigned).
5676 * configure.in (gui_b): excise std_string option.
5677 (gui_b): excise std_vector option.
5679 * flower/string.cc (Module): excise flower array & string
5681 * flower/include/std-string.hh: excise flower string.
5683 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5685 * python/convertrules.py (lilypond_version_re_str): require
5686 only numbers and dots in \version string.
5688 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5690 * lily/system-start-delimiter.cc (print): allow style = text too.
5692 * lily/system-start-delimiter-engraver.cc
5693 (acknowledge_system_start_text): new function, also add add to
5694 support of system-start-text (instrument names). This fixes
5695 instrument names on piano staves.
5697 * lily/instrument-name-engraver.cc: rewrite. Use
5698 system-start-delimiter approach. This save memory and cpu.
5700 * scm/define-grobs.scm (all-grob-descriptions): remove
5701 instrument-name from break-alignment.
5703 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5705 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5707 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5710 * configure.in (std_vector): On by default.
5712 * lily/include/font-metric.hh:
5713 * lily/include/tfm-reader.hh:
5714 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5717 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5719 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5721 * VERSION (PACKAGE_NAME): 2.7.31
5723 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5724 EPS edge at 0, but take minimum with left-overshoot. This fixes
5725 cut off system start delims.
5727 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5728 hack: add to axis group if not added yet. This fixes hara kiri'd
5731 * lily/hara-kiri-group-spanner.cc
5732 (force_hara_kiri_in_y_parent_callback): fix signatures.
5734 * lily/hairpin.cc (print): check next hairpin to see whether or
5735 not to be continuing.
5737 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5739 * Remove trailing whitespace from makefiles.
5741 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5744 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5746 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5748 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5750 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5752 * configure.in: Use it.
5754 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5756 * scm/music-functions.scm (pitch-of-note): new function.
5758 * ly/music-functions-init.ly: add \octave and \addquote
5760 * lily/parser.yy (music_function_chord_body): softcode \octave.
5761 (lilypond_header): softcode \addquote
5763 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5765 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5766 array.hh, parray.hh at all. Getting ready to flip the
5769 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5771 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5774 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5776 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5778 * flower/include/array.hh: typo.
5780 2006-02-02 Graham Percival <gpermus@gmail.com>
5782 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5784 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5786 * flower/include/pqueue.hh: Derive from std::vector.
5788 * flower/include/parray.hh: Conform to std::vector interface.
5791 2006-02-02 Graham Percival <gpermus@gmail.com>
5793 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5795 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5797 * flower/file-path.cc (is_file): remove if 0 section.
5799 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5800 selecting afii61352.
5802 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5804 * flower/include/std-vector.hh (boundary): Oops, reverse.
5806 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5807 remove superfluous `d'.
5809 * flower/include/std-vector.hh (boundary, top): Detach from class.
5810 Remove empty vector shell.
5812 * flower/include/array.hh (reverse, swap): Detach from class.
5815 * flower/include/std-vector.hh
5816 * flower/include/array.hh (concat): Globally change to insert ().
5819 * flower/include/std-vector.hh
5820 * flower/include/parray.hh
5821 * flower/include/array.hh (elem, elem_ref): Globally replace by
5824 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5826 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5828 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5829 anticipate on identifier substitutions.
5831 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5833 * flower/include/std-vector.hh (insert): Remove, replace by
5834 std::vector interface. Update callers.
5836 * flower/include/array.icc (insert): Change signature to
5837 match std::vector interface.
5839 * flower/include/array.icc (vector_sort): Bugfix.
5841 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5843 * lily/parser.yy (output_def_head_with_mode_switch): new
5844 production. Result: dashes and underscores may be used in the
5847 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5849 * python/convertrules.py (conv): oops. One slash too much.
5851 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5853 * flower/include/std-vector.hh (sort): Remove, replace by
5854 ::vector_sort. Update callers.
5856 * flower/include/std-vector.hh (slice): Remove. Update callers.
5859 * flower/test-std.cc (vector_sort): New test.
5861 2006-02-01 Graham Percival <gpermus@gmail.com>
5863 * Documentation/user/putting.itely: fixes from Erik.
5865 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5867 * flower/test-std.cc: Add simple unit test for vector migration.
5869 * stepmake/stepmake/test*: Unit test support.
5871 * flower/include/std-vector.hh (del): Remove. Use erase (),
5874 * flower/include/array.hh (begin, end): Add.
5877 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5879 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5880 std::string not String.
5882 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5885 * lily/prob.cc (Prob): copy type_ too.
5887 * lily/lily-guile.cc (mangle_cxx_identifier): new
5888 function. Class_bla::foo_bar_[px] ->
5889 ly:class-bla::foo-bar[?!]. Changes throughout
5891 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5893 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5895 * lily/beam.cc (calc_direction): take dir from visible stem in
5898 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5900 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5901 Fix -1, >=0 boundary checks for unsigned vsize.
5903 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5904 loop for unsigned vsize.
5906 * configure.in (--enable-std-vector): New option.
5907 (--enable-std-string): On by default.
5909 * flower/include/std-vector.hh: New file. Enable switch to
5910 std::vector, update client code.
5912 2006-01-30 Graham Percival <gpermus@gmail.com>
5914 * scm/document-translation.scm: clarify "this context is also
5915 known as". Thanks, Werner!
5917 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5919 * Documentation/user/invoking.itely: small fix from Don.
5921 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5923 * scm/lily.scm (define-scheme-options): rename option
5924 preview-include-book-title to book-title-preview
5925 (define-scheme-options): move force-eps-font-include (from paper
5926 block) to eps-font-include -d option.
5928 * VERSION (PATCH_LEVEL): release 2.7.30
5930 * input/bach-schenker.ly (staffPiano): new file.
5932 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5934 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5937 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5939 * ps/lilyponddefs.ps: remove start-system, stop-system,
5940 start-page fluff. This saves putting { } code on the stack, fixing
5941 stack overflows when including EPS files.
5943 2006-01-29 Graham Percival <gpermus@gmail.com>
5945 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5947 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5949 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5951 2006-01-28 Graham Percival <gpermus@gmail.com>
5953 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5955 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5957 * input/mutopia/claop.py: Update.
5959 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5961 * input/regression/completion-heads.ly (texidoc): fix.
5963 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5965 * lily/tie-formatting-problem.cc
5966 (set_ties_config_standard_directions): use abs iso fabs for ints.
5968 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5970 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5971 little less than noteheight, to prevent overlaps in chords.
5973 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5974 head, and fudge stem-attachment.
5976 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5978 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5980 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
5982 * lily/main.cc (main): Debugging aid: catch exceptions.
5984 * flower/std-string.cc (to_string): Robustification. Fixes midi
5985 output with std::string.
5987 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
5989 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5991 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5993 * Fix -DSTRING_UTILS_INLINED.
5995 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5997 * VERSION (PATCH_LEVEL): release 2.7.29
5999 * lily/relocate.cc (setup_paths): mingw uses std string too.
6001 * lily/*.cc: various fixes for substr(ARG).
6003 * lily/sustain-pedal.cc (print):
6005 * flower/file-name.cc (slashify): use std strings.
6007 * flower/string-convert.cc: remove publib.h
6009 * scm/define-markup-commands.scm (verbatim-file): new markup
6010 command \verbatim-file
6012 * Documentation/topdocs/NEWS.tely: fixup URLs
6014 * input/regression/alignment-vertical-manual-setting.ly (Module):
6017 * lily/align-interface.cc (align_elements_to_extents): overwrite
6018 translations with numbers in alignment-offsets from left bound
6020 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6021 (page-translate-systems): new function: take into account Y-offset.
6023 * Documentation/topdocs/NEWS.tely (Top): document new features.
6025 * input/regression/page-layout-manual-position.ly (Module): new
6028 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6030 * flower/file-path.cc (path::parse_path): Oops.
6032 * Finish std::string interface. For now, use std:: marker
6033 throughout for easy s/r.
6035 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6037 * Documentation/user/putting.itely (Score is a single musical
6039 (Score is a single musical expression): more typos.
6041 * scm/page.scm (annotate-space-left): thinko.
6042 (annotate-page): more thinkos.
6044 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6046 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6047 for different \score blocks separately.
6048 (post-process-pages): put write-page-layout into paper block.
6050 * lily/output-def.cc (get_parser): new file.
6052 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6055 * lily/include/output-def.hh (class Output_def): add parser_ member.
6057 * input/regression/page-layout-twopass.ly (Module): new file.
6059 * scm/lily.scm: remove cpp hack.
6061 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6063 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6065 * GNUmakefile.in (c-clean): New target.
6067 * flower/include/std-string.hh: String/std::string compatibility:
6068 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6071 * flower/rational.cc:
6072 * flower/include/rational.hh:
6075 * flower/include/offset.hh:
6077 * flower/interval.cc:
6078 * flower/include/interval.hh:
6080 * flower/string-convert.cc:
6081 * flower/include/string-convert.hh: Use std::string [interface].
6084 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6086 * Documentation/index.html.in: clean up.
6088 2006-01-25 Graham Percival <gpermus@gmail.com>
6090 * Documentation/user/putting.itely: another new untested doc section.
6092 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6094 * scm/layout-page-layout.scm (write-page-breaks): write
6095 \spacingTweaks #ALIST. Handle grace timing.
6097 * scm/: more imports.
6099 * scm/page.scm (make-page): add footer/header.
6100 (annotate-space-left): revise: only take page argument.
6101 (layout->page-init): new function.
6103 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6104 version of the system/spacing/linebreak hack writing to the output
6106 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6109 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6112 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6114 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6116 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6118 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6119 handling to page.scm
6121 * lily/prob-scheme.cc (LY_DEFINE): new file.
6122 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6124 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6127 * lily/music.cc (derived_mark): derive Music from Prob.
6129 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6131 * lily/prob.cc (Module): Implement Prob (Property Object), object
6132 with shared and r/w property alists.
6134 * lily/include/prob.hh (Module): new file. Declare Prob.
6136 * flower/string.cc: remove is_empty().
6138 * flower/include/string.hh (class String): remove String:: qualifier.
6140 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6141 substitute appropriate functions.
6143 * flower/include/string.hh (class String): remove to_str0 and
6144 is_empty(). S&R everywhere.
6146 2006-01-23 Graham Percival <gpermus@gmail.com>
6148 * Documentation/user/basic-notation.itely: add hairpin
6149 after-linebreak tweak to commonprop.
6151 * Documentation/user/putting.itely: added two new sections.
6153 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6155 * flower/international.cc:
6156 * flower/include/international.hh:
6158 * flower/getopt-long.cc:
6159 * flower/include/getopt-long.hh: Use std::string [interface].
6162 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6164 * stepmake/stepmake/executable-rules.make: Add dependency on
6167 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6169 * flower/file-path.cc:
6170 * flower/include/file-path.hh: Use std::string [interface].
6173 * flower/direction.cc:
6174 * flower/axis.cc: Unused. Remove.
6176 * configure.in (--enable-std-string): New option.
6178 * flower/std-string.cc:
6179 * flower/include/std-string.hh: New file.
6181 * flower/file-name.cc[STD_STRING]:
6182 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6184 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6186 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6188 * scm/define-markup-commands.scm (with-dimensions):
6189 with-dimensions markup command.
6191 * input/test/font-table.ly: use it.
6193 * lily/open-type-font.cc (glyph_list): new function.
6195 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6197 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6199 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6201 * ly/music-functions-init.ly (parallelMusic): new music function
6202 for parallel music entry.
6204 * scm/define-music-properties.scm (all-music-properties): new
6205 'void music property
6207 * scm/music-functions.scm (ly:music-message): make public, to be
6208 used in music function definitions
6210 * scm/lily-library.scm (collect-music-for-book): discard music
6211 when the 'void property is set.
6213 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6215 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6217 * mf/GNUmakefile: idem.
6219 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6221 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6223 * Documentation/user/notation-appendices.itely (The Feta font):
6226 * input/test/font-table.ly: new file. Generate font table within lily.
6228 * Documentation/user/notation-appendices.itely (The Feta font):
6229 use new font-table.ly file.
6231 * stepmake/stepmake/install-out-targets.make
6232 (local-install-outfiles): only create directory if
6233 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6235 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6237 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6239 * VERSION (PACKAGE_NAME): release 2.7.28
6241 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6242 the right font from a Mac dfont.
6243 (write-preamble): don't forget directory, only look at files.
6245 This fixes problems with TTF files in dfonts that don't match
6246 their PostScript names.
6248 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6249 PS name from TTF font.
6251 * input/regression/tie-manual.ly: document new feature.
6253 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6255 * VERSION (MY_PATCH_LEVEL): bump to .28
6257 * Documentation/user/basic-notation.itely (Ties): add tie examples
6260 * lily/tie-formatting-problem.cc (score_ties_configuration):
6261 symmetry penalties for outer ties.
6263 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6265 * lily/tie-formatting-problem.cc (generate_configuration)
6266 (set_manual_tie_configuration): skip non-pair manual
6267 tie-configuration, so you can set individual ties as
6269 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6271 * input/regression/tie-chord.ly: use generateTiePattern to
6274 * lily/tie-formatting-problem.cc (peak_around): new function.
6275 (score_configuration): use sliding criterion for staff line collisions.
6276 (score_configuration): idem for dot collisions.
6277 (generate_configuration): use separate stem_gap for gap to stem.
6279 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6280 separate penalty factors for x and y distance.
6281 (struct Tie_details): separate penalties for tip and center line collisions.
6283 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6285 * lily/tie-formatting-problem.cc (generate_configuration): make
6286 large ties avoid stafflines in the horizontal section.
6287 (score_configuration): use softcoded penalties
6288 (score_aptitude): idem.
6290 * lily/tie-helper.cc (from_grob): softcode tie details
6292 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6294 * lily/staff-symbol-referencer.cc (on_line): rename from
6297 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6299 * ly/music-functions-init.ly: remove duplicate tag.
6301 * lily/include/*.hh: GCC 4.1 fixes.
6303 006-01-16 Erlend Aasland <erlenda@gmail.com>
6305 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6307 * scm/define-music-types.scm: fix bug in desc. string
6308 for OverrideProperty
6310 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6312 * scripts/lilypond-book.py: bugfix
6314 * scm/define-music-types.scm: fix typos.
6316 2006-01-14 Graham Percival <gpermus@gmail.com>
6318 * Documentation/user/ basic-notation.itely, global.itely,
6319 advanced-notation.itely, instrument-notation.itely: small
6320 additions (bugs and commonly tweaked properties).
6322 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6324 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6325 detection of mingw build.
6326 (MINGW_BUILD): opps.
6328 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6330 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6333 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6335 * scm/music-functions.scm (skip->rest): add skip->rest
6337 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6339 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6342 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6343 config dirs. Aids debugging.
6344 (display_config): also display config files.
6346 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6348 * VERSION: release 2.7.27
6350 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6351 for determining bar size.
6353 * lily/staff-symbol.cc (print): place lines at distance line-positions
6355 * scm/define-grob-properties.scm (all-user-grob-properties): add
6358 * lily/staff-symbol.cc (height): new function.
6360 * input/regression/staff-line-positions.ly: new file.
6362 2006-01-06 Graham Percival <gpermus@gmail.com>
6364 * input/test/add-staccato.ly: remove reference to old file.
6366 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6368 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6369 lilypond binary too.
6371 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6373 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6375 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6377 * scripts/midi2ly.py: Bugfix: Declare datadir.
6379 * make/ly-rules.make:
6380 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6381 that seems to be gone). Fixes make web.
6383 * The grand 2005-2006 replace.
6385 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6387 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6389 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6390 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6391 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6392 like -dgs-font-load.
6394 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6395 remove absolute path to lilypond binary.
6397 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6399 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6401 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6403 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6405 * mf/GNUmakefile: remove broken dvips map symlink.
6407 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6410 * configure.in: Cosmetic fixes.
6412 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6414 * Documentation/user/music-glossary.tely (Pitch names): Added
6415 Spanish pitch names and durations, thanks to Ernesto Gancedo
6417 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6419 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6420 init. Fixes verbose printing of .scm files.
6422 * stepmake/aclocal.m4: add spaces before - options.
6424 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6426 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6427 of path search in local block variable.
6429 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6431 * configure.in (NCSB_DIR): --enable-ncsb-dir
6432 (LINK_GXX_STATICALLY): denko.
6434 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6436 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6437 use locate to find c059033l.pfb.
6439 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6441 * lily/tie-formatting-problem.cc
6442 (problem::generate_base_chord_configuration): Use my_round (was
6445 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6446 do not invoke mbrtowc.
6448 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6450 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6452 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6454 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6456 * Documentation/user/invoking.itely (svg): revise.
6458 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6460 * lily/lexer.ll: use sourcefilename iso. renameinput.
6462 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6464 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6465 <PostScriptName>.ttf instead of c059XXXttf.
6467 * lily/program-option.cc (LY_DEFINE): special support for
6468 --verbose, so it works before option init too.
6470 * mf/GNUmakefile (local-install): oops.
6472 * lily/lyric-hyphen.cc (print): oops.
6474 * buildscripts/pfx2ttf.fontforge: new file.
6476 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6477 ($(outdir)/%.ttf): new rule.
6479 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6482 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6485 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6487 * VERSION: release 2.7.26
6489 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6491 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6493 * lily/font-config.cc (init_fontconfig): verbosity.
6495 * THANKS: add Muziekacademie Lede.
6497 * scripts/musicxml2ly.py (print_voice_definitions): new function
6498 (print_score_setup): new function
6499 (convert): read part definition to output staves properly.
6501 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6504 * python/musicexp.py (Output_printer.__init__): use _ in data
6506 (Output_printer.unformatted_output): new function: no formatting,
6508 (Duration.get_length): remove isinstance() checks for
6509 Output_printer everywhere.
6511 * input/regression/lyrics-bar.ly (texidoc): add
6512 Separating_line_group_engraver.
6514 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6516 * lily/relocate.cc (framework_relocation): New function,
6517 factored from set_relocation ().
6518 (prefix_relocation): Rename from set_relocation ().
6519 (setup_paths): Use it.
6521 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6523 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6524 numbers. Patch by Erlend Aasland.
6526 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6528 * lily/font-config.cc (init_fontconfig): print warning if cache
6529 file is not existant.
6531 * lily/main.cc: don't use #ifdef but #if
6533 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6535 * lily/grob-property.cc (internal_set_property): don't abort on
6536 calculation-in-progress.
6538 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6540 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6541 connect-to-neighbor property not connect-to-other
6543 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6544 (LY_DEFINE): oops. don't forget protection.
6546 * flower/parse-afm.cc (Module): strip AFM handling completely.
6548 * lily/stencil-expression.cc: idem.
6550 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6552 * lily/function-documentation.cc (ly_add_function_documentation):
6553 use static member iso. Protected_scm
6555 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6557 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6559 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6561 * lily/relocate.cc (set_env_dir): New function.
6562 (set_relocation): Use it to fix setting PANGO_PREFIX.
6564 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6566 * input/regression/stem-direction-context.ly: remove rest.
6568 * lily/melody-engraver.cc (process_music): restart for bar lines.
6569 (acknowledge_slur): restart for slurs.
6571 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6573 * Documentation/user/invoking.itely: describe how to view SVG
6574 output using Inkscape which replace embedded fonts with OTF fonts.
6576 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6578 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6580 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6582 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6585 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6587 * VERSION (PACKAGE_NAME): release 2.7.25
6589 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6591 * input/regression/stem-direction-context.ly: new file.
6593 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6595 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6598 * ly/engraver-init.ly: add Melody_engraver
6600 * lily/beam.cc (calc_direction): use default-direction
6601 iso. get_default_direction()
6603 * scm/define-grob-properties.scm (all-user-grob-properties): add
6604 default-direction property.
6606 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6608 * lily/stem.cc (calc_default_direction): remove
6609 Stem::get_default_direction, use default-direction with callback
6612 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6614 * lily/melody-engraver.cc: new file. Acknowledge stems for
6615 interpolated stem directions.
6617 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6619 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6621 * lily/slur-configuration.cc (fit_factor): more robust check for
6622 point in curve X-extent.
6624 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6625 (outside_slur_callback): check for 'outside avoidance.
6627 * lily/slur-configuration.cc (score_extra_encompass): don't use
6628 bound->column() == avoid->column() for checking extents, as this
6629 doesn't work for accidentals.
6631 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6632 DynamicText hardcoding.
6634 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6635 crash if bound stem is NULL
6637 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6640 2005-12-22 Graham Percival <gpermus@gmail.com>
6642 * scm/define-markup-commands.scm: typo. @code{\raise}
6645 * darwin.patch: now used again, includes a
6646 required patch from fink.
6648 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6650 * po/TODO: mention gtranslator along with kbabel.
6651 * po/fi.po: update translations.
6653 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6655 * lily/relocate.cc (setup_paths): Bugfix.
6657 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6659 * lily/slur-configuration.cc (score_extra_encompass): don't use
6660 "avoid" choice for avoid-slur.
6662 * stepmake/bin/install.py (dest): don't create existing dir.
6664 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6666 * stepmake/bin/install.py: Remove file before copying.
6669 * stepmake/aclocal.m4: Do not substitute INSTALL.
6671 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6673 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6674 depend on link-tree.
6676 * lily/relocate.cc (setup_paths): only check path for non-absolute
6677 dir without directory part.
6679 * flower/file-name.cc (is_absolute): new method.
6680 (is_absolute): check root_ too.
6682 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6684 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6685 relocation code. Oops, don't comment out too much.
6687 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6690 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6693 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6695 * .cvsignore: Add install-sh.
6697 * autogen.sh (srcdir): Typo.
6699 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6701 * autogen.sh (srcdir): urg. Touch install-sh.
6703 * stepmake/bin/install-sh (Module): remove.
6705 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6707 * lily/include/relocate.hh: new file.
6709 * lily/relocate.cc: new file. Contain relocation logic.
6711 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6712 (main): read LILYPOND_VERBOSE as the first thing.
6714 * stepmake/aclocal.m4: remove INSTALL variable.
6716 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6717 separate target for making font symlinks.
6718 (documentation-dir): use $(if $(findstring )) for switching off
6721 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6722 something if DOCUMENTATION is no.
6724 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6726 * VERSION: release 2.7.24
6728 * lily/script-column-engraver.cc (stop_translation_timestep):
6729 delay adding to script-column.
6731 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6733 * python/convertrules.py (conv): rule for number-visibility
6735 * lily/slur-configuration.cc (score_extra_encompass): different
6736 distance measure for avoid and inside avoidance.
6737 (score_extra_encompass): use 1/(distance+eps) as penalty.
6739 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6740 encompass objects for generating slur curves.
6742 * lily/slur.cc: use details iso. slur-details property.
6744 * input/regression/slur-tuplet.ly: new file.
6746 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6748 * flower/include/offset.hh (class Offset): new operator /=
6750 * lily/tuplet-number.cc (print): new file, new interface.
6752 * scm/define-grob-properties.scm (all-user-grob-properties):
6753 remove number-visibility property.
6755 * lily/tuplet-bracket.cc (calc_control_points): new function
6756 (calc_connect_to_neighbors): new function.
6757 (print): remove text handling for tuplet numberdef.
6759 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6762 * lily/lily-guile.cc (robust_scm2booldrul): new function
6764 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6766 * lily/tuplet-bracket.cc (calc_position_and_height): use
6767 staff-padding to control whether tuplet brackets are over staves.
6769 * lily/grob.cc (suicide): clear dim_caches_.
6771 * lily/dimension-cache.cc (clear): new function.
6773 * lily/grob.cc (extent): swap order of min-extent and extent
6774 calculations. This fixes hara kiri staves.
6776 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6778 * lily/main.cc: Nitpick: relocation is not based on path, but on
6779 directory (location).
6781 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6783 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6785 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6787 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6789 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6791 * stepmake/stepmake/generic-vars.make (Module): idem.
6793 * stepmake/stepmake/executable-targets.make (default): use it.
6795 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6797 * make/GNUmakefile: don't install make rules.
6799 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6801 (prepend_env_path): more verbosity.
6803 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6805 * GNUmakefile.in: add dir argument for find command.
6807 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6808 fixes weird line numbers for point & click.
6810 * lily/source-file.cc (get_counts): init line/column/char counts.
6812 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6814 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6816 2005-12-16 Graham Percival <gpermus@gmail.com>
6818 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6819 minor fixes from Fredric. Thanks!
6821 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6823 * ly/music-functions-init.ly: add \bar and \clef music function
6825 * lily/lily-lexer.cc: idem.
6827 * lily/parser.yy (FIXME): remove BAR and CLEF.
6829 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6831 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6833 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6834 function arguments too
6836 * lily/main.cc (set_relocation): new function.
6838 * scripts/musicxml2ly.py (convert): add \version
6840 * lily/tie.cc: remove get_default_attachments()
6842 * VERSION (PACKAGE_NAME): release 2.7.23
6844 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6845 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6847 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6849 * lily/tie-formatting-problem.cc (score_ties): new function
6850 (get_variations): new function. Try flipping dirs for collisions.
6851 (generate_optimal_chord_configuration): new function. 1-opt search
6852 for better configuration.
6854 * lily/tie-configuration.cc: new file.
6856 * lily/tie.cc: junk Tie::get_configuration()
6858 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6859 (score_ties_configuration): new function.
6860 (generate_ties_configuration): new function.
6861 (generate_base_chord_configuration): new function.
6862 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6863 (set_manual_tie_configuration): Move body from tie-column-format.cc
6865 * input/regression/tie-dot.ly: new file.
6867 * lily/tie-formatting-problem.cc (score_configuration): score
6870 * lily/tie-helper.cc (get_transformed_bezier): new function
6872 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6874 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6875 -undefined suppress iso. -framework Python
6877 * scm/define-grobs.scm (all-grob-descriptions): set
6878 springs-and-rods (thanks Joe Neeman!)
6880 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6882 * input/no-notation/display-lily-tests.ly (test):
6883 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6884 changed from \tag #'(a b) to \tag #'a \tag #'b
6886 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6888 * Documentation/topdocs/NEWS.tely: strip out-www.
6890 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6892 * config.make.in (AR): add AR and RANLIB
6894 * flower/libc-extension.cc: include cassert
6896 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6899 2005-12-11 Graham Percival <gpermus@gmail.com>
6901 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6903 * stepmake/stepmake/python-modules-vars.make: define
6904 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6906 * THANKS: added Johannes Schindelin.
6908 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6910 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6912 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6913 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6915 * lily/parser.yy: reorganize file layout.
6917 * ly/music-functions-init.ly: add tweak music function.
6919 * lily/grob-info.cc (ultimate_music_cause): new function:
6920 recursively lookup causes.
6922 * lily/parser.yy (chord_body_element): allow music functions for
6923 post-events, allow music functions for chord elements.
6925 * lily/font-config-scheme.cc (display_fontset): add cast.
6927 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6928 #'(a b) -> \tag #'a \tag #'b rule.
6930 * python/musicexp.py (Output_printer.dump_version): new function
6932 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6934 * lily/parser.yy (FIXME): remove \tag
6935 (FIXME): remove tag_music() function.
6937 * lily/lily-lexer.cc: remove \tag
6939 * ly/music-functions-init.ly: define music-function "tag"
6941 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6943 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6945 * VERSION (PATCH_LEVEL): release 2.7.22
6947 * input/regression/lyric-hyphen-retain.ly: renew.
6949 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6952 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6953 iso. minimum-length property for rods.
6955 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6956 LyricSpace item to keep lyrics spaced apart.
6958 * ly/engraver-init.ly: remove Separating_line_group_engraver
6960 * Documentation/user/music-glossary.tely: do setfilename before
6963 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6965 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6966 See xref documentation, for example.
6968 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6970 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6971 pending_skip iso. ly_voice[-1]
6972 (main): add if __main__ for debugging.
6974 * python/musicxml.py (Accidental.__init__): new class.
6976 * scripts/musicxml2ly.py (progress): new function
6977 (musicxml_key_to_lily): don't barf on modeless keys.
6978 (create_skip_music): new function.
6979 (musicxml_spanner_to_lily_event): new function. Handle beams too.
6980 (musicxml_note_to_lily_main_event): new function.
6982 * python/musicexp.py (Music.__init__): add comment field.
6983 (NestedMusic.append): new routine.
6984 (SequentialMusic.print_ly): print comment.
6985 (ArpeggioEvent.ly_expression): new class
6986 (BeamEvent.ly_expression): new class
6987 (NoteEvent.__init__): support for cautionary/forced accs.
6989 * lily/lookup.cc (slur): normal order for array loop.
6991 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6994 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6997 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
6999 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7001 * scripts/lilypond-book.py: Introduce option
7002 --preserve-line-breaks, for usage with srcltx
7004 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7006 * scm/output-lib.scm (print-circled-text-callback): draw circle
7007 around text using make-circle-markup.
7009 * Documentation/user/*: strip out-www from file names.
7011 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7013 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7014 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7016 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7018 * Documentation/user/GNUmakefile: idem.
7020 * Documentation/user/macros.itexi: strip out-www
7022 * python/rational.py: python 2.3 compat.
7024 * VERSION (PATCH_LEVEL): release 2.7.21
7026 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7027 option formatting, lilypond style.
7029 * python/musicexp.py: grab from Ikebana: a library for composing
7030 ly music expressions.
7031 (Output_printer): class for advanced .ly printing.
7034 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7035 convert to pythonesque structure.
7037 * python/rational.py: PD rational number class.
7039 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7041 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7043 * lily/part-combine-iterator.cc: Minor bugfix
7045 * THANKS: Update bughunters
7047 2005-12-02 Werner Lemberg <wl@gnu.org>
7049 * mf/README: Document process for proper mf2pt1 conversion.
7051 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7054 * mf/feta-harmonica.mf: Removed. Unused.
7056 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7058 * scripts/lilypond-book.py (do_file): fix thinkos.
7060 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7062 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7063 ($(outdir)/parser.cc):
7064 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7066 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7068 * ly/titling-init.ly (tagline): it should be a space between
7069 "Music engraving by LilyPond" and the version number.
7071 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7073 * VERSION (PACKAGE_NAME): release 2.7.20
7075 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7077 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7079 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7081 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7083 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7085 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7087 * kpath-guile/: remove directory
7089 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7090 file. Encapsulate kpathsea using commandline tools.
7092 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7095 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7097 * Documentation/user/advanced-notation.itely (Setting automatic
7098 beam behavior): Correct a few typos. Thanks to David Bobroff.
7100 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7101 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7103 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7105 * scripts/*.py: gmane address for bugs.
7107 2005-11-28 Pal Benko <benkop@freestart.hu>
7109 * make/ly-rules.make: add -f switch to mv
7111 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7113 * lily/bar-line.cc: interpret it
7115 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7117 * configure.in (--disable-documentation): New switch.
7119 * GNUmakefile.in: Use it.
7121 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7123 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7125 * scripts/lilypond-book.py (do_file): search chunks for
7128 * GNUmakefile.in: add copy step in between so we can lose the
7129 out-www directories.
7131 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7133 * lily/pango-font.cc (pango_item_string_stencil): put
7134 geometry.width into glyph-string too.
7136 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7138 * scm/define-music-display-methods.scm (RevertProperty):
7139 (OverrideProperty): Use grob-property-path property, a list of
7140 symbols, instead of grob-property, which used to be a single
7142 (BassFigureEvent): a figure can be a plain number, not necessarily a
7145 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7147 * VERSION: release 2.7.19
7149 * lily/figured-bass-engraver.cc (process_music): check
7150 figuredBassCenterContinuations first.
7152 * scm/translation-functions.scm (format-bass-figure): make double
7155 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7158 * lily/system-start-delimiter-engraver.cc: move from
7159 Nested_system_start_delimiter_engraver, rename
7160 Nested_system_start_delimiter_engraver ->
7161 System_start_delimiter_engraver.
7163 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7164 bracket type from hierarchy.
7166 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7168 * lily/rest.cc (y_offset_callback): read staff-position.
7170 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7171 mark after-line-breaking-callback as internal.
7173 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7175 2005-11-25 Werner Lemberg <wl@gnu.org>
7177 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7179 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7181 * stepmake/bin/add-html-footer.py (do_file): add google
7183 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7184 staff if first_start_ is true.
7186 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7188 * scripts/midi2ly.py (split_track): add __repr__ members.
7189 (track_first_item): only return Item if not None. This fixes a
7190 problem when dumping a track that starts with an empty channel.
7192 * python/midi.c: doc module.
7194 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7196 * Documentation/user/global.itely (Creating MIDI files): Fix
7197 compilation problem.
7199 2005-11-22 Graham Percival <gpermus@gmail.com>
7201 * Documentation/user/basic-notation.itely: clarify dynamic
7204 * Documentation/user/advanced-notation.itely: add unicode
7205 escape control example, whatever that is. :)
7207 * Documentation/user/global.itely: added "removing dynamics
7210 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7212 * VERSION (PATCH_LEVEL): release 2.7.18
7214 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7215 System_start_delimiter_engraver by
7216 Nested_system_start_delimiter_engraver.
7218 * lily/nested-system-start-delimiter-engraver.cc (struct
7219 Bracket_nesting_node): new class.
7220 (struct Bracket_nesting_group): new class
7221 (struct Bracket_nesting_staff): new class.
7222 (process_music): create hierarchy of grobs. This allows separate
7223 tuning of different SSDs.
7225 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7226 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7228 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7230 * lily/side-position-interface.cc (aligned_side): multiply
7233 * lily/script-engraver.cc (make_script_from_event): allow setting
7236 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7238 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7240 * scm/define-grobs.scm (all-grob-descriptions): new grob
7241 NestedSystemStartDelimiter.
7243 * input/regression/system-start-heavy-bar.ly: new file.
7245 * lily/nested-system-start-delimiter-engraver.cc: new file.
7247 * lily/nested-system-start-delimiter.cc: new file.
7249 * input/regression/system-start-nesting.ly: new file.
7251 * scm/define-grobs.scm (all-grob-descriptions): use X side
7252 positioning for positioning braces for nested contexts.
7254 * lily/system-start-delimiter.cc (print): don't divide extent by
7256 (print): use style iso. glyph.
7257 (staff_bracket): translate glyph inside routine already.
7259 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7261 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7264 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7266 * scm/define-context-properties.scm
7267 (all-user-translation-properties): rename figuredBassFormatter
7268 from newFiguredBassFormatter.
7270 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7272 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7274 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7276 * lily/beam.cc (calc_beaming): new function.
7277 (calc_shorten): new function.
7279 * THANKS: add Edward Neeman.
7281 * input/regression/accidental-clef-change.ly: new file.
7283 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7285 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7287 * lily/clef-engraver.cc (inspect_clef_properties): reset
7288 localKeySignature for clef changes.
7290 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7292 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7293 add dummy definition that works in Linux and add information in
7294 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7296 * Documentation/user/changing-defaults.itely (Modifying context
7297 plug-ins): Add index for \with.
7299 * Documentation/user/music-glossary.tely (dal segno): Updated
7300 example to version >=2.6.
7302 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7304 * Documentation/user/instrument-notation.itely (Printing chord
7305 names): Reorder \chordmode and \repeat in one example.
7307 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7309 * VERSION: release 2.7.17
7311 * Documentation/topdocs/NEWS.tely (Top): add note about
7314 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7315 new function. Search region of 3 positions for best tie.
7316 (score_configuration): new function.
7317 (score_aptitude): new function.
7318 (generate_configuration): new function.
7319 (get_configuration): new function.
7320 (Tie_formatting_problem): new function
7322 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7324 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7326 * THANKS: add Eduardo Vieira & Ralph Little
7328 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7331 * lily/include/tie-formatting-problem.hh (class
7332 Tie_formatting_problem): add Tie_details to
7333 Tie_formatting_problem. Update calling conventions.
7335 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7338 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7340 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7342 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7343 scm/define-context-properties.scm: Maintenance bugfix: make
7344 ligature brackets work again by removing obsolete ligature
7345 primitive callback push/pop.
7347 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7348 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7351 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7353 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7354 used and do not call it a path.
7355 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7357 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7359 * lily/include/tie-formatting-problem.hh (class
7360 Tie_formatting_problem): new file.
7362 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7364 * Documentation/misc/ChangeLog-2.3: new file.
7366 * lily/audio-staff.cc (output): degarianize.
7368 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7370 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7371 Unset PYTHONOPTIMIZE. Fixes install if set.
7373 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7375 * python/convertrules.py (conv): add warning about drums.
7377 * make/stepmake.make: include toplevel-version.make after config.make.
7379 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7380 also allow python2.4
7382 * config.make.in (configure-srcdir): remove GXX GCC vars.
7384 * stepmake/aclocal.m4: don't do non-srcdir build with
7385 symlinks. Use inclusion, so the src directory name can be changed.
7387 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7389 * make/mutopia-vars.make:
7390 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7393 2005-11-13 Werner Lemberg <wl@gnu.org>
7395 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7396 but the affected path. This ensures that the (overlapping) outlines
7397 have the same direction, which is a necessary prerequisite for
7398 FontForge's algorithm to remove overlaps.
7401 * mf/feta-haak.mf: Formatting.
7402 (draw_bracket): Slightly modify outline to avoid an unnecessary
7404 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7405 them from the affected paths.
7407 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7409 * mf/README: remove xpm / accordion notes.
7411 * lily/tie-column-format.cc (set_chord_outline): add dots into
7412 skyline extents. This fixes tie formatting if the left head has dots.
7414 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7415 space inside the staff.
7416 (get_configuration): shift another position if necessary in case
7419 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7421 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7422 buildscript-dir iso. $(depth)/buildscripts.
7424 * tex/GNUmakefile (local-uninstall): remove
7425 music-drawing-routines.ps juggling.
7427 * stepmake/stepmake/install-targets.make (local-install-files):
7428 prepend src-dir to install targets.
7430 * lily/system-start-delimiter-engraver.cc
7431 (acknowledge_system_start_delimiter): use
7432 add_offset_callback(). This fixes translation of nested
7435 * lily/grob-closure.cc (add_offset_callback): only encaps in
7436 simple_closure if it's a procedure.
7438 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7441 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7442 remove-empty where pertinent.
7444 2005-11-12 Graham Percival <gpermus@gmail.com>
7446 * Documentation/user/instrument-notation.itely: added
7447 Cameron Horsburgh's multiple stanzas docs. Thanks!
7449 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7452 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7453 make picture in builddir, not srcdir.
7455 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7457 * VERSION: release 2.7.16
7459 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7462 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7464 * Documentation/user/examples.itely (Piano templates): Minor
7465 modification to the Piano centered lyrics example.
7467 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7469 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7472 * Documentation/user/point-and-click.itely: simplify p&c
7473 instruction: don't configure firefox. Put lilypond-invoke-editor
7474 in front of the browser.
7476 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7477 (run-browser): new function.
7479 * lily/parser.yy (Lily_lexer): recognize Book
7481 * lily/book.cc (clone): new function
7483 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7485 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7487 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7488 Maintenance bugfix: reduce number of font related warnings by
7489 updating naming conventions for glyph-name.
7491 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7493 * scm/define-grobs.scm (all-grob-descriptions): add
7494 rhythmic-grob-interface to TabNoteHead.
7496 * scm/layout-beam.scm (check-quant-callbacks): remove
7499 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7501 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7502 alignment of centered divisiones.
7504 * scm/scripts.scm (articulations): Maintenance bugfix:
7505 follow-into-staff -> quantize-position.
7507 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7508 plica head in porrectus deminutus.
7510 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7512 * make/lilypond.fedora.spec.in (Group): add %clean section.
7514 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7515 less then 1/5th of total length.
7516 (print): use gap too. Fixes tupletUp-single-bracket.ly
7518 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7519 events into EventChord. This fixes textspanners on mm rests. Fixes
7522 * lily/side-position-interface.cc (get_axis): read side-axis
7523 (set_axis): set side-axis.
7525 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7526 properties everywhere.
7528 * lily/spacing-spanner.cc (breakable_column_spacing): add
7529 average-spacing-wishes. Take maximum if not set.
7530 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7532 * scm/define-grobs.scm (all-grob-descriptions): add
7533 average-spacing-wishes.
7535 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7536 offset callbacks. This fixes alignment for Fingering objects.
7538 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7539 space for key - timesig combination.
7541 * input/regression/script-stem-tremolo.ly (Module): new file.
7543 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7546 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7547 Fixes: c-tremolo-script.ly.
7549 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7551 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7553 * scm/define-grobs.scm (all-grob-descriptions): remove
7554 self-X-offset. Fixes alignment of octavate-8.
7556 * scripts/lilypond-book.py (datadir): look in
7557 LILYPONDPREFIX/share/lilypond/current/
7559 * GNUmakefile.in: symlink current to <VERSION>.
7561 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7563 * lily/main.cc: eps listed as a backend.
7565 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7567 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7569 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7571 * lily/include/score.hh (class Score): remove texts_ member.
7573 * lily/beam.cc (set_stem_lengths): force direction callback.
7574 (print): read quantized-positions, so we can force
7575 Beam::set_stem_lengths to occur.
7576 (rest_collision_callback): use common X parent.
7578 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7580 * flower/file-path.cc (find): Bugfix: Return name of file found.
7582 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7583 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7584 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7586 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7588 * flower/offset.cc: idem.
7590 * mf/*.mf: update email address.
7592 * lily/font-config-scheme.cc: new file.
7594 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7596 * lily/*: cs.uu.nl -> xs4all.nl
7598 * VERSION (PATCH_LEVEL): release 2.7.15
7600 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7603 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7605 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7607 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7609 * lily/staff-performer.cc (process_music): add audio
7610 elements. This makes MIDI instrument changes work once again.
7612 * lily/main.cc (LY_DEFINE): add gmane address.
7614 * lily/beam.cc: remove calc_positions()
7616 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7617 original_ in private scope.
7618 (class Grob): drop pscore_ pointer, change to output_def pointer.
7619 (class Grob): cleanup class definition.
7621 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7623 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7625 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7626 absolute. Better diagnostics.
7628 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7629 This makes lilypond run from the build directory using argv0
7630 relocation (without any --prefix or LILYPONDPREFIX setting).
7632 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7634 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7636 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7637 with simple-closure.
7639 * lily/self-aligment-interface.cc (set_align_self): new function
7640 (set_center_parent): new function.
7642 * lily/side-position-interface.cc (set_axis): new function.
7644 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7647 * scm/define-grob-properties.scm (all-user-grob-properties):
7648 remove [XY]-offset-callbacks add [YX]-offset
7650 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7652 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7653 entry for time signatures after breathing signs. Bug report by
7656 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7658 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7659 not absolute, make it absolute using PATH.
7661 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7663 * python/midi.c (initmidi): Fix type for mingw.
7665 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7667 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7669 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7672 * stepmake/aclocal.m4: Support python cross compiling.
7674 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7677 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7679 * scm/output-lib.scm (chain-grob-member-functions): replace
7682 * lily/chained-callback.cc (Module): remove file.
7684 * lily/rest-collision.cc (force_shift_callback_rest): change to
7687 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7689 * lily/grob.cc (y_parent_positioning): remove axis argument from
7690 parent_positioning callbacks.
7691 (Grob): junk init code
7692 (get_offset): use generic property callbacks for
7693 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7694 (axis_parent_positioning): new function
7695 (axis_offset_symbol): new function
7696 (chain_offset_callback): new function
7697 (add_offset_callback): new function
7699 * lily/beam.cc (rest_collision_callback): change signature; this
7700 is now a chained callback.
7702 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7703 callback administration.
7705 * lily/simple-closure.cc: new file. Smob type that allows "grob
7708 (ly:make-simple-closure FUNC A B)
7710 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7713 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7716 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7718 * lily/rest.cc (polyphonic_offset_callback): remove.
7720 * lily/script-engraver.cc (try_music): remove bool* argument.
7722 * scm/script.scm (default-script-alist): set quantize-position
7725 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7727 * lily/side-position-interface.cc (aligned_side): move staff
7728 position quantization from
7729 Side_position_interface::quantised_position().
7730 (quantised_position): remove
7732 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7734 * input/regression/beam-quant-standard.ly: reindent, set
7735 debug-beam-quanting to #t.
7737 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7738 10000 if this is a "hard" concave beam.
7740 * lily/beam.cc (calc_least_squares_positions): change from
7741 calc_least_squares_dy
7742 (set_stem_lengths): this is now a chained callback.
7744 * lily/context-property.cc (execute_general_pushpop_property):
7745 bugfix override with procedure should have effect.
7747 * scm/define-grob-properties.scm (all-internal-grob-properties):
7748 remove position-callbacks.
7750 * scm/define-grobs.scm (all-grob-descriptions): use
7751 ly:make-callback-chain for positions property.
7753 * scm/layout-beam.scm (check-quant-callbacks): return list of
7756 * scm/lily.scm (type-p-name-alist): add callback-chain
7758 * lily/lily-guile.cc (type_check_assignment): type check failure
7759 is warning not message.
7761 * lily/grob-property.cc (try_callback): walk callback chain if
7764 * lily/chained-callback.cc: new file. new smob type.
7766 * lily/lily-guile.cc (procedure_arity): new function.
7768 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7770 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7772 2005-10-25 John Mandereau <john.mandereau@free.fr>
7774 * Documentation/user/instrument-notation.itely (Figured bass):
7775 describe new features
7777 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7779 * lily/beam.cc (calc_least_squares_dy): use property callback.
7781 * lily/beam-concave.cc (calc_concaveness): use property callback.
7783 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7785 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7789 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7791 * scm/layout-page-layout.scm (page-headfoot): annotate
7794 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7796 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7797 doesn't take y-space.
7799 * scm/paper.scm (paper-alist): fix A7 dimensions.
7801 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7803 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7804 src-wildcard, remove $(wildcard).
7806 * po/GNUmakefile (PO_FILES):
7807 * ps/GNUmakefile (PS_FILES):
7808 * tex/GNUmakefile (TEX_FILES):
7809 * cygwin/GNUmakefile (POSTINSTALLS):
7810 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7811 some wildcard calls.
7813 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7815 * THANKS: add Thomas Bushnell.
7817 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7819 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7820 (lilypond-main): Redirect to gui-main if 'gui is set.
7822 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7823 for alternative installations kludging s/share/lib/g
7826 * SConstruct (libdir_package_version): Define.
7828 * python/SConscript:
7829 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7832 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7834 * lily/main.cc: clarify --safe.
7836 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7838 * VERSION: release 2.7.14
7840 * Documentation/user/*.itely: remove minimumVerticalExtent.
7842 * scm/define-grobs.scm (all-grob-descriptions): remove
7843 RemoveEmptyVerticalGroup
7845 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7847 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7850 * python/convertrules.py (conv): add rules.
7852 * lily/grob.cc: remove is_empty()
7854 * lily/grob-property.cc: remove add_to_list_property().
7856 * scripts/convert-ly.py (datadir): add prefix switching hack to
7859 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7860 space-function tweak.
7862 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7864 * scm/define-grob-properties.scm (all-user-grob-properties):
7865 remove callback property.
7867 * lily/include/grob.hh (class Grob): remove property_callbacks_
7868 member. Properties of procedure type are assumed to be callbacks.
7870 * lily/ligature-engraver.cc (override_stencil_callback):
7871 rewrite. Use noteHeadLigaturePrimitive as source.
7873 * scm/define-grob-properties.scm (all-internal-grob-properties):
7874 remove ligature-primitive-callback
7876 * lily/include/dimension-cache.hh (class Dimension_cache): make
7877 class, with Grob as friend.
7879 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7880 has_extent_callback()
7882 * scm/translation-functions.scm (format-new-bass-figure): read
7883 figuredBassPlusDirection
7885 * scm/define-context-properties.scm
7886 (all-user-translation-properties): add figuredBassPlusDirection.
7888 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7890 * lily/align-interface.cc (set_ordered): new function.
7892 * lily/grob.cc (flush_extent_cache): rewrite.
7894 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7895 Interval pointer directly.
7897 * lily/main.cc (setup_paths): insert extra / .
7898 (setup_paths): junk cff entry.
7900 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7903 * lily/axis-group-engraver.cc (finalize): remove
7904 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7906 * lily/grob.cc (Grob): don't set extent from ctor.
7907 (extent): use property callbacks.
7909 * lily/axis-group-interface.cc: remove set_axes() function.
7911 * lily/grob-property.cc (del_property): new function.
7913 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7915 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7917 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7919 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7921 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7923 * mf/SConscript: Updates.
7925 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7927 * stepmake/stepmake/*:
7931 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7932 from any directory in build-dir. Cleanups.
7934 * make/srcdir.make.in: Remove.
7936 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7938 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7941 * lily/SConscript: Remove ttftools.
7943 * SConstruct: Resurrect.
7945 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7947 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7950 * lily/paper-book.cc (add_score_title): put Paper_score title into
7953 * scm/translation-functions.scm (format-new-bass-figure): also
7954 allow plus in combination with _
7956 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7958 * VERSION: 2.7.13 released.
7960 * lily/note-collision.cc (check_meshing_chords): don't wipe
7961 stencil, merely set transparent.
7963 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7964 (Top): document #'callbacks.
7965 (Top): document nested \override.
7967 * input/regression/figured-bass.ly: update for slash and pluses.
7969 * input/regression/figured-bass-continuation-forbid.ly (Module):
7972 * scm/translation-functions.scm (format-new-bass-figure): use
7973 slashed-digit if diminished is set.
7974 (format-new-bass-figure): add + if 'augmented is set.
7976 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7978 * input/test/piano-staff-distance.ly: remove file.
7980 * Documentation/user/advanced-notation.itely (Formatting cue
7981 notes): use length-fraction for making stems/beams smaller.
7983 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7986 * lily/new-figured-bass-engraver.cc: new property
7987 centerFiguredBassContinuations
7989 * Documentation/user/changing-defaults.itely (Difficult tweaks):
7992 * lily/context-property.cc (execute_general_pushpop_property):
7995 * input/regression/override-nest.ly: new file.
7997 * python/convertrules.py (FatalConversionError.subber): conversion
7998 rule for #'callbacks
8000 * input/regression/override-nest.ly: new function.
8002 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8005 * lily/context-property.cc (lookup_nested_property): new function.
8006 (evict_from_alist): new function.
8007 (general_pushpop_property): new function.
8008 (execute_general_pushpop_property): rewrite. Support nested
8011 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8013 * lily/beam.cc: use length-fraction too.
8015 * scm/define-grob-properties.scm (all-user-grob-properties):
8016 remove property flag-width-function
8017 (all-user-grob-properties): remove space-function.
8019 * scm/layout-beam.scm: remove flag-width-function.
8021 * lily/beam.cc: remove flag-width-function
8023 * scm/layout-beam.scm: remove beam dir functions.
8025 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8027 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8028 for easier grace tweaks.
8030 * lily/beam.cc: remove dir-function.
8032 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8034 * lily/grob.cc: remove spacing-procedure.
8036 * lily/note-head.cc (calc_stem_attachment): new function.
8037 (internal_print): use callback to get glyph-name.
8039 * lily/grob-property.cc (get_interfaces): new function.
8041 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8043 * lily/stem.cc (calc_stem_end_position): new function.
8044 (calc_length): new function.
8045 document details for stem.
8046 remove Stem::get_direction()
8048 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8050 * lily/grob-property.cc (set_callback): new function.
8052 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8054 * lily/item-scheme.cc: new file.
8056 * lily/bar-line.cc (before_line_breaking): remove function.
8057 remove bar-size-procedure, break-glyph-function
8059 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8061 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8063 * lily/system-start-delimiter.cc (print): suicide from
8064 here. Remove after_line_breaking_callback.
8066 * lily/script-interface.cc (calc_direction): use callback for direction.
8068 * lily/side-position-interface.cc (aligned_side): don't use
8069 Side_position_interface::get_direction directly. Use callback.
8071 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8073 (get_print_stencil): rename from get_stencil: create stencil with
8074 transparency, color and cause.
8076 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8078 * python/convertrules.py (conv): insert temporary warning rule.
8080 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8082 * lily/grob-property.cc (try_callback): remove marker if applicable.
8084 * lily/grob.cc: elucidate doc about after/before-line-breaking
8086 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8088 * lily/stem.cc (height): idem.
8090 * lily/stem-tremolo.cc: idem.
8092 * lily/slur.cc (height): don't use get_uncached_stencil()
8094 * lily/rest.cc (y_offset_callback): use offset callback
8095 iso. after-line-breaking callback.
8097 * lily/grob.cc: change after/before-line-breaking-callback to
8098 after/before-line-breaking dummy properties.
8100 * lily/include/grob.hh: remove Grob_status.
8102 * scm/define-context-properties.scm
8103 (all-user-translation-properties): remove verticalAlignmentChildCallback
8105 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8106 (calc_direction): use callback
8107 (calc_positions): use callback.
8109 * lily/tie.cc (calc_direction): use callback. Only call parent
8110 positioning for more than one tie.
8112 * lily/tie-column.cc (calc_positioning_done): use callback
8114 * lily/slur-scoring.cc (calc_control_points): use callback
8116 * lily/slur.cc (calc_direction): use callback.
8118 * lily/note-collision.cc (force_shift_callback): remove.
8120 * lily/dot-column.cc (force_shift_callback): remove. Use
8121 other_axis_parent_positioning.
8123 * lily/grob.cc (other_axis_parent_positioning): new function.
8124 (same_axis_parent_positioning): new function
8126 * lily/align-interface.cc (alignment_callback): remove function.
8128 * lily/note-collision.cc (calc_positioning_done): use callback.
8130 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8131 (calc_direction): idem.
8132 remove print function.
8134 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8136 * lily/dot-column.cc (calc_positioning_done): use callback.
8138 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8140 * lily/beam.cc (calc_direction): use pseudo-property for beam
8142 (calc_positions): use callback
8144 * lily/align-interface.cc (calc_positioning_done): use
8145 callback. Fold fixed distance and normal alignment in one function.
8147 * lily/stem.cc (calc_stem_end_position): use callback.
8148 (calc_positioning_done): idem.
8149 (calc_direction): idem.
8150 (calc_stem_end_position): idem
8151 (calc_stem_info): idem.
8153 * lily/grob-property.cc (get_property_data): new function:
8154 (try_callback): new function.
8156 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8159 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8161 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8163 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8167 * lily/include/*.hh (Module): compile fixes.
8169 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8171 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8172 as an argument for char-syntax: use (char-syntax (or nil 0))
8173 instead of (char-syntax nil), thanks to Milan Zamazal.
8175 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8177 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8180 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8183 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8185 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8186 add class_name() method.
8188 * lily/music-scheme.cc: remove ly:music-name.
8190 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8192 * cygwin/postinstall-lilypond.sh: Remove cruft.
8194 * cygwin/postremove-lilypond.sh: Remove.
8196 * cygwin/GNUmakefile (default): Remove postremove rules.
8198 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8200 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8203 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8206 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8207 consider break index for broken spanner.
8209 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8210 characters from string before splitting.
8212 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8214 * scm/framework-ps.scm (output-preview-framework): use
8215 is-book-title to determine whether to chop off the booktitle.
8217 * lily/paper-book.cc (systems): init from book-title-properties
8218 (add_score_title): init score-title-properties.
8220 * ly/paper-defaults.ly: add {score,book}-title-properties.
8222 * scm/document-backend.scm (lookup-interface): error message if
8223 using unknown interface.
8225 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8228 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8230 (make_bracket): new function.
8232 * scm/lily.scm (define-scheme-options): add paper-size option.
8234 * ly/declarations-init.ly (laissezVibrer): get paper size from
8237 * scm/translation-functions.scm: use \fontsize for changing the
8240 * scm/define-grobs.scm (all-grob-descriptions): set
8241 between-length-limit to 1.0
8243 * lily/tie-helper.cc: add between_length_limit_ detail property.
8245 * mf/feta-bolletjes.mf: typos.
8247 * lily/note-head.cc (internal_print): don't shadow idx
8248 parameter. This fixes wrong attachment for do shape heads.
8250 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8252 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8254 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8256 * scm/layout-slur.scm: rename from slur.scm
8258 * scm/layout-page-layout.scm: rename from page-layout.scm
8260 * scm/layout-beam.scm: rename from beam.scm
8262 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8263 bass-figure-interface
8265 * lily/new-figured-bass-engraver.cc (process_music): add
8266 implicitBassFigures property.
8268 * scm/define-markup-commands.scm (pad-x): new markup.
8270 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8271 minimumVerticalExtent on FiguredBass context.
8273 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8274 case the continuation crosses a line break.
8276 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8278 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8279 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8280 absolute file name bug.
8282 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8284 * VERSION (PACKAGE_NAME): release 2.7.12
8286 * input/regression/figured-bass-continuation-center.ly: new file.
8288 * input/regression/beam-outside-beamlets.ly: new file.
8290 * lily/beam.cc (set_beaming): don't clip edges.
8291 (connect_beams): don't clip edges.
8293 * lily/beaming-info.cc (clip_edges): new function.
8295 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8297 * Documentation/user/instrument-notation.itely (Figured bass):
8298 demonstrate extenders, update seealso links.
8300 * scm/titling.scm (marked-up-headfoot): change tagline
8301 handling. tagline = ##f will blank the tagline as well.
8303 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8305 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8307 * lily/new-figured-bass-engraver.cc (struct
8308 New_figured_bass_engraver): add new_music_found_ member.
8310 * lily/lilypond-version.cc (Lilypond_version): deal with
8311 incorrectly formatted version strings.
8313 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8314 New_figured_bass_engraver by default.
8316 * lily/ttf.cc (print_trailer): only define glyph names when
8317 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8319 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8321 * lily/horizontal-bracket.cc (make_bracket): new function.
8323 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8324 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8325 BassFigureLine, BassFigureAlignment
8327 * lily/new-figured-bass-engraver.cc (process_music): new file.
8329 * lily/figured-bass-continuation.cc: new file.
8331 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8334 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8336 * scripts/lilypond-book.py: Bug fix, put the quote around the
8337 actual score for LaTeX documents.
8339 * scm/define-grobs.scm (all-grob-descriptions): Change
8340 collapse-height of the SystemStartBracket grob to 5.0,
8341 so the bracket disappears for single stave score lines (similarly
8342 to SystemStartBraces).
8344 * Documentation/user/advanced-notation.itely (Polymetric
8345 notation): Clarify the use of compressMusic.
8347 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8348 that the grace spacer note in other staves need the same duration
8349 and document the stroke-style property.
8351 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8353 * Documentation/user/global.itely (Vertical spacing): document
8354 alignment-extra-space and fixed-alignment-extra-space.
8356 * Documentation/topdocs/NEWS.tely (Top): add entry.
8358 * input/regression/alignment-vertical-spacing.ly: new file.
8360 * python/convertrules.py (conv): add rule.
8362 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8364 * lily/align-interface.cc (stretch_after_break): new
8365 function. Read fixed-alignment-extra-space property.
8366 (align_elements_to_extents): read alignment-extra-space property.
8368 * lily/lily-guile.cc (robust_scm2dir): new function.
8370 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8371 (annotate-space-left): new function. Annotate space left on page.
8372 (annotate-y-interval): new function.
8373 (paper-system-annotate-last): new function. Annotate bottom-space.
8375 * mf/feta-beugel.mf (y):
8377 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8379 * VERSION (PACKAGE_NAME): release 2.7.11
8381 * scm/lily-library.scm (interval-translate): new function
8382 (interval-center): new function.
8384 * scm/page-layout.scm (paper-system-annotate): new function. Add
8385 arrows for dimensions.
8387 * scm/stencil.scm (dimension-arrows): new function.
8389 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8391 * input/regression/page-spacing.ly: add annotatespacing
8393 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8394 (LY_DEFINE): new function ly:paper-system-set-property!
8396 * Documentation/user/global.itely (Paper size): explain how to add
8399 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8400 correspond to GS's definition.
8402 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8404 (print): only connect to next bracket if the next one is alive.
8405 (print): set padding to 0.0 if the bound is a breakable
8406 column. This makes tupletFullLength brackets reach up to the staff
8407 line if it doesn't connect to the next line.
8409 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8411 * lily/bar-number-engraver.cc: correct docs.
8413 * scm/output-lib.scm (first-bar-number-invisible): rename from
8414 default-bar-number-visibility
8416 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8418 * scm/define-music-properties.scm (all-music-properties): remove
8421 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8423 * po/fi.po: refresh.
8425 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8427 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8429 (disappear): bugfix.
8431 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8433 * lily/include/paper-system.hh (class Paper_system): remove
8434 staff_extents_ member.
8436 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8438 * lily/include/paper-system.hh (class Paper_system): remove
8439 number_ variable. Remove is_title_. Remove break_before_penalty_
8441 * lily/paper-book.cc (systems): use 'number property iso. number_
8444 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8445 remove ly:paper-system-number.
8447 * scm/lily-library.scm (paper-system-title?): new function.
8449 * lily/book.cc (process): bugfix: flip ?: cases.
8451 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8454 * ly/music-functions-init.ly: add outputProperty music function.
8456 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8458 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8460 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8462 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8464 * lily/paper-system.cc (internal_get_property): new function.
8466 * Documentation/user/global.itely (Vertical spacing): refer to
8469 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8472 * input/regression/page-spacing.ly: new file.
8474 * input/regression/page-top-space.ly: new file.
8476 * lily/spacing-spanner.cc: cmath -> math.h
8478 * lily/paper-system.cc (read_left_bound): new function. Read
8479 line-break-system-details from left bound to determine extents.
8481 * Documentation/user/programming-interface.itely (Using LilyPond
8482 syntax inside Scheme): change applyxxx -> applyXxx.
8484 * ly/music-functions-init.ly: add outputProperty music function.
8486 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8488 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8490 * python/convertrules.py (conv): rule
8492 * ly/music-functions-init.ly: applyxxx -> applyXxx
8494 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8497 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8499 * flower/include/real.hh: include <math.h> iso. <cmath>
8501 * flower/include/offset.hh: include real.hh
8503 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8505 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8506 fix example, now that 'interfaces is no longer directly available.
8508 * lily/book.cc (process): don't crash if paper == NULL.
8512 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8514 * scm/define-music-types.scm (music-descriptions): set length and
8515 start-callback for QuoteMusic
8517 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8519 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8520 arguments. Fixes compilation error with gcc 3.3.
8522 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8524 * VERSION: release 2.7.10
8526 * stepmake/stepmake/python-module-rules.make
8527 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8529 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8532 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8534 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8535 -Werror. Otherwise GCC barfs over various optimizations.
8537 * scm/define-grob-properties.scm (all-internal-grob-properties):
8538 add note-head property
8540 * Documentation/user/instrument-notation.itely (Laissez vibrer
8543 * input/regression/laissez-vibrer-ties.ly: new file.
8545 * lily/laissez-vibrer-engraver.cc: new file.
8547 * lily/include/tie-column-format.hh: new file.
8549 * lily/tie-column-format.cc: new file.
8551 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8553 * lily/laissez-vibrer-tie.cc: new file.
8555 * lily/include/laissez-vibrer-tie.hh: new file.
8557 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8559 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8561 * scm/define-grobs.scm (all-grob-descriptions): add
8562 LaissezVibrerTie, LaissezVibrerTieColumn
8564 * lily/tie-column.cc (set_tie_config_directions): new function
8565 (final_shape_adjustment): new function.
8566 (shift_small_ties): new function.
8568 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8570 * lily/include/tie.hh (struct Tie_details): add x_gap_
8571 (struct Tie_configuration): add head_position_
8573 * lily/tie-column.cc (set_chord_outline): new function.
8575 * mf/cmr.enc.in: remove file.
8577 2005-09-11 Graham Percival <gpermus@gmail.com>
8579 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8581 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8583 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8584 reduce aliasing effects.
8586 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8589 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8591 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8593 * flower/include/real.hh: std::fabs too.
8595 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8597 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8599 * lily, flower: Include C++ iso C headers. Import namespace std
8602 * lily/side-position-interface.cc:
8604 * lily/note-head.cc:
8605 * lily/include/includable-lexer.hh:
8606 * flower/include/string-data.icc: Remove using std::*.
8608 * lily, flower: Include C++ iso C headers. Import namespace std
8611 * lily/side-position-interface.cc:
8613 * lily/note-head.cc:
8614 * lily/include/includable-lexer.hh:
8615 * flower/include/string-data.icc: Remove using std::*.
8617 * Documentation/user/instrument-notation.itely (Entering lyrics):
8618 Multiple latin-1->utf-8 conversion fix.
8620 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8622 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8624 * lily/tie.cc (get_configuration): also avoid dots for non-space
8627 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8629 * Documentation/user/instrument-notation.itely: Bugfix.
8631 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8633 * tex/GNUmakefile: don't install texinfo.tex
8635 * tex/ : cleanup: remove unused files.
8637 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8639 * flower/include/real.hh: using std::{isnan,isinf}
8641 * VERSION (PATCH_LEVEL): release 2.7.9
8643 2005-09-05 Graham Percival <gpermus@gmail.com>
8645 * Documentation/user/ instrument-notation.itely,
8646 advanced-notation.itely: minor tweaks.
8648 * input/test/script-chart.ly: add item padding.
8650 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8652 * flower/offset.cc: use math.h iso. <cmath>
8654 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8657 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8658 (widen-left-stencil-edges): new function. Fix alignment problems
8659 with LaTeX includegraphics.
8661 * lily/text-interface.cc (interpret_markup): use abort().
8663 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8665 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8667 * lily/tie.cc (get_configuration): update bezier shape as we
8669 (get_configuration): don't move large ties if we're outside of the
8672 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8674 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8676 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8678 * .cvsignore: Add auto-generated configure files and then some.
8680 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8682 * scm/define-grobs.scm (DynamicLineSpanner): Add
8683 X-extent-callback. Fixes hairpin-slur collision.
8685 2005-08-31 Graham Percival <gpermus@gmail.com>
8687 * Documentation/user/advanced-notation.itely,
8688 basic-notation.itely: minor changes.
8690 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8692 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8693 \linebreak between each .eps file if \betweenLilyPondSystem is
8696 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8697 music): Document the \linebreak
8699 * Documentation/user/lilypond-book.itely,
8700 input/tutorial/lbook-latex-test.tex,
8701 Documentation/user/examples.itely: Remove \usepackage{graphics}
8703 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8705 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8707 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8710 * scripts/lilypond-book.py (PREAMBLE_LY): define
8711 inside-lilypond-book
8712 (modify_preamble): new function. Insert \RequirePackage{graphics}
8713 when no {graphics found in preamble.
8715 2005-08030 Graham Percival <gpermus@gmail.com>
8717 * Documentation/user/basic-notation.itely, global.itely,
8718 tutorial.itely: misc small changes.
8720 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8722 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8725 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8727 * lily/tie-column.cc (new_directions): put Tie down on center
8730 * lily/script-interface.cc (before_line_breaking): use
8731 Grob::programming_error
8733 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8735 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8738 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8740 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8742 2005-08-29 Werner Lemberg <wl@gnu.org>
8744 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8745 the `*.scale.pfa' files to avoid warnings.
8747 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8749 * lily/tempo-performer.cc (process_music): idem.
8751 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8753 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8755 * Documentation/user/advanced-notation.itely (Text markup): not a
8758 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8760 * lily/staff-performer.cc (initialize): add tempo/name to
8764 2005-08-26 Graham Percival <gpermus@gmail.com>
8766 * Documentation/user/advanced.itely: add text-only example.
8768 * Documentation/user/invoking.itely: add index entries for
8771 * Documentation/user/ tutorial.itely, basic-notation.itely:
8772 small fixes suggested by Steve D. Thanks!
8774 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8776 * input/regression/markup-bidi-pango.ly: new file.
8778 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8779 standard. Remove #ifdef. Remove memleak.
8780 (text_stencil): use text_dir to decide how to composite items.
8781 (text_stencil): determine uniform text direction for the entire
8784 * scripts/lilypond-book.py (output_name): remove
8785 latex_filter_cmd. Non-portable to non-Unix systems.
8786 (get_latex_textwidth): use File.write and os.unlink() instead.
8788 * THANKS: add Vicente & Trevor.
8790 * lily/grob.cc (discretionary_processing): look up origin for
8791 programming_error too.
8793 * input/regression/tie-broken.ly: new file.
8795 * lily/tie-column.cc (set_chord_outlines): set outline for line
8798 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8800 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8801 unscaled transform, just translate stencils.
8803 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8806 * scm/define-markup-commands.scm (wordwrap-string): use
8808 (wordwrap-stencils): idem.
8811 (wordwrap-stencils): translate last line to right for
8812 text-direction = LEFT.
8814 * scm/define-grob-properties.scm (all-user-grob-properties): add
8817 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8819 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8820 when copying a Lily_parser object.
8822 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8824 * scm/define-markup-commands.scm (null): add null markup.
8826 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8828 * lily/item.cc: Add documentation of center-invisible
8830 2005-08-24 Graham Percival <gpermus@gmail.com>
8832 * Documentation/user/advanced-notation.itely: add info about
8835 * Documentation/user/programming-interface.itely: fix example
8836 involving raised text.
8838 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8840 * lily/beam.cc (print): fix X start/end points of isolated
8843 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8845 * lily/multi-measure-rest.cc (set_text_rods): new function.
8847 * lily/vertical-align-engraver.cc (process_music): call
8848 Align_interface::set_axis(). This forces #'elements to be ordered,
8849 preventing random vertical reordering of staves.
8851 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8852 add avoid-slur property.
8854 * Documentation/user/basic-notation.itely (Measure repeats): add
8855 countPercentRepeats example.
8857 * Documentation/user/advanced-notation.itely (Other text markup
8858 issues): remove remark about normal-font. We have \normal-text
8860 * input/regression/tie-chord.ly: add note about remaining bugs.
8862 * lily/tie.cc (print): try Tie_column::set_directions () if
8863 control-points not yet defined.
8865 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8867 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8868 extent. This fixes braces falling out of the EPS bbox.
8870 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8873 2005-08-23 Graham Percival <gpermus@gmail.com>
8875 * {various} : change #up->#UP and #down->#DOWN.
8877 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8879 * Documentation/user/advanced-notation.itely: clarify
8880 what objects handles text on a multimeasure rest.
8882 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8884 * VERSION (PATCH_LEVEL): release 2.7.7
8886 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8888 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8890 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8892 * input/regression/*.ly: formatting clean-up. Default layout
8893 before music expression.
8895 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8896 romanze28-2 example.
8898 * scm/ps-to-png.scm: remove dir-re function.
8899 (make-ps-images): generate page names, instead of globbing them.
8900 This brings down LilyPond memory usage for make web by a factor
8903 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8904 don't use glob. With 3000 files, globbing
8905 Documentation/user/out-www/ can take too much time.
8907 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8909 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8911 * input/regression/tie-manual.ly: new file
8913 * input/regression/tie-chord.ly: update.
8915 * flower/include/interval.hh (struct Interval_t):
8917 * lily/tie.cc (distance): new function
8918 (height): new function.
8919 (init): new function
8920 (Tie_details): new struct.
8922 * lily/skyline.cc (skyline_height): new function.
8924 * lily/tie-column.cc (set_chord_outlines): new function.
8925 (new_directions): read tie-configuration
8927 * lily/skyline.cc: fix ASCII art.
8929 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8931 * python/convertrules.py (string_or_scheme): Fix spelling error
8933 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8935 * lily/tie-column.cc (set_directions): set directions only once.
8936 (add_configuration): new function.
8938 * lily/tie.cc (set_control_points): new function
8940 * lily/tie-column.cc (new_directions): new function.
8942 * ly/music-functions-init.ly: set 'pitch property
8943 iso. trill-pitch. This makes \relative work with \pitchedTrill
8945 * lily/tie.cc (get_configuration): new function. Don't generate
8946 control points, rather, generate configuration.
8947 remove head-pair property.
8949 * lily/include/tie.hh (struct Tie_configuration): new struct.
8951 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8953 * Documentation/topdocs/NEWS.tely: clarify.
8955 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8957 * lily/tie.cc: remove minimum-length
8959 * scm/define-grob-properties.scm (all-user-grob-properties):
8960 remove staffline-clearance, y-offset
8962 * input/regression/tie-dots.ly (Module): remove.
8964 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8965 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8967 * input/regression/tie-single.ly: new file.
8969 2005-08-21 Graham Percival <gpermus@gmail.com>
8971 * ly/bagpipe.ly: fix compile problem.
8973 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8975 * lily/midi-item.cc (name): new method.
8977 * lily/staff-performer.cc (acknowledge_audio_element): use
8978 signature of baseclass.
8980 * lily/engraver-group.cc (do_announces): move recursion call out
8983 * lily/drum-note-performer.cc (class Drum_note_performer): use
8984 process_music everywhere.
8986 * ly/performer-init.ly: add default children everywhere.
8988 * lily/paper-book.cc (output): call paper-book-write-midis
8989 directly: always write MIDI, even if no \layout {} block.
8991 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8993 * VERSION (PACKAGE_NAME): release 2.7.6
8995 * lily/percent-repeat-engraver.cc (try_music): don't print warning
8996 about not being able to handle repeat.
8998 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9000 * Documentation/user/examples.itely (Piano templates):
9001 * lily/include/performer-group.hh: Remove last traces of
9002 Performer_group_performer. Fixes make web.
9004 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9006 * Documentation/user/examples.itely (Piano templates): change
9007 Engraver_group_engraver -> Engraver_group
9009 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9010 scm_stand_in_procs is not weak_any.
9012 * lily/volta-bracket.cc (print): don't use strcmp().
9014 * lily/volta-engraver.cc (process_music): use
9015 Text_interface::is_markup() for setting the 'text property of the
9018 * input/mutopia/claop.py (accents): update syntax to 2.6
9020 * scm/define-context-properties.scm
9021 (all-user-translation-properties): add countPercentRepeats.
9023 * Documentation/user/basic-notation.itely (Measure repeats): add
9024 isolated percent example.
9026 2005-08-18 Graham Percival <gpermus@gmail.com>
9028 * input/ {various}: change direction #1, #-1 to
9029 #up/#down or \fooUp, \fooDown.
9031 * Documentation/user/music-glossary.tely: #-1 to #down.
9033 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9034 to #up, #-1 to #down.
9036 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9038 * lily/include/engraver-group.hh: rename.
9040 * lily/include/performer-group.hh: rename.
9042 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9044 * input/test/script-abbreviations.ly: Removed some old LaTeX
9047 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9049 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9050 Remove functions. Remove if 1: constructs, reindent.
9052 * scripts/convert-ly.py (add_version): Add functions from
9055 * scm/script.scm (default-script-alist):
9056 s/priority/script-priority. Fixes script stacking. Backportme.
9057 (Fermata): Very low priority.
9059 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9061 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9063 * input/regression/slur-script.ly: remove padding tweaks. Add
9066 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9067 time sigs and related stuff.
9069 * scm/define-grob-properties.scm (all-user-grob-properties): add