1 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
3 * ly/gregorian-init.ly (neumeDemoLayout): update
4 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
6 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
7 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
9 2006-10-27 Erlend Aasland <erlenda@gmail.com>
11 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
12 Yet another build fix.
14 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
16 * SConstruct (lilypondprefix): use sorted() for list_sort()
19 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
21 * flower/SConscript: Unit test rules.
23 * flower/test-std.cc: Compile fix.
25 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
27 * python/midi.c (pymidi_parse_track): warning fixes.
29 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
32 2006-10-26 Graham Percival <gpermus@gmail.com>
34 * Documentation/user/ {basic-, global}: minor changes from mailist.
36 2006-10-26 Erlend Aasland <erlenda@gmail.com>
38 * scm/define-grobs.scm: trivial beautification
40 * lily/tie-performer.cc: no need to #include "pqueue.hh"
42 * lily/source-file.cc: put multibyte var inside #if clause
44 * scm/define-grob-interfaces.scm:
45 * scm/define-grob-properties.scm:
46 Build fix (string-fret-finger-combinations)
48 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
51 * Documentation/user/lilypond-book.itely: Build fix.
53 2006-10-26 Joe Neeman <joeneeman@gmail.com>
55 * lily/system.cc (get_paper_system):
56 * lily/paper-book.cc (systems):
57 move most of the backwards compatibility stuff into
60 * Documentation/topdocs/NEWS.tely: add 2 entries for the
63 * Documentation/user/page.itely: remove time-scaled-music
64 bug for the Page_turn_engraver
66 * lily/paper-book.cc (set_system_penalty): backwards
67 compatibility (breakbefore) for the old page breaker
69 2006-10-25 Graham Percival <gpermus@gmail.com>
71 * Diocumentation/user/instrument-notation.itely: added more
72 info about stanzas; thanks Geoff!
74 * Documentation/user/ {basic, advanced}: small fixes from
77 * THANKS: add some bug reporters.
79 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
81 * scm/define-context-properties.scm (all-user-translation-properties):
82 noteToFretFunction: Add.
84 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
85 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
87 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
89 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
92 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
93 Remove bashism in delete.
95 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
97 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
99 * scm/translation-functions.scm (determine-frets-mf): flatten let*
101 * scm/define-context-properties.scm
102 (all-user-translation-properties): add maximumFretStretch property.
104 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
106 * lily/source-file.cc (get_counts): use multibyte variable.
108 * scm/translation-functions.scm (determine-frets-mf): new
109 function: compute fret numbers.
111 * scm/output-lib.scm (string-frets->description) new function.
112 (fret-board::calc-stencil): new function
114 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
116 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
118 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
120 * lily/tab-note-heads-engraver.cc: cleanups.
122 * lily/fretboard-engraver.cc: new file
124 * ly/engraver-init.ly: add FretBoards context
126 2006-10-24 Joe Neeman <joeneeman@gmail.com>
128 * lily/grob.cc (pure_relative_y_coordinate)
129 (pure_height): use the new call_pure_function stuff
131 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
134 * lily/side-position-interface.cc (pure_y_aligned_side): add an
137 * lily/simple-closure.cc (ly_eval_simple_closure): make
138 simple-closure evaluatable from scheme
139 (evaluate_with_simple_closure): make simple-closures pure-
142 * lily/slur.cc (pure_outside_slur_callback): new function
144 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
145 fits in with previous changes that made the page forces much
148 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
149 and pure-Y-extent into this new function.
150 (pure-conversions-alist): add outside-slur-callback
152 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
154 * Documentation/user/advanced-notation.itely (Instrument names):
155 Remove obsolete bug workaround for instrument names on piano
158 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
160 * Documentation/user/lilypond-book.itely (Integrating DocBook and
161 music): patch by Bertalan Fodor for docbook.
163 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
164 of $(LILYPOND). Prevents lilypond run for .txt files.
166 * INSTALL.txt: gitness.
168 * .cvsignore: update to force gitness.
170 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
172 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
173 detect suicide in nested tuplets.
175 2006-10-23 Werner Lemberg <wl@gnu.org>
177 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
178 typo in argument to FT_Get_X11_Font_Format.
180 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
182 * stepmake/stepmake/po-vars.make: more gitness.
184 * flower/polynomial.cc (check_sol): no empty if bodies.
186 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
188 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
190 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
192 * Documentation/user/examples.itely (Transcription of mensural
193 music): Added more comments in .ly source. Suggest to remove
194 Forbid_line_break_engraver to allow line breaking at all bars.
196 * Documentation/user/instrument-notation.itely (Ancient
197 articulations): Updated @refbugs regarding episem.
199 * Documentation/user/instrument-notation.itely (Gregorian square
200 neumes ligatures): Added \augmentum dots. Updated @refbugs
201 regarding \augmentum.
203 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
205 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
208 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
211 * ly/gregorian-init.ly: Added \augmentum macro.
213 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
215 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
217 * lily/pango-font.cc (pango_item_string_stencil): use
218 FT_Get_X11_Font_Format()
220 2006-10-22 John Mandereau <john.mandereau@free.fr>
222 * po/fr.po: update translation.
224 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
226 * VERSION (PATCH_LEVEL): bump version
228 * input/regression/horizontal-bracket-break.ly: new file.
230 * scm/define-grobs.scm (all-grob-descriptions): calc
233 * lily/horizontal-bracket.cc (make_bracket): support
234 connect-to-neighbor. Fix #118
236 * VERSION: release 2.9.26-2
238 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
240 * VERSION (PACKAGE_NAME): release 2.9.26
242 * buildscripts/output-distance.py (test_basic_compare): add
244 (FileLink.multi_img_cell): new function, glob multi-page png
247 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
249 * po/lilypond.pot: update.
251 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
253 * Documentation/user/global.itely (File structure): remove
256 * lily/parser.yy (FIXME): remove ADDQUOTE
258 * Documentation/user/global.itely (Extracting fragments of
259 notation): new node, about clip systems.
261 * Documentation/user/lilypond-book.itely (Many quotes of a large
262 score): ref to clip systems.
264 * Documentation/user/instrument-notation.itely (Entering lyrics):
265 add note about lyric ties and required font.
267 * lily/open-type-font.cc (glyph_list): format errors.
269 * Documentation/user/programming-interface.itely (Scheme
270 procedures as properties): more doco on simple-closure and scheme
272 (Input variables and Scheme): use lilypond[verbatim], document
275 * Documentation/user/page.itely (Displaying spacing): use \book
276 explicitly, so arrows show .
277 (Line breaking): add note about Forbid_line_break_engraver
279 * Documentation/user/tweaks.itely (Common tweaks): also set length
280 to prevent tie squeezing.
281 (Default files): use @var{}
283 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
284 (Generating LilyPond files): add FOMUS.
286 2006-10-20 Joe Neeman <joeneeman@gmail.com>
288 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
289 Y-offset for TextScript and Script
291 * lily/text-engraver.cc (make_item):
292 * lily/script-engraver.cc (make_script_from_event):
293 remove call to Side_position_interface::set_axis since all scripts
294 now have this set by default
297 * lily/prob.cc: use variables
299 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
301 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
302 at typography, rather analyse stream event duration.
304 * Documentation/user/page.itely (Page formatting): set a6 paper
305 for system separator example.
307 * lily/arpeggio.cc (Module): idem.
309 * lily/accidental-placement.cc: add script-priority property.
311 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
313 * lily/ttf.cc (print_trailer): if all else fails: use
314 glyphIndexXXXX as glyph name. Fixes #117.
316 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
317 entry if cmap contains glyph.
318 (get_index_to_charcode_map): remove from Pango_font class, use
319 global filename -> font mapping.
320 (get_glyph_index_name): new function.
321 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
324 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
326 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
329 * scm/define-grob-properties.scm (all-user-grob-properties):
330 remove outdated doc. Fixes #116
332 * lily/completion-note-heads-engraver.cc (process_music): always
333 clone input events; otherwise we may overwrite input 'duration
334 property. Fixes #115.
336 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
339 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
342 * VERSION (PATCH_LEVEL): bump version.
344 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
346 * lily/engraver.cc (internal_make_grob): use variables.
348 * flower/string-convert.cc (dec2double): clean-up warnings.
350 * configure.in (CXXFLAGS): add -Werror.
352 * VERSION (PACKAGE_NAME): release 2.9.25
354 2006-10-18 Joe Neeman <joeneeman@gmail.com>
356 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
357 line even if we precede a forced break.
359 * lily/optimal-page-breaking.cc (try_page_spacing): square line
360 forces too. Make page-spacing weight default to 10 because the
361 changes to vertical springs decreased the page force/line force
362 proportions. Also, take the average of line force and page force
363 instead of just the sum.
365 * lily/constrained-breaking.cc (initialize): make the stiffness
366 of the vertical springs depend on the height of the system. This
367 prevents pages with only a few large systems from getting huge
370 * Documentation/user/page.itely (Page formatting): document the
371 change in default page-spacing-weight
373 * lily/include/constrained-breaking.hh: initialise bottom_padding_
375 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
377 * input/typography-demo.ly (melody): remove superfluous slur.
379 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
380 add piano-pedal-script-interface
382 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
384 * scripts/lilypond-book.py: DocBook support.
386 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
388 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
390 (stop_translation_timestep): set bound to currentMusicalColumn if
391 not set yet. Fixes #102
393 * lily/piano-pedal-bracket.cc: formatting.
395 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
397 * lily/piano-pedal-align-engraver.cc: new class
398 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
401 2006-10-18 Heikki Junes <hjunes@gmail.com>
403 * po/fi.po: Update Finnish translation (before the next release).
405 2006-10-17 Joe Neeman <joeneeman@gmail.com>
407 * lily/system.cc (get_paper_system): reinstate the backwards-
408 compatible page breaking for the old page breaker.
410 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
412 * lily/recording-group-engraver.cc: removed
414 * lily/context.cc, lily/translator-group.cc: Don't touch
415 Context::implementation_ if it's null
417 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
419 * scm/paper.scm: only use left-margin if defined.
421 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
423 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
425 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
426 strokeFingerOrientations
428 * lily/script-column.cc (row_before_line_breaking): also handle
429 accidentals and arpeggios in horizontal script stacking.
431 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
434 * input/regression/script-stack-horizontal.ly: trim.
436 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
438 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
441 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
442 'text if string argument.
444 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
446 * scm/define-context-properties.scm
447 (all-user-translation-properties): change to strokeFingerOrientations
449 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
451 * lily/parser.yy: remove debug output
453 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
455 * ly/paper-defaults.ly: set left/right margin.
457 * scm/paper.scm (set-paper-dimensions): use left-margin and
458 right-margin for computing linewidth.
460 * Documentation/topdocs/NEWS.tely (Top): idem.
462 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
465 * scm/define-markup-commands.scm (tied-lyric): increase negative
466 space: space syllables tighter.
468 * VERSION (PATCH_LEVEL): bump version.
470 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
473 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
475 * COPYING: further clarification
477 * VERSION: release 2.9.24
479 * input/regression/script-stack-horizontal.ly: add version.
481 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
483 * input/regression/lyric-tie.ly (texidoc): use different words.
485 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
487 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
489 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
490 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
492 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
494 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
496 * Doxyfile: remove file.
498 * scm/define-grob-interfaces.scm (string-finger-interface): add
499 string-finger-interface
501 * lily/general-scheme.cc (LY_DEFINE): move
502 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
504 * Documentation/topdocs/NEWS.tely (Top): add note for
505 string-finger feature.
507 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
510 * scm/output-lib.scm (string-finger::calc-text): read 'digit
513 * input/regression/script-stack-horizontal.ly: new file.
515 * ly/engraver-init.ly: add Script_row_engraver.
517 * lily/script-column.cc (order_grobs): refactor: separate axis
519 (row_before_line_breaking): new function.
521 * lily/script-row-engraver.cc (Script_row_engraver): new file.
523 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
525 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
527 * Documentation/user/instrument-notation.itely: Cleanup: Remove
528 annoying skip notes from mensural ligature example. Update
529 @refbugs for ligatures and mensural ligatures.
531 * lily/coherent-ligature-engraver.cc,
532 lily/include/coherent-ligature-engraver.hh,
533 lily/mensural-ligature-engraver.cc,
534 lily/vaticana-ligature-engraver.cc: Revise code for item
535 reparentizing. There should now be less programming_error
538 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
540 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
541 Maintenance bugfix: Don't create empty Stencil (), but empty box
542 instead. This fix should eliminate some programming_error
545 * ly/engraver-init.ly (MensuralStaff): Set default accidental
548 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
549 \layout block _before_ score.
551 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
553 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
555 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
557 2006-10-13 Erlend Aasland <erlenda@gmail.com>
559 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
561 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
563 * VERSION (PATCH_LEVEL): bump version.
565 * COPYING: clarify exception note.
567 * lily/main.cc: remove remark about "COPYING".
569 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
570 system-count starts at 0 for each clip-region. Change name to
571 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
572 layout block, per score.
574 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
576 * lily/input-smob.cc: add equal_p for Input
578 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
581 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
583 * lily/prob.cc: Add equal_p predicate for Prob
585 * lily/translator.cc: small cleanup
587 * scm/document-music.cc: use data from translator listener
588 registration to generate documentation for event classes
590 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
592 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
594 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
596 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
598 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
600 * Documentation/topdocs/INSTALL.texi: Thinko.
602 * .cvsignore: Update.
604 * lexer-gcc-3.1.sh: Remove.
606 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
607 Update anonymous cvs access. Remove comment about gcc 3.0.4.
609 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
611 * VERSION: release 2.9.23
613 * lily/paper-column-engraver.cc (stop_translation_timestep): also
616 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
618 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
620 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
622 * input/regression/clip-systems.ly (Notes): new file.
624 * scm/lily.scm (define-scheme-options): add clip-systems option.
626 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
628 (dump-stencil-as-EPS): move bbox calculation from previous
630 (output-framework): use -dclip-systems
632 * scm/lily-library.scm (filtered-map): new function
634 * scm/framework-ps.scm (clip-system-EPS): new function.
635 (clip-system-EPSes): new function.
637 * lily/paper-column.cc: add rhythmic-location to interface
639 * scm/define-grob-properties.scm (all-user-grob-properties): add
640 rhythmic-location property.
642 * scm/clip-region.scm: new file: rhythmic-location data type and
643 system-clipped-x-extent function.
645 * ly/init.ly: use (scm clip-region)
647 * lily/paper-column-engraver.cc (stop_translation_timestep): set
648 rhythmic-location for paper column grobs.
650 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
652 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
654 * ly/engraver-init.ly: Remove obsolete comment on
657 * Documentation/user/instrument-notation.itely: Tune Ancient
658 Articulations figure, such that the episem actually shows.
660 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
661 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
663 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
666 2006-10-12 Graham Percival <gpermus@gmail.com>
668 * Documentation/user/ {some}: minor edits that were lost somehow.
670 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
672 * VERSION (PACKAGE_NAME): bump version.
674 * input/regression/lyric-tie.ly (texidoc): new file.
676 * Documentation/topdocs/NEWS.tely (Top): add new feature.
678 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
680 * scm/define-markup-commands.scm (tied-lyric): new function: split
681 string along ~ and reattach with U+203F (tie character) and
684 * scm/output-lib.scm (lyric-text::calc-text): new function.
686 * lily/lyric-engraver.cc (process_music): don't set 'text.
688 * scm/output-lib.scm (string-finger::calc-text): new function
689 (lyric-text::print): new function.
691 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
692 generic for fingering & string number. Use for string-finger.
694 * scm/define-music-types.scm (music-descriptions): add
697 * lily/fingering-engraver.cc (listen_string_finger): new function
699 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
701 * scm/define-context-properties.scm
702 (all-user-translation-properties): add stringFingerOrientations
704 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
706 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
707 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
709 * lily/dots.cc: Added style property for dots.
711 * mf/parmesan-heads.mf: Fix typo in comment.
713 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
714 adding longa head to feta font and removing obsolete default
717 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
719 * scm/output-lib.scm (fingering::calc-text): use origin
720 event-property, not music-property.
722 * lily/lilypond.rc.in: spell my name correctly.
724 2006-10-10 Joe Neeman <joeneeman@gmail.com>
726 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
727 already have a non-empty extent. Fixes estimation for Hara-kiri
730 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
732 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
735 * lily/ligature-engraver.cc: Remove unused #include.
737 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
738 Bugfix: remove method check_for_prefix_loss(Item *) from global
739 namespace to avoid namespace pollution.
741 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
743 * VERSION: release 2.9.22
745 * ly/generate-documentation.ly: update option name.
747 * lily/dynamic-text-spanner.cc (print): revert fix.
749 * scm/define-grob-interfaces.scm
750 (trill-pitch-accidental-interface):
751 add trill-pitch-accidental-interface
753 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
754 dereference if it's really a duration.
756 * lily/figured-bass-engraver.cc (process_music): clear spanner if
757 useBassFigureExtenders is not set.
758 (listen_bass_figure): record as new event if
759 useBassFigureExtenders not set. Fixes #103.
761 * scm/stencil.scm (circle-stencil): don't center stencil argument,
762 instead: move circle. Fixes #107.
764 * scm/define-grobs.scm (all-grob-descriptions): set
765 allow-loose-spacing for PaperColumn and
766 NonMusicalPaperColumn. Kludge for #110.
768 * lily/spaceable-grob.cc: add allow-loose-spacing property.
770 * lily/spacing-determine-loose-columns.cc (is_loose_column):
771 allow-loose-spacing property.
773 * scm/define-markup-commands.scm (postscript): gsave & grestore
774 around embedded PS. Do setlinewidth too. Fixes #109.
776 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
778 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
779 code. This patch fixes ligature brackets that were not at all
782 2006-10-08 Graham Percival <gpermus@gmail.com>
784 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
786 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
788 * scm/define-context-properties.scm: clarified docs (bug 91).
790 * Documentation/user/basic-notation.itely: document volta brackets
791 not aligning (bug 63).
793 * Documentation/user/ global.itely invoking.itely: ignore or
794 add warnings about texstr.
796 2006-10-08 John Mandereau <john.mandereau@free.fr>
798 * po/fr.po: update translation.
800 * po/: update msgids.
802 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
804 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
806 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
808 * Documentation/user/page.itely (Two-pass vertical spacing): add
809 documentation for two-pass spacing technique.
811 2006-10-06 Graham Percival <gpermus@gmail.com>
813 * Documentation/user/convert-ly.txt: new file; new
814 storage place for this file (moved from bugs/ CVS).
816 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
818 * lily/note-head.cc: Fixed programming_error message.
820 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
822 * scm/define-grobs.scm (pure-conversion): move pure-callback
825 * scm/script.scm (default-script-alist): set avoid-slur for turn,
826 marcato, stopped, thumb.
828 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
830 * lily/completion-note-heads-engraver.cc (process_music): don't
831 skimp on memory usage.
833 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
836 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
837 parenthesis item. This fixes premature Y-extent triggering. Fixes
840 * VERSION (PATCH_LEVEL): bump version.
842 2006-10-04 Graham Percival <gpermus@gmail.com>
844 * Documentation/user/advanced-notation.itely: added
845 info about instrument names for piano or other contexts,
848 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
850 * mf/feta-bolletjes.mf (solfa_quarter_width): use
851 solfa_base_notewidth as unit for non-DO-notes too.
853 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
855 * VERSION: release 2.9.21
857 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
860 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
862 * python/lilylib.py (progress): Minor fix.
864 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
866 * lily/note-name-engraver.cc: doc engraver.
868 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
870 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
872 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
875 * lily/stem-engraver.cc (make_stem): don't set duration-log
877 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
878 write snippet-names binary.
880 * python/lilylib.py (system): use os.system for mingw32
882 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
885 * scm/backend-library.scm: update email address.
887 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
890 * scm/define-grobs.scm (all-grob-descriptions): use callback to
893 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
894 handle dot creation separately.
896 * lily/tab-note-heads-engraver.cc (process_music): idem.
898 * lily/drum-note-engraver.cc (process_music): idem.
900 * lily/note-heads-engraver.cc (process_music): idem.
902 * lily/rest-engraver.cc: don't set duration-log.
904 * scm/output-lib.scm (string-number::calc-text): new function.
905 (note-head::calc-duration-log): new function.
907 * lily/fingering-engraver.cc (make_script): remove 'text setting.
909 * scm/output-lib.scm (fingering::calc-text): new function.
911 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
913 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
914 and include-eps-font -> include-eps-fonts
916 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
918 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
920 * lily/timing-translator.cc: list properties.
921 (start_translation_timestep): update internalBarNumber too.
923 * scm/define-context-properties.scm
924 (all-user-translation-properties): add internalBarNumber.
926 * input/regression/spacing-no-note.ly: new file.
928 * buildscripts/output-distance.py (link_file): verbosity for OSError.
930 * lily/book.cc: #include cleanup.
932 * lily/include/lily-guile-macros.hh: add assert to
933 scm_or_str2symbol(SCM).
935 * VERSION (PATCH_LEVEL): bump version.
937 * lily/spacing-spanner.cc (musical_column_spacing): handle
938 musical->nonmusical spacing case, where there is no spacing
939 wish. Fixes issue #61.
941 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
942 (pango_item_string_stencil): use logical rect horizontally (to
943 preserve spaces), ink_rect vertically (for time signatures).
945 * lily/font-metric.cc (word_stencil): new interface function
947 * input/regression/utf-8-mixed-text.ly: new file.
949 * lily/percent-repeat-engraver.cc (listen_percent): remove
952 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
953 non-dynamic scripts. Fixes #30.
955 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
957 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
959 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
960 SCM_UNDEFINED for non-existent data.
962 * lily/side-position-interface.cc (general_side_position): allow
963 optional current_offset argument for chaining, so combinations of side-position
964 and outside slur callback don't add up. Fixes issue #92.
966 * lily/pango-font.cc (pango_item_string_stencil): use
967 logical_rect. This prevents spaces after words from disappearing,
970 * VERSION: release 2.9.20
972 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
974 * scm/define-grob-properties.scm (all-user-grob-properties):
975 mention stencil as user settable.
977 2006-10-02 Joe Neeman <joeneeman@gmail.com>
979 * Documentation/user/page.itely (Page formatting):
980 document auto-first-page-number
982 * lily/page-breaking.cc (find_chunks_and_breaks):
983 * lily/paper-score.cc (calc_breaking): Follow changes to the
984 Constrained_breaking interface
986 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
987 here backwards, as an optimisation
988 (initialize): new function; move most of the code in resize () here
989 (combine_demerits): cache ragged_right_
990 (Constrained_breaking): constructor now takes the Paper_score
992 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
994 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
995 avoid parser lookahead for 0-ary functions.
997 * lily/translator.cc: Extract event classes from
998 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1000 2006-10-02 Heikki Junes <hjunes@gmail.com>
1002 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1005 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1007 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1008 function. Call the page breaking function selected in the
1009 `page-breaking' \paper variable, then the post processing function
1010 chosen using the `page-post-process' \paper variable.
1011 (line-height): new function. Return the height of a system.
1012 (line-minimum-position-on-page): new function. Return the position
1013 of a system on page (using the previous line position), only
1014 considering between system padding.
1015 (stretchable-line?): new function. Says whether a line can be
1016 stretched (ie. is not a title nor a single staff system).
1017 (page-maximum-space-left): new function. Computes space left on a
1018 page, when all systems are separated by their padding.
1020 * lily/page-breaking.cc (breaking::make_pages): Move page post
1021 processing function call to page breaking wrapper (common to all
1024 * lily/paper-book.cc (book::pages): call the page breaking
1025 wrapper, instead of the page breaker directly
1027 * ly/paper-defaults.ly: Add \paper variables for page breaking
1028 wrapper and page post processing function. Make
1029 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1030 `system-maximum-stretch-procedure' variable for holding a function
1031 computing the maximum stretch a system allows.
1033 * scm/layout-page-dump.scm (write-page-breaks): computes the
1034 stretch to apply to systems on a page to minimize left
1035 space. Dump this stretch length.
1037 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1038 the system-stretch property of the tweak data to stretch the
1040 (includePageLayoutFile): Void function which includes the
1041 generated page-layout file if it exists and if the page layout
1042 dumping is not asked.
1043 (scoreTweak): if the score tweak named by the argument exists,
1046 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1048 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1049 handle correctly the case where there are multiple \noPageBreaks
1052 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1054 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1056 * abc2ly.py fix so that entering " -- " will translate to a -- in
1057 the lilypond instead of a " - - "
1059 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1061 * lily/align-interface.cc: fix typo
1063 * lily/dynamic-text-spanner.cc (print): Add a special case for
1064 trill spanner right sides.
1066 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1068 * lily/align-interface.cc (get_extents_aligned_translates): add
1069 support for padding variable.
1071 * lily/break-align-interface.cc (self_align_callback): oops: use
1072 loop variable in guard.
1074 * input/regression/repeat-percent-grace.ly: new file.
1076 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1077 remember first currentCommandColumn of a grace run. Fixes issue 70.
1079 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1080 move class definition to CC file.
1082 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1084 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1085 measure-long repeats.
1087 * flower/include/international.hh: include stdarg.h
1089 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1091 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1092 put_systems_on_pages to return an empty result, we need to assign
1093 demerits properly in that case.
1094 (put_systems_on_pages): Make the number of pages depend on the
1095 evenness of page_number. Add auto-first-page-number.
1096 (calc_subproblem): ensure that the page-number is even for the
1097 left-hand page. Warn if the first page-turn doesn't fit onto the
1098 first (right-hand) page.
1100 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1101 (min_page_count): make this publicly accessible
1102 (min_page_count): fix a bug when there are forced page breaks that
1103 was introduced when I made this loop run backwards
1104 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1105 replace space_systems_on_min_pages with these two. The logic in
1106 space_systems_on_min_pages was getting too convoluted and is better
1107 contained in page-turn-page-breaking.
1109 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1111 (breakable_column): typo
1113 * lily/source-file.cc (get_line): fix off-by-one error
1114 and clean up some of the logic
1116 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1118 * lily/page-breaking.cc (make_pages): honour the first-page-number
1121 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1123 * VERSION (PACKAGE_NAME): bump version.
1125 2006-09-26 Pal Benko <benko.pal@gmail.com>
1127 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1128 (the latter is the same as petrucci-f which is kept for compatibility)
1130 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1132 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1134 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1136 * lily/global-context.cc (run_iterator_on_me): break out of loop
1137 if moment doesn't increase.
1139 * scm/define-grob-properties.scm (all-user-grob-properties): add
1142 * lily/accidental.cc (after_line_breaking): read forced property.
1144 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1147 * input/regression/accidental-forced-tie.ly: new file.
1149 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1151 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1153 * lily/figured-bass-engraver.cc: only listen to rest events if
1154 ignoreFiguredBassRest is not set.
1156 * scm/define-context-properties.scm
1157 (all-user-translation-properties): add ignoreFiguredBassRest property
1159 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1161 * lily/paper-book.cc (get_system_specs):
1162 (set_system_penalty): fix breakbefore.
1163 We used to set a penalty on the system after the break, now we
1164 set a permission on the system before the break
1166 * lily/grob-property.cc: add scm debugging hooks into
1167 property modification
1169 * lily/context-property.cc:
1171 rename make_foo_from_properties to internal_make_foo and
1172 move it from context-property.cc to a member function of
1175 * lily/include/lily-guile-macros.hh:
1176 overload ly_symbol2scm macro so that there is no more need
1179 * lily/volta-repeat-iterator.cc:
1180 * lily/tweak-engraver.cc:
1181 * lily/tuplet-bracket.cc:
1182 * lily/span-bar-engraver.cc:
1183 * lily/script-engraver.cc:
1184 * lily/prob-scheme.cc:
1185 * lily/pointer-group-interface.cc:
1187 * lily/grob-scheme.cc:
1188 * lily/grob-property.cc:
1190 * lily/context-property.cc:
1191 * lily/break-substitution.cc:
1192 * lily/break-align-engraver.cc:
1193 * lily/axis-group-interface.cc:
1194 * lily/align-interface.cc:
1195 remove calls to internal_FOO
1197 * lily/system-start-delimiter-engraver.cc:
1198 * lily/parenthesis-engraver.cc:
1199 * lily/accidental-engraver.cc:
1200 remove calls to make_foo_from_properties
1202 2006-09-23 Graham Percival <gpermus@gmail.com>
1204 * Documentation/user/programming-iterfaces.itely: fix
1205 def-music-function -> define-music... leftover.
1207 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1209 * lily/page-spacing.cc (min_page_count): by running the loop
1210 backwards, we can calculate ragged_last properly.
1212 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1214 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1215 printfirst-page-number -> print-first-page-number
1217 * python/convertrules.py: corresponding rule.
1219 * Documentation/user/page.itely (Page formatting): Document the
1220 default values of all page layout parameters.
1222 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1224 * lily/lexer.ll: remove limitation on music function arity. New
1225 mode extratoken, which inserts extra EXPECT_* tokens after
1226 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1228 * lily/parser.yy: Change grammar for music function accordingly.
1230 * lily/include/lily-parser.hh: New method get_state, new member
1231 hidden_state. Works around a problem when parser fetches
1232 MUSIC_FUNCTION token but not the following EXPECT_* token.
1234 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1237 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1238 references to Music; use ASSIGN_EVENT_ONCE everywhere
1240 * lily/grob-info.cc: junk *music_cause
1242 * lily/music.cc: copy eventified articulations to stream event
1244 * lily/part-combine-iterator.cc: Cleanup using enums
1246 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1249 * lily/include/engraver.hh: Junk music.hh include
1251 * lily/stream-event.cc: Changed constructors
1253 2006-09-21 Graham Percival <gpermus@gmail.com>
1255 * Documentation/user/tweaks.itely (Fitting music onto fewer
1256 pages): change settings to avoid warning messages.
1258 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1260 * Documentation/user/tweaks.itely (Fitting music onto fewer
1261 pages): Add between-system-space setting.
1263 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1265 * lily/accidental-placement.cc (calc_positioning_done): don't
1266 trigger Y-extent calculation too early. Use pure_height instead.
1268 * lily/scale.cc (LY_DEFINE): new file.
1270 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1272 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1273 that happen at the start of a score: having a zero-length
1274 chunk was messing up min_system_count calculations.
1276 * lily/source-file.cc (get_line): lower_bound, not
1277 binary_search. Fixes problem where point-and-click would
1278 always point to the first line.
1280 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1282 * lily/accidental-placement.cc (calc_positioning_done): also put
1283 stems into accidental support.
1285 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1288 * scm/script.scm (default-script-alist): avoid-slur and
1289 slur-padding for portato script.
1291 * lily/stem-tremolo.cc (translated_stencil): new function.
1292 (height): use new function. Fixes tremolos on whole notes.
1294 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1297 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1299 * scripts/abc2ly.py (try_parse_comment): idem.
1301 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1302 bar_string iso. string.find()
1306 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1309 2006-09-18 Graham Percival <gpermus@gmail.com>
1311 * Documentation/user/basic-notation.itely: add bug
1312 warning about ties and octavation/clef.
1314 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1316 * VERSION (PACKAGE_NAME): release 2.9.18
1318 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1320 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1321 figure out midi file names right here.
1323 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1325 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1327 * scm/backend-library.scm: option naming: gs-font-load*s*
1329 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1332 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1334 * scm/define-music-types.scm (music-descriptions): remove
1335 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1336 Music::to_event doesn't complain.
1338 * lily/accidental-placement.cc (ape_compare):
1339 * lily/semi-tie.cc (compare):
1340 * lily/note-column.cc (shift_compare): replace by XXX_less
1342 * lily/tie-formatting-problem.cc (set_chord_outline):
1343 * lily/tie-column.cc (calc_positioning_done):
1344 * lily/system.cc (post_processing)
1346 * lily/stem.cc (note_head_positions)
1347 (calc_positioning_done):
1348 * lily/spanner.cc (do_break_processing)
1349 (find_broken_piece):
1350 * lily/span-bar.cc (print):
1351 * lily/semi-tie-column.cc (calc_positioning_done):
1352 * lily/rest-collision.cc (calc_positioning_done):
1353 * lily/program-option.cc (get_help_string):
1354 * lily/note-collision.cc (get_clash_groups):
1355 * lily/new-fingering-engraver.cc (position_scripts):
1356 * lily/keyword.cc (Keyword_table):
1357 * lily/hara-kiri-group-spanner.cc (request_suicide):
1358 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1359 * lily/accidental-placement.cc (calc_positioning_done):
1361 * lily/beam.cc (get_beam_segments):
1362 * lily/grob-array.cc (remove_duplicates):
1365 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1366 ragged-last-bottom = ##f (test the new page breaker)
1368 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1370 * scm/define-context-properties.scm
1371 (all-internal-translation-properties): remove properties that
1372 were used to communicate page-turn stuff to the paper-column
1375 * lily/lily-guile.cc (robust_scm2string): new function
1377 * lily/paper-column-engraver.cc: Clean up page turn stuff
1379 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1380 instead of cluttering up paper-column-engraver.cc
1382 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1384 * scm/layout-page-dump.scm (scm): export utility function names,
1385 to allow user writing cutsom dumping functions.
1387 * scm/layout-page-layout.scm: export utility function names to
1388 enable custom page breaking function writing. Tabify.
1389 (line-next-space): use ?-suffix only for predicates
1390 (page-maximum-space-to-fill): new function. Return the space
1391 between first and bottom system of a page, to give to
1393 (space-systems): use a space-to-fill argument (for instance as
1394 computed by page-maximum-space-to-fill) instead of computing
1395 internaly this space with the page height. That way, the caller
1396 can adjust the space to use.
1397 (make-page-from-systems, walk-paths): compute space to fill before
1398 calling space-systems.
1400 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1402 * scm/script.scm (default-script-alist): set paddings for every
1403 type here, increase for portato mark.
1405 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1408 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1410 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1411 use spanner::set-spacing-rods
1413 * lily/note-column.cc: reformat.
1415 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1416 step positioning for note/rest combinations.
1418 * input/regression/rest-note-collision.ly: new file.
1420 * scm/define-grobs.scm (all-grob-descriptions): add
1423 * flower/include/std-vector.hh: switch off again.
1425 * VERSION (PATCH_LEVEL): bump to 2.9.18
1427 * flower/include/std-string.hh: idem.
1429 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1431 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1433 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1436 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1438 * Documentation/user/page.itely: update page breaking documentation
1440 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1442 * lily/note-collision.cc (calc_positioning_done): only access
1443 first head if available.
1445 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1447 * scm/framework-ps.scm (output-preview-framework): use new name.
1449 * lily/program-option.cc (internal_set_option): use new names.
1451 * Documentation/user/SConscript (lilypond_book_flags): update -d
1454 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1455 output into other programs): new variable names.
1457 * scm/lily.scm (define-scheme-options): uniformize var names.
1459 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1460 tuplets_ is non-empty before popping.
1462 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1464 * lily/spanner.cc (find_broken_piece):
1465 * lily/spacing-spanner.cc (get_columns):
1466 * lily/source-file.cc (get_line):
1467 * lily/simple-spacer.cc (get_column_description):
1468 * lily/keyword.cc (lookup):
1469 use the new binary search.
1471 * flower/include/std-vector.hh: replace binary_search with
1472 a more STL-like version
1474 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1476 * lily/tie-performer.cc: remove unused last_event_ property.
1477 (class Tie_performer): add now_tied_heads_ property for
1478 partially-tied heads.
1479 (acknowledge_audio_element): when adding an Audio_note, put the
1480 note in now_tied_heads_ if the audio note is partially tied.
1481 (stop_translation_timestep): always include entries in
1482 now_tied_heads_ in heads_to_tie_.
1484 * lily/drum-note-performer.cc (process_music): look for tie-events
1485 in the articulations; pass to Audio_note constructor.
1487 * lily/note-performer.cc (process_music): look for tie-events in
1488 the articulations; pass to Audio_note constructor.
1490 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1493 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1494 include initializer in constructor.
1496 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1498 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1499 unless they are breakable. This fixes discrepancies between the forces
1500 calculated here and the forces calculated in get_line_configuration.
1502 * lily/grob.cc (pure_relative_y_coordinate): fix some
1503 mis-estimation that was happening with piano staves.
1505 * lily/constrained-breaking.cc (resize): don't choke if we get a
1506 measure that won't fit on a line.
1507 (combine_demerits): don't consider uniformity when ragged
1509 * lily/page-spacing.cc (solve): why the f* were there two of these?
1510 (calc_subproblem): properly handle the case where a system is taller
1513 * lily/system.cc (get_paper_system): ensure that all the permissions
1514 and penalties are passed to the paper systems.
1516 * lily/page-breaking.cc (create_system_list): support system-count.
1518 * scm/define-grobs.scm (pure-print-callbacks): add
1519 ly:script-interface::print
1521 * lily/page-spacing.cc (min_page_count): fix calculation of min
1522 pages if we are ragged and there are non-zero springs.
1524 * scm/layout-page-layout.scm: if the pure-height estimates are under
1525 the real height, allow space-systems to ignore padding if it is
1526 needed in order to fit the systems on one page
1528 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1530 (solve): fix performance problem. Make sure we always get at least
1533 * lily/page-breaking.cc (make_pages): include write-page-breaks
1536 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1538 * scm/define-grobs.scm: add the new slur-callback
1539 fix pure-relevant to not exclude grobs whose extent is already
1542 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1545 * lily/slur.cc (pure_height): new callback to estimate the height
1548 2006-09-02 Graham Percival <gpermus@gmail.com>
1550 * Documentation/user/invoking.itely: small update on
1551 MacOS X notes; thanks Trevor!
1553 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1555 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1557 * lily/lexer.ll: accept EOF in all states.
1559 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1561 * lily/source-file.cc (Source_file): always 0-terminate character
1562 array, to prevent Flex from barfing.
1564 * lily/global-context.cc (get_output): robustness: don't crash if
1565 no Score context found.
1567 * lily/include/book.hh (class Book): idem.
1569 * lily/include/context-def.hh (struct Context_def): idem.
1571 * lily/include/score.hh (class Score): don't derive from Input.
1573 * lily/book.cc (Book): add a copy ctor.
1575 * buildscripts/output-distance.py (FileLink.calc_distance): count
1576 orphans in distance too.
1578 * python/midi.c (midi_parse_track): robustness: don't read past
1581 * ly/performer-init.ly: add Control_track_performer, move
1582 Tempo_performer and Time_signature_performer to Score.
1584 * lily/score-performer.cc (acknowledge_audio_elements): override
1585 from base class: add to audio-columns
1587 * lily/control-track-performer.cc (add_text): new file: generate
1590 * lily/performance.cc: move output_header_track to
1591 Control_track_performer ()
1593 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1595 * lily/include/midi-item.hh (class Midi_channel_item): insert
1596 class into hierarchy, for items that can have a channel setting. Dehungarify.
1598 * lily/include/performer.hh (class Performer): remove
1599 play_element(); move functionality into announce/acknowledge.
1601 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1603 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1604 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1606 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1608 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1611 * lily/all-font-metrics.cc: remove TFM support.
1613 * lily/include/tfm.hh: remove TFM support, TFM reader.
1615 * lily/include/binary-source-file.hh: remove Binary_source_file.
1617 2006-08-27 Graham Percival <gpermus@gmail.com>
1619 * Documentation/topdocs/NEWS.itely: add @c marker for
1620 stuff I've processed.
1622 * Documentation/user/ various: info from NEWS.
1624 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1626 * lily/paper-column-engraver.cc (finalize): Oops, this change
1627 should have gone in on 2006-08-23
1629 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1631 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1632 quotes to quote arguments. Fixes Windows problem.
1634 * python/lilylib.py (progress): idem
1636 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1638 * scripts/musicxml2ly.py: fix for importing
1639 minor key signatures from MusicXML. (Phillip Kirlin)
1641 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1643 * python/musicxml.py:
1644 (Attributes.get_key_signature): now correctly retrieves mode from
1647 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1649 * lily/parser.yy (output_def_body): take ownership of identifier
1652 * Documentation/user/advanced-notation.itely (Metronome marks):
1653 update use of \tempo in \midi.
1655 * VERSION: release 2.9.16
1657 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1659 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1662 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1664 * input/regression/tie-chord-partial.ly: clarify example.
1666 * scm/define-music-properties.scm (all-music-properties): remove
1669 * ly/music-functions-init.ly: remove \untied.
1671 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1672 stream events and music events.
1673 (stop_translation_timestep): search acknowledged heads for
1676 * input/regression/tie-chord-partial.ly: new file.
1678 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1679 for \char markup command.
1681 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1683 * scm/define-music-types.scm (music-descriptions): consistency:
1684 Use solo-{one,two}-event iso. solo-[12]-event.
1686 * lily/part-combine-engraver.cc (process_music):
1687 Use solo-{one,two}-event iso. solo-[12]-event.
1689 * ly/declarations-init.ly (partCombineListener): add Timing as
1692 * flower/std-string.cc (string_copy): use copy ()
1694 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1696 2006-08-24 Graham Percival <gpermus@gmail.com>
1698 * Documentation/user/changing-defaults.itely, global.itely,
1699 lilypond-book.itely, page.itely: minor changes from mailist.
1701 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1703 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1706 * scm/define-context-properties.scm
1707 (translator-property-description): robustness: detect type errors
1708 in property definitions.
1710 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1711 after getting it from SCM.
1713 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1716 * lily/include/performer.hh (class Performer): strip get_tempo()
1719 * lily/midi-def.cc: strip file.
1721 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1723 * lily/include/context-def.hh (struct Context_def): use
1724 VIRTUAL_COPY_CONSTRUCTOR().
1726 * lily/source-file.cc: smobification.
1728 * lily/include/source-file.hh (class Source_file): smobify
1729 Source_file. Trim redundant members.
1731 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1732 clones after creation. This plugs a huge memory leak.
1734 * python/convertrules.py (FatalConversionError.sub_tempo):
1735 complete rule for \midi{ \tempo }
1737 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1739 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1741 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1743 * input/regression/optimal-page-breaking-hstretch.ly: test for
1744 ragged-last-bottom also
1746 * lily/paper-column-engraver.cc (finalize): make the end of a score
1747 breakable by default. This is to balance out a change in behaviour
1748 of the page-turn-breaker which no longer makes the end of a score
1751 * lily/paper-book.cc (pages): set the systems_ once the pages are
1754 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1755 Page_breaking interface.
1757 * lily/page-breaking.cc (class Page_breaking): make the interface
1758 more consistent and provide abstractions for dealing with
1761 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1762 algorithm. Use the new interface to Page_breaking.
1764 * lily/page-spacing.cc: better support for ragged-bottom and
1767 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1769 * python/convertrules.py (conv): warning on \tempo{}
1771 * ly/performer-init.ly: set tempoWholesPerMinute.
1773 * ly/midi-init.ly: remove \midi
1775 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1778 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1779 tempoUnitDuration for determining what to print.
1781 * lily/lyric-extender.cc: typo.
1783 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1785 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1788 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1790 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1791 eps-pad-boxes is set.
1793 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1795 * THANKS: update sponsors.
1797 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1799 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1801 * input/regression/tie-chord-untied.ly: new file.
1803 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1805 * scm/define-music-properties.scm (all-music-properties): add
1808 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1810 (headertext_nopics): sanitize no-examples text.
1812 * scm/page.scm (make-page-stencil): don't rely on extents of
1813 page-stencil. This fixes spurious space around .EPS files produced
1814 with the EPS backend.
1816 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1818 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1820 * lily/hara-kiri-engraver.cc (process_music): remember
1821 keepAliveInterfaces after processing \set
1823 * lily/lyric-extender.cc (print): support left/right-padding for
1826 * scm/documentation-generate.scm (string-append): revert lilypond/
1829 2006-08-20 Graham Percival <gpermus@gmail.com>
1831 * Documentation/user/lilypond.tely: clarification to
1832 license presentation (not to actual license).
1834 * Documentation/user/basic-notation.itely,
1835 instrument-notation.itely: minor changes.
1837 * input/ {regression, test}/+.ly: clarification to
1838 text (you can click on examples). Thanks, Mats!
1840 * input/manual/bar-lines.ly: adds ||: repeats.
1842 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1844 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1846 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1848 * Documentation/user/lilypond.tely: strip lilypond/ from info
1849 links, rename to category LilyPond
1851 * lily/pango-font.cc (description_string): new function.
1853 * VERSION: release 2.9.15
1855 * lily/spacing-engraver.cc (stop_translation_timestep): use
1856 Dscho's fix for spacing spanner.
1858 * scm/define-music-types.scm (music-descriptions): use
1859 apply-output-event for ApplyOutputEvent
1861 * lily/output-property-engraver.cc (listen_apply_output): rename
1862 from listen_layout_instruction.
1864 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1867 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1869 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1870 commandline args with contains, split by \n.
1872 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1873 write snippet-names file, call with -dread-file-list. Fixes
1874 command limitations on 64-bit systems.
1876 * input/regression/stencil-color-rotation.ly: new file.
1878 * lily/include/translator.hh (struct Acknowledge_information):
1879 revert: don't use Protected_scm in global objects, as GUILE can't
1880 handle gc_unprotect from automated destructors on MacOS X.
1882 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1883 color, not the original stencil. Fixes combinations of
1884 color/transparency/rotation.
1886 * scripts/lilypond-book.py (main): add --formats=eps for
1889 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1890 crash if spacing_ is nonexistent.
1892 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1894 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1895 \catcode`\@=12 in the LaTeX output.
1897 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1899 * scm/define-music-types.scm (music-descriptions):
1900 use sustain-event iso. sustain-pedal-event.
1902 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1904 * scripts/convert-ly.py: honour the -n command-line switch
1906 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1908 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1909 break specification.
1911 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1913 * Documentation/user: convert-ly the user manual
1915 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1917 * stepmake/aclocal.m4: version check patch (thanks MWD)
1919 * ly/music-functions-init.ly: robustness. Don't crash if
1920 currentBarNumber is not a number.
1922 * VERSION (PATCH_LEVEL): bump.
1924 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1926 * stepmake/aclocal.m4: better version check; handle fooX.Y
1929 * ly/performer-init.ly: instrument name fixup.
1931 * input/manual/chord-names-jazz.ly (banterProperties):
1932 instrumentName update
1934 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1936 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1938 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1939 function. Use hash tables to check membership.
1941 * lily/general-scheme.cc (LY_DEFINE): new function.
1943 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1945 * lily/include/translator.hh (struct Acknowledge_information): add
1948 * ly/music-functions-init.ly: change name to BreathingEvent
1950 * input/regression/*.ly: apply it.
1952 * python/convertrules.py (conv): better instrumentName conversion
1955 * scm/define-music-types.scm (music-descriptions): add
1956 line-break-event to LineBreakEvent music
1958 * lily/music.cc (to_event): don't crash if music type not set.
1960 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1963 * lily/spacing-engraver.cc (stop_translation_timestep): set
1964 spacing for proportional notation too.
1966 * scm/translation-functions.scm (format-bass-figure): inspect
1969 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1971 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1973 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1975 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1977 * scm/layout-page-layout.scm (make-page-from-systems): new function
1978 (optimal-page-breaks): use the new page-breaking calling convention
1980 * scm/define-context-properties.scm (all-user-translation-properties):
1983 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1984 revokePageTurns functionality. If there is a special barline within
1985 the breakable region, break there instead of at the end of the region.
1987 * lily/paper-book.cc (pages): use the new page-breaking calling
1990 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1992 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1994 * scripts/lilypond-book.py: insert \sourcefileline command in
1995 output, so lilypond error messages refer to the spot in the
1996 original .lytex / .itely sourcefile.
1998 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2000 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2001 space to next column for distance to fixed col.
2003 * VERSION (PACKAGE_NAME): release 2.9.14
2005 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2008 * lily/accidental-engraver.cc (process_acknowledged): don't create
2009 accidental for trill span event. This fixes spurious accidentals
2012 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2014 * scm/define-grob-properties.scm (all-user-grob-properties):
2015 Clarify documentation of side-axis and direction. Thanks to Paul
2016 for the inspiration.
2018 * lily/bar-line.cc: Add documentation for "||:" also in the
2019 interface documentation.
2021 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2023 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2025 * lily/paper-column.cc (set_system): new function.
2027 * lily/spacing-engraver.cc (stop_translation_timestep): store
2028 SpacingSpanner refs in Paper_column.
2030 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2031 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2033 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2035 * lily/beam-engraver.cc (listen_beam): add method for
2036 Grace_beam_engraver too.
2038 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2040 * python/convertrules.py: Fix indentation bug that broke
2041 conversion of files older than 1.3.117.
2042 Fix escape error in the description for 2.9.6.
2044 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2046 * lily/*-engraver.cc: convert all try_music functions to listen_*
2049 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2050 enums to represent pedal types, and calculate more data statically.
2052 * scm/part-combiner.scm (recording-group-emulate): create a
2053 softcoded substitute for recording-group-engraver.cc.
2055 * lily/music.cc: make a common transpose function for events and
2058 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2059 ManualMelismaEvent, and obsoletes Melisma_translator.
2061 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2063 * input/test/instrument-name-align.ly: update version.
2065 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2067 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2068 Doc the --pdf flag to lilypond-book.
2070 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2072 * Documentation/topdocs/NEWS.tely (Top): add description.
2074 * input/regression/tuplet-full-length-note.ly: add file.
2076 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2077 always store axis group.
2079 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2081 * input/regression/instrument-switch.ly: new file.
2083 * lily/instrument-switch-engraver.cc (process_music): new file.
2085 * ly/engraver-init.ly: add Instrument_switch_engraver
2087 * ly/music-functions-init.ly: \instrumentSwitch
2089 * scm/define-context-properties.scm
2090 (all-user-translation-properties): add instrumentCueName
2092 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2094 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2096 * ly/music-functions-init.ly: music function \transposition.
2098 * lily/parser.yy (command_element): softcode \transposition.
2100 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2101 (process_music): oops.
2103 * lily/instrument-name-engraver.cc (start_spanner): new
2104 function. Create spanner when property changes.
2105 (stop_spanner): new function.
2107 * python/convertrules.py (conv): add rule.
2109 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2110 shortInstrumentName iso. instr.
2112 * scm/output-ps.scm (dashed-line): add phase argument to
2115 * lily/bar-line.cc (dashed_bar_line): new function.
2116 (compound_barline): support \bar "dashed".
2118 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2119 --output=DIR to DIR/BASE if it is a dir.
2121 * flower/file-name.cc (file_part): new function
2122 (dir_part): new function
2124 * lily/lily-parser-scheme.cc (LY_DEFINE):
2126 * DEDICATION: update
2128 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2130 * lily/instrument-name-engraver.cc: formatting.
2132 * python/convertrules.py (conv): bugfix for \epsfile.
2134 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2138 * lily/gourlay-breaking.cc: Oops, these should have been included
2141 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2143 * scripts/*.py (program_name): cleanup relocation snippets.
2145 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2147 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2149 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2150 page-breakable by default
2152 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2153 correctly calculated for a single-system page
2155 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2156 bigger than the second number
2158 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2159 acknowledge that we aren't satisfying constraints)
2161 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2164 * lily/grob.cc (pure_height): add minimum-Y-extent
2166 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2169 * lily/constrained-breaking.cc: convert code to use new Matrix class
2170 (get_best_solution): new function
2172 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2173 is a page with no systems
2175 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2177 * VERSION (PACKAGE_NAME): release 2.9.13
2179 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2182 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2184 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2186 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2189 * scm/define-grob-properties.scm (all-user-grob-properties):
2190 remove grace-space-factor.
2192 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2193 grace-spacing-interface
2194 (spacing-options-interface): add.
2196 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2198 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2200 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2201 GraceSpacing object.
2203 * lily/note-spacing.cc: fix prop list formatting
2205 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2206 beaming for grace notes too.
2208 * input/regression/spacing-grace.ly: update.
2210 * lily/grace-spacing-engraver.cc: new file.
2212 * lily/spacing-spanner.cc: add strict-grace-spacing.
2214 2006-07-20 Graham Percival <gpermus@gmail.com>
2216 * lily/parser.yy: compile fix.
2218 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2220 * scm/define-grobs.scm (all-grob-descriptions): typo.
2222 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2223 .eps extension from includegraphics.
2225 * scripts/lilypond-book.py (main): add support for --pdf.
2227 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2228 callback to compute common shortest duration.
2229 (set_springs): typo.
2231 * scm/define-grob-properties.scm (all-user-grob-properties): add
2232 strict-grace-spacing.
2234 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2235 support float_grace_columns_.
2237 * lily/spacing-options.cc (init_from_grob): new file.
2239 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2241 * input/regression/spacing-loose-grace.ly: new file.
2243 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2245 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2246 tupletFullLengthNote too. Choose right bound depending on value.
2248 * input/regression/tuplet-full-length-note.ly: new file.
2250 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2252 * lily/*-performer.cc: Converted try_music to listen_*
2254 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2255 as a stream-event internally. Introduce event_cause (), deprecate
2258 * scm/define-music-types.scm: Removed BusyPlayingEvent
2260 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2262 * Documentation/user/advanced-notation.itely (Font selection):
2263 Document how to get a list of available fonts using 'lilypond
2264 -dshow-available-fonts blabla'.
2266 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2268 * GNUmakefile.in: filter lily-XXX.pdf files.
2270 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2272 * scm/define-grob-properties.scm (all-internal-grob-properties):
2273 remove delta-pitch. Use delta-position everywhere.
2275 * scm/output-lib.scm (fall::print): use new order.
2277 * scm/output-ps.scm (path): reorder arguments.
2279 * scm/output-svg.scm (path): support for path primitive.
2281 * input/regression/bend-after.ly: new file.
2283 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2284 recipe for eps -> pdf conversion.
2286 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2288 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2291 2006-07-19 Graham Percival <gpermus@gmail.com>
2293 * input/manual/screech-boink.ly: moved to here.
2295 * input/screech-boink.ly: deleted.
2297 * scm/define-grob-properties.scm: clarify doc string.
2299 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2301 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2303 * scm/output-ps.scm (path): define path.
2305 * scm/define-stencil-commands.scm
2306 (ly:register-stencil-expression): add path.
2308 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2310 * ly/engraver-init.ly: add Fall_engraver
2312 * lily/parser.yy (music_function_event): allow musicfunction
2313 without music arg as music_function_event.
2315 * lily/grob-scheme.cc (LY_DEFINE):
2316 ly:grob-robust-relative-extent. New function.
2318 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2320 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2322 * scm/output-lib.scm (fall::print): new function
2324 * lily/fall-engraver.cc (stop_fall): new file.
2326 * ly/music-functions-init.ly: alphabetise.
2328 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2331 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2333 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2335 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2338 * lily/translator-group.cc (connect_to_context): non const error message.
2340 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2342 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2345 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2347 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2349 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2352 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2354 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2356 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2358 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2360 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2362 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2364 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2366 * scm/layout-page-layout.scm: Define module, tidy code, use more
2367 functions iso. a single big one.
2369 * scm/layout-page-dump.scm: move page dump functions used in two
2370 pass spacing to this file. Define module.
2372 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2375 * ly/paper-defaults.ly: use module layout-page-layout.
2377 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2379 * lily/music.cc: Revised MusicEvent event class. It now contains
2380 event data directly instead of encapsulating it in music. The
2381 previously used class is renamed to OldMusicEvent.
2383 * lily/stream-event.cc: Stream events are now probs.
2385 * lily/translator-group.cc, lily/translator.cc: Translators can
2386 now listen directly to stream events, by using macros
2387 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2389 * lily/arpeggio-engraver.cc: Converted to use new event system
2391 * THANKS: Corrected spelling mistake.
2393 2006-07-12 Graham Percival <gpermus@gmail.com>
2395 * Documentation/user/SConscript, make/lilypond-vars.make,
2396 input/GNUmakefile: doc build looks in input/manual instead
2399 * input/manual/ GNUmakefile, SConscript: build files for
2402 * input/test/ various: some files moved to input/manual/
2404 * Documentation/user/basic-notation.itely: small updates;
2405 thanks Kieren and Charles!
2407 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2409 * VERSION (PACKAGE_NAME): release 2.9.11
2411 * Documentation/topdocs/NEWS.tely (Top): update prop value
2413 * Documentation/user/basic-notation.itely (Tuplets): new property
2416 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2418 * python/convertrules.py (conv): tweaks.
2420 * VERSION (PATCH_LEVEL): bump version.
2422 * python/convertrules.py (conv): add rule for
2423 tupletNumberFormatFunction.
2425 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2426 tupletNumberFormatFunction.
2428 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2429 text through 'text callback.
2431 * lily/time-scaled-music-iterator.cc (construct_children): copy
2432 tweaks generated events.
2434 * scm/define-context-properties.scm
2435 (all-user-translation-properties): remove tupletNumberFormatFunction
2437 * lily/tuplet-engraver.cc (process_music): don't read
2438 tupletNumberFormatFunction
2440 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2443 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2445 * lily/global-context-scheme.cc: Separated ly:run-translator into
2448 * lily/score-engraver.cc, lily/score-performer.cc,
2449 scm/define-context-properties.scm: Make paper/midi output
2450 accessable as a context property.
2452 * lily/score-translator.cc, lily/score-context.cc: Removed.
2454 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2456 * scm/ps-to-png.scm (Module):
2457 * scm/framework-tex.scm (Module):
2458 * scm/framework-ps.scm (Module):
2459 * scm/backend-library.scm (Module):
2460 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2461 "dDEVICEHEIGHTPOINTS".
2463 2006-07-04 Graham Percival <gpermus@gmail.com>
2465 * Documentation/user/ various: general improvements to
2466 "working with lilypond files" section.
2468 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2470 * lily/sequential-iterator.cc: Change the default get_music_list
2471 to read elements-callback music property
2473 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2474 processing of multimeasure rests. Softcoded
2475 sequential-music-iterator.
2477 * lily/sequential-music-iterator.cc: Removed.
2479 2006-06-28 Graham Percival <gpermus@gmail.com>
2481 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2483 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2485 * lily/parser.yy: Wrap non-post-events in EventChords before
2486 assigning them to identifiers.
2488 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2490 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2491 gives correct vertical placement of \bar ":" in all staff
2492 sizes. Thanks Martial!
2494 2006-06-26 Graham Percival <gpermus@gmail.com>
2496 * Documentation/user/invoking.itely : minor update from mailist.
2498 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2500 * lily/ various: Introduce stream events of types Prepare,
2501 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2502 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2504 * lily/global-context*.cc: Time is now -inf before iteration
2507 * lily/include/context.hh: Removed unique_, init_
2509 * Documentation/topdocs/NEWS: Make the feathered beam example
2510 avoid triggering a bug.
2512 2006-06-24 Graham Percival <gpermus@gmail.com>
2514 * Documentation/user/ various: small additions from mailist.
2516 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2518 * ly/performer-init.ly: Add some missing links in the context
2519 hierarchy for MIDI output. There are probably some more missing!
2521 2006-06-21 Graham Percival <gpermus@gmail.com>
2523 * Documentation/user/ various: minor spelling fixes;
2524 thanks Dave Luttinen!
2526 * Documentation/user/ various: small clarifications;
2527 thanks Anthony Youngman!
2529 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2531 * po/fr.po: add \n appropriately.
2533 * lily/lexer.ll: remove ? from version-seen?
2535 2006-06-19 John Mandereau <john.mandereau@free.fr>
2537 * po/fr.po; update translation, by Jean-Charles Malahieude and
2540 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2542 * THANKS: add Markus Schneider.
2544 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2545 Staff_symbol_engraver
2547 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2548 replace staff_engraver
2550 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2553 * lily/staff-collecting-engraver.cc
2554 (acknowledge_end_staff_symbol): new function
2556 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2558 * lily/staff-collecting-engraver.cc
2559 (acknowledge_end_staff_symbol): new function.
2561 * lily/main.cc: switch on relocation by default.
2563 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2565 * lily/spacing-spanner.cc (musical_column_spacing): set
2566 compound_fixed_note_space to 0.0. Document why.
2568 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2569 range of inverse_hooke_
2570 (Simple_spacer): init completely.
2572 (get_line_configuration): don't use cols.resize(); it introduces
2575 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2577 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2579 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2580 try. Divide by beatlength.
2582 * input/regression/beaming-ternary-metrum.ly: update doc.
2583 add beatLength hack.
2585 * scm/music-functions.scm (make-time-signature-set): add
2586 standard-beat-grouping.
2588 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2590 * input/regression/tie-whole.ly: new file.
2592 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2593 cross center of note head in case of invisible stem.
2595 2006-06-16 Graham Percival <gpermus@gmail.com>
2597 * Documentation/user/ various: small fixes from mailist.
2599 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2601 * lily/breathing-sign.cc (offset_callback): idem.
2603 * lily/align-interface.cc (align_to_fixed_distance): remove
2606 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2609 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2611 * VERSION (PACKAGE_NAME): release 2.9.9
2613 * ly/lilypond-book-preamble.ly: add \version
2615 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2617 * scripts/lilypond-book.py (PREAMBLE_LY): include
2618 lilypond-book-preamble.ly
2620 * lily/stem.cc (get_beaming): return max of 0 and
2621 scm_ilength. Fixes slurring from/to beams.
2623 * ly/lilypond-book-preamble.ly: new file.
2625 * lily/slur.cc: add inspect-index feature.
2627 2006-06-13 Graham Percival <gpermus@gmail.com>
2629 * Documentation/user/tutorial.itely: trivial fix.
2631 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2633 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2634 all non-event music in the parser via MAKE_SYNTAX.
2636 * lily/parser-scheme.cc: Add ly:parser-error function
2638 * scm/paper.scm: fix typo
2640 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2644 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2647 * buildscripts/output-distance.py (test_compare_signatures):
2649 (read_signature_file): use new signature format.
2651 * scm/stencil.scm (write-system-signature): simpler signature
2654 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2657 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2658 stem_end_position, but estimate instead.
2660 * lily/tuplet-bracket.cc (calc_positions): look at
2661 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2662 brackets narrower than beams.
2664 * lily/lexer.ll: set version-seen? even if version is
2667 * lily/rest.cc (y_offset_callback): bugfix: decide position
2668 override based on scm_is_number(). Fixes \rest on center staff
2671 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2672 patterns for 16th triplets.
2674 2006-06-10 Graham Percival <gpermus@gmail.com>
2676 * Documentation/user/ page.itely, global.itely: editing
2679 * Documentation/user/ various: findex -> funindex.
2681 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2683 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2684 insert extra tuplet events.
2686 2006-06-10 Graham Percival <gpermus@gmail.com>
2688 * Documentation/user/programming-interfaces.itely: add
2691 * python/convertrules.py: add annotatefoo -> annotate-foo
2694 * Documentation/user/global.itely: start editing.
2696 * Documentation/user/page.itely: major editing, new spacing
2699 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2701 * scm/define-markup-commands.scm (wordwrap-markups): use
2702 output-def 'line-width if undefined.
2704 * HACKING: trim outdated info.
2706 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2708 * scm/define-grobs.scm (all-grob-descriptions): Add
2709 line-spanner-interface to all grobs that already have
2710 text-spanner-interface or dynamic-text-spanner-interface
2712 * scm/page.scm: Rename annotate{headers,systems,page}->
2715 * input/regression/page-spacing.ly,
2716 input/regression/page-layout-manual-position.ly: idem
2718 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2720 * lily/line-spanner.cc: cleanup property list.
2722 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2723 generator expressions (2.3 compat).
2725 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2727 * lily/vertical-align-engraver.cc: Make sure that the
2728 align{Above,Below}Context properties are included in the automatic
2731 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2733 * scm/paper-system.scm (paper-system-annotate): also annotate the
2734 estimated pure-Y-extent
2736 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2738 * lily/system.cc (break_into_pieces): set the estimated height
2739 of each child system
2741 * lily/stem.cc (pure_height): new pure-Y-extent callback
2743 * lily/staff-symbol-referencer.cc (callback): don't destroy
2744 the staff-position property
2746 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2747 consider_suicide into two functions
2749 * lily/constrained-breaking.cc (resize): use the new pure
2750 callbacks to estimate the height of a system
2752 * lily/axis-group-interface.cc (pure_group_height): new
2753 side-effect-free VerticalAxisGroup height-callback
2755 * lily/align-interface.cc (get_extents_aligned_translates):
2756 split align_elements_to_extents into two functions
2757 (get_pure_child_y_translation): new function
2759 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2761 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2763 * lily/paper-score.cc: cache break_indices and columns
2765 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2767 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2769 * lily/font-config.cc (init_fontconfig): do the init if
2770 cache_file, but don't look at cache_file.
2772 * input/regression/quote-tie.ly: new file.
2774 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2775 to Head_event_tuple, so we deal gracefully with ties on
2778 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2781 2006-06-08 Graham Percival <gpermus@gmail.com>
2783 * input/test/ smart-transpose.ly, reverse-music.ly:
2784 \applyMusic to music functions update, thanks Michael!
2786 2006-06-07 Graham Percival <gpermus@gmail.com>
2788 * input/test/ add-staccato.ly, add-text-script.ly,
2789 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2790 music functions update, thanks to Michael Meixner.
2792 * Documentation/user/music-glossary.tely: small fix
2795 * Documentation/user/ various: minor additions from mailist.
2797 * Documentation/user/lilypond.tely, basic-notation.itely:
2798 small test of @funindex. (works here)
2800 * input/test/font-table.ly: reduce size to partially
2801 de-ugly version in manual.
2803 * Documentation/user/page.itely: new file (split former
2804 "global issues" into "page settings" and "non-musical
2807 * Documentation/user/ various: fix @ref{}s to match
2808 new chapter names (above).
2810 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2812 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2814 2006-06-06 Graham Percival <gpermus@gmail.com>
2816 * Documentation/user/advanced-notation.itely: add example
2817 for segno/coda on barline.
2819 * tex/texinfo.tex: merge from upstream.
2821 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2823 * scripts/lilypond-book.py (process_snippets): Argument fix.
2826 * buildscripts/builder.py:
2829 * Documentation/user/SConscript: More SCons fixes.
2831 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2833 * lily/font-config.cc (init_fontconfig): Only initialize if
2834 global cache_file is found.
2836 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2838 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2841 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2843 * VERSION (PACKAGE_NAME): release 2.9.8
2845 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2846 function. Delay ledger modifying ledgered grobs to
2847 stop_translation_timestep(), to ensure that we're ledgering
2848 according to the new spanner.
2849 (acknowledge_staff_symbol): don't check for non-NULL
2850 staff_sym->get_bound()
2852 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2855 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2858 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2859 directly from srcdir/stepmake/aclocal.m4
2861 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2864 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2866 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2868 * lily/simple-spacer.cc (get_line_configuration): add
2869 keep-inside-line rods
2870 (struct Column_desc): add constructor
2871 (struct Rod_desc): add constructor
2872 (get_line_forces): check for forced page breaks here too
2874 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2875 support/elements cycles between InstrumentNames and AxisGroups
2877 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2879 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2881 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2882 make-txt-files target.
2884 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2885 make-txt-files target.
2887 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2889 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2892 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2894 * Documentation/user/instrument-notation.itely,
2895 input/regression/breathing-sign-ancient.ly,
2896 input/test/divisiones.ly: Removed redundant property settings for
2899 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2900 fix lyrics alignment problems. They are implemented now as scheme
2901 functions that add the appropriate unicode char to the first lyric
2902 event rather than adding a separate lyric event. Minor edit of
2905 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2907 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2908 pollute src dir with built .txt files, but install directly from
2909 Documentation/topdocs/out/
2911 * buildscripts/output-distance.py
2912 (ComparisonData.create_html_result_page): put version/directories
2915 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2918 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2919 Patch by Karl Hammar
2921 * buildscripts/readlink.py: add file.
2922 Patch by Karl Hammar
2924 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2926 * lily/tuplet-number.cc (print): prevent stencil from being
2929 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2931 * scm/stencil.scm (write-system-signature): explicitly
2932 -well, superfluously- close output port.
2934 * buildscripts/output-distance.py (main): oops. Add extra argument.
2936 2006-06-05 Graham Percival <gpermus@gmail.com>
2938 * Documentation/user/music-glossary.tely: clarified example
2939 from Francisco Vila, thanks!
2941 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2943 * input/regression/spacing-section.ly: new file.
2945 * lily/input.cc (programming_error): new function.
2947 * lily/spacing-engraver.cc (try_music): new function. Accept
2948 spacing-section-event
2950 * lily/spacing-spanner.cc (set_springs): take slices of all
2951 columns for spacing.
2953 * lily/include/paper-column.hh (class Paper_column): add
2954 Paper_column::compare.
2956 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2958 * scm/define-music-types.scm (music-descriptions): add
2961 * lily/music-iterator.cc (report_event): use programming_error for
2962 sending non-event error.
2964 * lily/input.cc (programming_error): new function
2966 * buildscripts/output-distance.py (main): use compare-XXX for
2968 (main): --threshold option, default at 0.30
2970 * output-distance.py (main): add --threshold option.
2972 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2974 * scm/paper-system.scm (paper-system-annotate): fix problem when
2975 annotating an empty system
2977 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2979 * GNUmakefile.in: reinstate old web tar/copying.
2981 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2983 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2984 nothing changes. (Erik S)
2986 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2989 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2991 * scm/define-markup-commands.scm (whiteout): do not force
2992 foreground color of argument markup to black.
2994 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2995 the left of the arrow, instead of below the arrow name, so that,
2996 when two little arrows are vertically stacked, their dimensions
2997 and name should not overlap. Add a color key parameter.
2999 * scm/paper-system.scm (paper-system-annotate): Annotate
3000 next-space+next-padding instead of next-space. Annotate space
3001 between next-padding and next-space+padding, respectively, and
3002 following system extent and refpoint-Y-extent. Use colors.
3004 * scm/page.scm (annotate-page): translate annotations slightly to
3007 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3009 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3010 fix for x-staff slurs. Thanks Joe!
3012 * buildscripts/output-distance.py
3013 (SystemLink.output_expression_change_count): keep track of changed
3014 details, and dump in details html page.
3016 * input/regression/figured-bass-staff.ly: add note about setting
3017 properties in Staff context.
3019 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3020 add slurs and ties to support too.
3022 * buildscripts/output-distance.py (main): set dest_dir
3023 argument. Add --max-count option.
3025 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3027 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3028 shortcuts for special unicode chars that are useful in chant
3029 notation. Revised exisiting and added new comments.
3031 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3033 * make/mutopia-rules.make: remove duplicate recipe.
3035 2006-06-02 Werner Lemberg <wl@gnu.org>
3037 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3038 Add support for U+0132 (IJ) and U+0133 (ij).
3040 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3042 * buildscripts/output-distance.py (FileLink): new class. collect
3043 info systems from one .ly file.
3044 (FileLink.link_files_for_html): further tweaks.
3046 2006-06-02 Graham Percival <gpermus@gmail.com>
3048 * tex/texinfo.tex: partial fix for @funindex.
3050 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3053 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3055 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3057 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3058 @example too. Backportme.
3060 2006-06-02 Graham Percival <gpermus@gmail.com>
3062 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3063 from Werner Lemberg.
3065 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3067 * Documentation/user/music-glossary.tely: additional spanish
3068 updates and a lyrics fix in an example.
3070 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3072 * scm/define-grob-properties.scm: Previous patch contained
3073 spurious line from another patch not yet committed. Fixed.
3075 * scm/define-grob-properties.scm: Add missing doc strings for
3078 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3080 * buildscripts/output-distance.py
3081 (ComparisonData.write_text_result_page): separate the scores, sort
3084 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3087 * buildscripts/output-distance.py (me_path): use argv[0] for
3089 (ComparisonData.img_cell): use colored borders.
3091 * scm/stencil.scm (write-system-signature): escape newlines too.
3092 (write-system-signature): use (1,-1) interval for empty interval
3094 2006-01-01 Graham Percival <gpermus@gmail.com>
3096 * Documentation/user/music-glossary.tely: Spanish updates
3097 from Francisco Vila.
3099 * Documentation/user/lilypond-book.itely: addition from
3102 * Documentation/user/ various: edits, small additions
3105 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3107 * GNUmakefile.in (tree-lib-prefix-current):
3108 (tree-share-prefix-current): Use version number in tree, add
3111 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3113 * GNUmakefile.in: write VERSION, again.
3115 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3116 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3118 * stepmake/aclocal.m4: robuster version detection.
3120 * buildscripts/output-distance.py
3121 (ComparisonData.create_html_result_page): copy only if file
3122 exists, fixup src paths.
3124 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3126 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3128 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3129 Another datarootdir reto.
3131 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3132 available. This should be moved to postinstall-lilypond-doc.
3134 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3136 * GNUmakefile.in: simplify local-WWW-post.
3137 remove -type l from find.
3139 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3140 fixes. Don't follow symlinks.
3141 (ComparisonData.create_html_result_page): remove previous results.
3142 insert ../python in path.
3144 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3146 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3148 * config.make.in (datadir): Add datarootdir to silence autoconf.
3150 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3152 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3154 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3156 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3157 slash beams too wide.
3159 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3161 * VERSION: release 2.9.7
3163 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3165 * lily/relocate.cc (read_relocation_dir): Do not blindly
3168 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3170 * lily/parser.yy: replace THIS by PARSER
3172 * Documentation/index.html.in: add link to test-results.html page.
3174 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3176 * scm/translation-functions.scm (format-bass-figure): translate
3177 digits over 10 to the left
3179 * scm/define-markup-commands.scm (translate-scaled): new markup.
3181 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3184 * ly/engraver-init.ly: add Figured_bass_engraver
3186 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3188 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3190 * lily/score-engraver.cc (announce_grob): only note START announces.
3192 * lily/include/engraver-group.hh (Translator_group):
3193 acknowledge_hash_table_ is now drul.
3195 * lily/engraver.cc (announce_end_grob): new method.
3197 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3199 * lily/translator-dispatch-list.cc (create): take start_end argument.
3201 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3202 acknowledge_static_array_ to drul
3204 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3206 * scm/define-grob-interfaces.scm
3207 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3209 * scm/define-grobs.scm (all-grob-descriptions): add
3210 BassFigureAlignmentPositioning
3212 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3213 number stays up to date. Backportme.
3215 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3217 * Documentation/user/basic-notation.itely (Bar lines): Document
3220 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3222 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3224 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3225 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3228 * Resurrect `scons lily' build.
3230 * SConstruct (symlink_tree): Bugfix: link
3231 music-drawing-routines.ps to file iso directory.
3233 * lily/SConscript: Remove kpath-guile from LIBS.
3235 * SConstruct (libdir_package_version): Typo.
3236 (configure): Comment-out fontforge for lack of fontforge.pc .
3237 Also add libdir* to environment.
3239 2006-05-30 Graham Percival <gpermus@gmail.com>
3241 * Documentation/user/ various: minor additions from mailist and
3244 2006-05-30 Paco <fravd@ya.com>
3246 * Documentation/user/music-glossary.tely: numerous corrections and
3247 some new translations.
3249 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3253 * buildscripts/output-distance.py
3254 (ComparisonData.create_html_result_page): new routine: summarise
3255 results in HTML page with images.
3256 (ComparisonData.create_text_result_page): create summary text files too.
3258 * GNUmakefile.in (web-ext): package .signature files too. They
3261 * scm/stencil.scm (write-system-signature): typo.
3263 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3265 * scm/stencil.scm (write-system-signature): better escaping.
3266 only write signature for music systems, not for markup systems.
3268 * scm/framework-ps.scm (output-framework): dump-signatures support
3271 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3273 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3274 for -dno-point-and-click
3276 * lily/grob.cc (get_print_stencil): don't read
3277 point_and_click_global to determine whether to set grob-cause.
3279 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3281 * buildscripts/output-distance.py (main): new function.
3282 (ComparisonData): new class.
3284 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3285 careful with generating new LedgerLineSpanners.
3287 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3289 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3290 context. This fixes double ledger lines in output.
3292 * lily/system.cc (get_paper_system): remove 3 layer limit.
3294 * buildscripts/output-distance.py (SystemLink.distance): new
3295 file. Compare signatures.
3297 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3299 * lily/grob-array.cc (remove_duplicates): rename from
3300 uniq(). Sort before calling uniq() so it actually works.
3302 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3304 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3305 \version from lilypond file snippet.
3306 (Lilypond_file_snippet.ly): oops. typo.
3307 (find_toplevel_snippets): urgh. again.
3309 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3310 prevent duplicated broken items in output.
3312 * scm/framework-eps.scm (output-classic-framework): only dump if
3313 dump-signatures is set.
3315 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3317 * scm/stencil.scm (write-system-signature): new routine: write
3318 python parseable signature of a separate paper system.
3321 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3323 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3327 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3329 * translator-group.cc: send music events to engravers in
3330 non-bottom contexts.
3332 * tuplet-engraver.cc: process tuplet brackets in correct order.
3334 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3336 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3337 arg 2 might point us to a new binary (patch by Karl Hammar)
3339 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3341 * VERSION (PACKAGE_NAME): release 2.9.6
3343 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3345 * Documentation/user/*.itely: 2nd
3346 attempt: replace funindex -> findex globally.
3348 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3350 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3351 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3353 * scm/define-music-display-methods.scm: display methods for
3354 breaks. Fix \applyOutput.
3356 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3358 * Documentation/user/macros.itexi: comment out funindex expansion.
3360 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3363 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3364 Karl Hammar. Backportme.
3366 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3368 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3370 * Documentation/user/programming-interface.itely (Running a
3371 function on all layout objects): idem.
3373 * Documentation/user/introduction.itely (Automated engraving):
3374 update \applyOutput syntax
3376 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3377 remove debugging hook.
3379 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3382 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3384 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3385 TEXI2DVI_FLAGS to texi2dvi invocation.
3387 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3389 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3390 works. More work is done by iterator now, and engraver has been
3391 very much simplified.
3393 * lily/translator-group.cc: try_music is now invoked through a
3396 * lily/*-iterator.cc: Massive cleanups. Junked
3397 try_music_in_children globally. Renamed try_music to report_event,
3398 and made that method descend to a bottom context automatically.
3400 * lily/event-iterator.cc: New file.
3402 * lily/output-property-iterator.cc,
3403 lily/old-lyric-combine-music-iterator.cc: Removed.
3405 * python/convert-rules.py: Modified the syntax for \applyOutput.
3407 2006-05-23 Graham Percival <gpermus@gmail.com>
3409 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3412 * Documentation/user/ various: stuff that might have helped
3413 to fix the pdf creation, plus some minor doc additions.
3415 * Documentation/user/changing-defaults.itely: remove @b from
3416 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3418 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3420 * lily/beaming-pattern.cc (beamify): deal with negative start
3421 moments for beaming patterns.
3423 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3425 * lily/beaming-info.cc (beamify): new function: read beatLength
3426 and beatGrouping from context.
3428 * input/regression/beam-beat-grouping.ly (Module): new file.
3430 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3432 * lily/beam.cc (get_beam_segments): generate events for
3433 max_connect_ case too.
3434 (get_beam_segments): read Stem::max-beam-connect.
3436 * input/regression/beam-single-stem.ly: new file.
3438 * lily/stem.cc (set_beaming): use #f as signaling value for
3441 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3443 * lily/beam.cc (set_beaming): read clip-edges property.
3444 (calc_direction): don't suicide for single stem.
3446 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3447 argument, remove 1<<15 hack. Remove clip_edges()
3449 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3451 2006-05-21 Graham Percival <gpermus@gmail.com>
3453 * Documentation/user/basic-notation.itely: reorg.
3455 * Documentation/user/ various: minor fixes.
3457 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3459 * lily/stencil-expression.cc (register_stencil_head): opps, append
3460 to cdr of static SCM object.
3462 2006-05-19 Graham Percival <gpermus@gmail.com>
3464 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3465 update framework for command index. DOC WRITERS: use @funindex
3466 instead of @cindex @code{}.
3468 * Documentation/user/ various: replace @cindex @code{} => @funindex
3470 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3472 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3473 case positions is set manually.
3475 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3477 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3480 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3482 * Documentation/user/changing-defaults.itely (Contexts explained):
3483 use absolute dimension for @image.
3485 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3486 out image for illustration too.
3487 ($(outdir)/%.png): add more png <-> eps rules.
3489 2006-05-17 Graham Percival <gpermus@gmail.com>
3491 * Documentation/user/ various: remove trailing whitespace, cosmetic
3492 change to reduce changes produced by diff.
3494 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3496 * lily/main.cc (do_chroot_jail): correctness tweak.
3498 * python/lilylib.py (system): import subprocess in system () only.
3500 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3502 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3503 variable. Backportme.
3505 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3507 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3509 2006-05-17 Werner Lemberg <wl@gnu.org>
3511 * lily/lexer.ll (init_signature_has_table): Add
3512 `scm-scm-music-music'.
3514 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3515 (Generic_prefix_music_scm): Add rule for it.
3517 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3518 `quoted-transposition' property.
3520 * ly/music-functions-init.ly (transposedCueDuring): New function.
3522 * scm/define-music-properties.scm (all-music-properties): Updated.
3524 * Documenation/topdocs/NEWS.itely: Document it.
3526 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3528 * python/lilylib.py (system): move import subprocess to system()
3531 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3533 * VERSION (PATCH_LEVEL): release 2.9.5
3535 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3538 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3540 2006-05-16 Graham Percival <gpermus@gmail.com>
3542 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3544 * Documentation/user/ various: minor fixes.
3546 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3548 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3550 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3552 * Documentation/user/advanced-notation.itely (Instrument names):
3553 Modified obsolete instruction on how to move instrument names away
3554 from the staves. Hmm, at second thought the bug probably has been
3555 solved, so the full bug description should probably be removed.
3557 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3559 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3560 currentCommandColumn.
3562 * lily/hairpin.cc (print): also add padding for non-neighbor
3565 * scm/define-context-properties.scm
3566 (all-user-translation-properties): add hairpinToBarline
3568 * input/regression/hairpin-to-barline.ly: new file.
3570 * lily/context.cc (internal_send_stream_event): thinko fix.
3572 * lily/tie.cc (set_default_control_points): robustness fix.
3574 * python/musicxml.py (Part.interpret): don't complain about
3575 incomplete measures.
3577 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3578 new music if last_event_chord() returned None.
3580 * python/musicxml.py (Part.interpret): skip back over chord notes.
3582 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3584 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3585 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3586 lily/slash-repeat-engraver.cc,
3587 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3588 iterator sends PercentEvents
3590 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3591 rework tuplets: send start/stop events to engraver
3593 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3594 dispatchers event-source and events-below to Context
3596 2006-05-15 Graham Percival <gpermus@gmail.com>
3598 * Documentation/user/README.txt: update info for doc writers.
3600 * Documentation/user/programming-interface.itely: integrate
3601 Nicolas' fixes for chapter rewrite.
3603 * Documentation/user/ various: minor fixes.
3605 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3607 * lily/clef-engraver.cc: cleanup.
3609 * Documentation/user/GNUmakefile: dist context-example.eps too.
3611 * lily/key-engraver.cc (create_key): use
3612 explicitKeySignatureVisibility for cancellation too.
3614 * lily/font-config.cc (init_fontconfig): don't close file if
3617 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3619 * Documentation/topdocs/NEWS.tely: niente and rotation news
3621 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3623 * lily/include/stencil.hh
3624 * lily/stencil.cc (rotate): new function. Makes it possible
3625 to rotate a stencil around a given offset.
3627 * lily/grob.cc (get_print_stencil): add rotation support
3629 * lily/stencil-interpret.cc (interpret_stencil_expression):
3630 add rotation support
3632 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3634 * scm/define-grob-properties.scm: add 'rotation property
3636 * scm/define-markup-commands.scm: add rotate markup command
3638 * scm/output-ps.scm: add rotation support in PostScript backend
3640 * scm/output-svg.scm: add rotation support in SVG backend
3642 2006-05-13 Graham Percival <gpermus@gmail.com>
3644 * Documentation/user/music-glossary.itely: French correction.
3646 * Documentation/user/programming-interface.itely: major
3647 new docs, some reorg, some info from Nicolas.
3649 * Documentation/user/ various: small fixes.
3651 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3653 * Documentation/user/programming-interface.itely (Markup
3654 programmer interface): Remove duplicate text.
3656 2006-05-12 Graham Percival <gpermus@gmail.com>
3658 * Documentation/user/context-example.eps: new file.
3660 * Documentation/user/changing-defaults.itely: set up file to
3663 * Documentation/user/programming-interface.itely: changes
3666 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3668 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3670 2006-05-11 Graham Percival <gpermus@gmail.com>
3672 * Documentation/user/programming-interface.itely: first round of
3673 editing and merging emails from Nicolas.
3675 * Documentation/user/scheme-tutorial: minor edit.
3677 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3679 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3681 (Xml_node.message): use it.
3683 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3684 oops. Add duration argument.
3686 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3688 * lily/paper-column-engraver.cc (make_columns):
3689 * scm/define-grobs.scm: Revert my previous change and set the default
3690 in define-grobs.scm instead.
3692 2006-05-09 Graham Percival <gpermus@gmail.com>
3694 * Documentation/user/changing-defaults.itely: general editing,
3695 info about \set and \override.
3697 * Documentation/user/tweaking.itely, advanced-notation.itely:
3698 fixes from Dave Luttinen, thanks!
3700 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3702 * lily/paper-column-engraver.cc (make_columns): By default, a column
3703 needs to be breakable.
3705 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3707 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3709 (musicxml_time_to_lily): idem
3710 (musicxml_key_to_lily): idem
3711 (instrument_drumtype_dict): dict for supported drumtypes.
3712 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3713 moments and pending mm rests
3714 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3715 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3716 (musicxml_voice_to_lily_voice): add mode change.
3717 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3718 speed and less memory usage (factor 5 to 10).
3719 (convert): write -defs.ly and driver file separately so people
3720 can script their own part extraction.
3722 * python/musicxml.py (minidom_demarshal_node): new function:
3723 separate minidom handling.
3724 (lxml_demarshal_node): new function: support lxml.etree too.
3725 (Xml_node.message): new function: verbose error message, with XML
3726 path to offending node.
3727 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3728 (Part_list.generate_id_instrument_dict): new method: collect
3729 instrument names, to be able to set drum_type.
3730 (Part.interpret): handle underfull measures
3731 (Part.interpret): assign instrument names.
3733 * python/musicexp.py (Output_printer.close): new method
3734 (MusicWrapper.print_ly): new class: support other modes,
3736 (BarCheck.print_ly): new class. Support bar checks, with comments
3737 and fancy barchecks.
3738 (NoteEvent.__init__): also set drum_type for drum notes.
3739 (MultiMeasureRest.lisp_expression): dump mm rests.
3741 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3742 line-break-permission if forbidBreak is not set.
3744 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3746 * scm/define-context-properties.scm:
3747 * scm/define-grob-properties.scm:
3748 * scm/define-grobs.scm:
3749 * scm/define-music-display-methods.scm:
3750 * scm/define-music-properties.scm:
3751 * scm/define-music-types.scm:
3752 * scm/music-functions.scm:
3753 * ly/declarations-init.ly:
3754 * lily/include/constrained-breaking.hh:
3756 * lily/spaceable-grob.cc:
3757 * lily/simple-spacer.cc:
3758 * lily/paper-score.cc:
3759 * lily/paper-column.cc:
3760 * lily/paper-column-engraver.cc:
3762 * lily/gourlay-breaking.cc:
3763 * lily/constrained-breaking.cc:
3764 * python/convertrules.py:
3765 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3766 "page-break-penalty" and "line-break-permission".
3767 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3768 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3770 * lily/bar-engraver.cc:
3771 * lily/beam-engraver.cc:
3772 * lily/forbid-break-engraver.cc:
3773 * lily/ligature-engraver.cc:
3774 * lily/paper-column-engraver.cc:
3775 * lily/percent-repeat-engraver.cc:
3776 * lily/score-engraver.cc:
3777 * lily/score-engraver.hh:
3778 * lily/paper-column-engraver.hh:
3779 Inter-engraver communication regarding line breaks is done through context
3780 properties (Score.forbidBreak) instead of function calls.
3782 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3784 * VERSION (PACKAGE_NAME): release 2.9.4
3786 2006-05-08 Graham Percival <gpermus@gmail.com>
3788 * Documentation/user/working.itely: proofreading from Dave
3791 * Doucmentation/user/README.txt: updated with manual style info.
3793 * Documentation/user/ various: trim linewidth to 78 chars.
3795 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3797 * scm/define-grob-properties.scm (all-internal-grob-properties):
3798 remove chord-tremolo property.
3800 * lily/beam.cc (get_beam_segments): don't use stem position as
3801 base for broken ends.
3803 2006-05-06 Graham Percival <gpermus@gmail.com>
3805 * Documentation/user/putting.itely: proofreading from Dave
3808 * Documentation/user/ various: more reorg and clarifications.
3810 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3812 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3814 * ly/music-functions-init.ly: new function featherDurations
3816 * lily/beam.cc: read grow-direction for feathered beaming.
3818 * Documentation/topdocs/NEWS.tely (Top): typo.
3820 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3822 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3825 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3826 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3827 used by music streams.
3829 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3830 lily/stream-event.cc, lily/stream-event-scheme.cc,
3831 lily/listener.cc, lily/scheme-listener.cc,
3832 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3833 lily/include/stream-event.hh, lily/include/listener.hh,
3834 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3835 Created data structures for music streams.
3837 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3839 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3840 construction of a beam.
3843 * flower/include/std-vector.hh (default_compare): use only one comparison.
3845 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3846 (note-by-number): further attachment fixes.
3848 * scm/lily-library.scm (ordered-cons): new function.
3849 (interval-index): new function
3851 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3853 * lily/note-head.cc (get_stem_attachment): new function.
3855 * scm/define-markup-commands.scm (note-by-number): read 'style
3858 * input/regression/markup-note.ly: show note-head style option.
3860 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3863 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3865 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3867 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3869 * lily/include/constrained-breaking.hh: GCC 4 fix.
3871 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3873 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3874 Replace it with functions get_line_forces and get_line_configuration.
3875 (class Simple_spacer): Make data private.
3876 Rewrite compression algorithm to be faster and simpler.
3878 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3879 * lily/gourlay-breaking.cc (solve):
3880 * lily/constrained_breaking.cc (space_line):
3881 Change it to the new simple-spacer code.
3883 * lily/paper-score.cc (get_paper_systems):
3886 Delay breaking the systems until they are requested.
3887 (find_break_indices):
3888 Use vsize for indices.
3890 Move the "Calculating line breaks" message here.
3892 * lily/system.cc (pre_processing):
3893 Move the "Calculating line breaks" message away from here.
3894 (break_into_pieces):
3895 Allow multiple calls to this function in sequence (with touching-but-
3896 not-overlapping breakpoints).
3898 * lily/constrained-breaking.cc:
3899 Replace most of the get_XXXX functions with get_line_details.
3900 Only calculate the force for each line. Calculate configurations only
3901 for the lines we will actually use.
3902 Replace cols_ with lines_.
3904 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3906 * mf/GNUmakefile (depth): remove FC_FIND.
3908 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3910 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3912 * scm/framework-ps.scm (write-preamble): new function.
3913 (write-preamble): load mac fonts via fondu, even if gs-font-load
3916 2006-05-03 Werner Lemberg <wl@gnu.org>
3918 * mf/GNUmakefile (FC_FIND): Fix typo.
3920 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3922 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3924 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3926 * stepmake/aclocal.m4: run python-config for crosscompiling
3929 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3930 -f png for HTML, TEXINFO formats.
3932 * input/tutorial/lbook-html-test.html: new file.
3934 * lily/include/tie-formatting-problem.hh (class
3935 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3936 [column, direction]. This fixes laissez vibrer ties.
3938 * flower/include/tuple.hh (struct Tuple2): new file.
3940 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3941 $(FCMATCH), only if $(NCSB_DIR) not set.
3943 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3945 * config.make.in (DOCUMENTATION): set FCMATCH.
3947 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3949 2006-05-03 Graham Percival <gpermus@gmail.com>
3951 * Documentation/user/ various: final round of reorg.
3953 * Documentation/user/instrument-notation.itely: some more
3954 fixes from Eduardo, thanks!
3956 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3958 * VERSION (PACKAGE_NAME): release 2.9.3
3960 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3962 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3964 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3966 * scm/define-grob-properties.scm (all-user-grob-properties):
3967 Correct typo, thanks to Eduardo.
3969 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3971 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3973 * buildscripts/lilypond-words.py (F): indent fix.
3975 * input/regression/tie-arpeggio-collision.ly: new file.
3977 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3978 function: store outlines per column rank.
3980 * lily/include/tie-configuration.hh (class Tie_configuration): add
3981 column_ranks_ to specification and configuration, to distinguish
3982 between ties for different heads in arpegiated chords.
3984 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3986 * *.py: more 4 space indents.
3988 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3990 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3992 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3994 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3996 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3998 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4000 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4002 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4004 * python/convertrules.py (conv): indent 4 for python files.
4006 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4008 * Documentation/user/changing-defaults.itely (Creating contexts):
4009 Clarify \new semantics.
4011 2006-04-28 Graham Percival <gpermus@gmail.com>
4013 * Documentation/user/ various: major new sections in the
4014 Learning manual, slight reorg elsewhere.
4016 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4018 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4020 * scm/framework-ps.scm (output-framework): remove PageMedia
4022 2006-04-27 Graham Percival <gpermus@gmail.com>
4024 * Documentation/user/ tweaks.itely, working.itely: new
4025 files, being more advanced "learning manual" chapters.
4027 * Documentation/user/ tutorial, putting, lilypond: reorg.
4029 2006-04-26 Graham Percival <gpermus@gmail.com>
4031 * input/regression/lyric-combine-polyphonic.ly: fixed test
4032 (no more "can't find context `one'" error).
4034 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4036 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4038 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4040 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4042 * lily/relocate.cc (read_relocation_dir): new function.
4044 2006-04-26 Graham Percival <gpermus@gmail.com>
4046 * Documentation/user/instrument-notation.itely: a few more fixes
4047 from Eduardo, thanks!
4049 * Documentation/user/README.txt: new file; contains info on
4050 style that used to be in lilypond.tely.
4052 * Documentation/user/ various: first round of doc reorg.
4054 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4055 graphic; this probably causes problems on some pdf
4056 viewers, notably Adobe Acrobat.
4058 2006-04-24 Graham Percival <gpermus@gmail.com>
4060 * Documentation/user/instrument-notation.itely: many alterations
4061 to Vocal music, from Eduardo Viera.
4063 2006-04-23 Graham Percival <gpermus@gmail.com>
4065 * Documentation/user/instrument-notation.itely: fix \new
4066 instead of \context problem.
4068 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4070 * lily/relocate.cc (expand_environment_variables): new function.
4072 (read_relocation_file): id.
4074 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4076 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4078 * ly/engraver-init.ly: remove old comments from TabVoice
4080 2006-04-20 Graham Percival <gpermus@gmail.com>
4082 * Documentation/user/instrument-notation.itely: added Erlend's
4083 latest doc patch, thanks!
4085 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4087 * lily/include/slur.hh:
4089 * lily/phrasing-slur-engraver.cc:
4090 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4091 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4092 Slur_engraver:: and putting it in
4093 Slur::auxiliary_acknowledge_extra_object ().
4095 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4097 * lily/note-collision.cc: fix a comment
4099 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4101 * stepmake/bin/add-html-footer.py: fix footer position in
4102 generated html files: before </body> and </html> tags.
4104 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4106 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4107 Earlier successive `make' commands finally compiled ok.
4109 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4111 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4113 * lily/include/stem-tremolo.hh:
4114 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4118 * lily/include/lookup.hh: add rotated_box ()
4120 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4122 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4123 been generated. Fixes "can't get `--help'" bug after make clean.
4125 * THANKS: alphabetize contributors.
4127 2006-04-17 Graham Percival <gpermus@gmail.com>
4129 * Documentation/user/instrument-notation.itely: added Erlend's
4130 tabs and banjo doc patch. Thanks!
4132 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4134 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4136 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4138 * scm/output-lib.scm: add some more predefined string tunings.
4140 * Documentation/user/instrument-notation.itely: and doc them.
4142 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4144 * ly/engraver.ly: Remove obsolete comments.
4146 * ly/gregorian-init.ly: Define default layout block.
4148 * input/puer-fragment.ly: Updated and extended.
4150 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4152 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4153 pdf conversion behaviour.
4155 * flower/file-name.cc (dir_name)
4156 (get_working_directory): Move from relocate.cc.
4158 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4160 * lily/relocate.cc: Encapsulate sys/stat.h in
4163 2006-04-14 Graham Percival <gpermus@gmail.com>
4165 * Documentation/user/ various: small updates from Cameron
4166 and Juergen, thanks!
4168 * Documentation/user/ various: small updates of my own.
4170 * THANKS: 2.7 -> 2.8.
4172 2006-04-11 Graham Percival <gpermus@gmail.com>
4174 * scm/define-context-properties.scm: typo.
4176 * Documentation/user/ : many more small updates.
4178 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4180 * scm/define-music-types.scm: disposed "docme".
4182 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4184 * lily/hairpin.cc: make niente circles a bit smaller.
4186 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4188 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4189 get-pfa and get-*-fonts targets.
4191 2006-04-10 Graham Percival <gpermus@gmail.com>
4193 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4194 music-glossary, programming-interface: more minor fixes
4197 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4199 * scm/define-context-properties.scm: another old \property update.
4200 This time tested for compiling!
4202 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4204 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4206 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4208 * scm/define-context-properties.scm (all-user-translation-properties):
4209 * Documentation/user/global.itely (Page formatting): Compile fix.
4211 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4213 * Documentation/user/advanced-notation.itely (Polymetric
4214 notation): Update the example to use the "+" symbol and add link
4215 to input/test/compound-time.ly.
4217 2006-04-08 Graham Percival <gpermus@gmail.com>
4219 * scm/define-grob-properties.scm: clarify docs for #'direction.
4221 * scm/define-context-properties.scm: update old \property override.
4223 * Documentation/user/ advanced-notation, global, lilypond-book:
4224 more minor doc updates.
4226 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4228 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4230 * scm/backend-library.scm (search-gs): oops.
4232 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4234 * scripts/lilypond-book.py (output): use base, not filename for href.
4236 * scm/backend-library.scm: only look for gs.
4238 * scripts/lilypond-book.py (output): fix printfilename.
4240 * lily/parser.yy (music_function_musicless_prefix): fold together
4241 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4243 * lily/slur.cc (print): only set font-size if not set yet.
4245 * lily/slur-configuration.cc (add_score): improved layout of debug
4248 2006-04-05 David Feuer <David.Feuer@gmail.com>
4250 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4251 (draw_circle): Hopefully fixed regression.
4252 Improved documentation for several procedures.
4254 2006-03-04 Werner Lemberg <wl@gnu.org>
4256 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4258 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4260 * scripts/musicxml2ly.py (bindir): add dynamic
4263 2006-04-04 Graham Percival <gpermus@gmail.com>
4265 * Documentation/user/ basic-notation, advanced-notation, putting,
4266 instrument-notation, invoking, lilypond, THANKS: another ream of small
4267 fixes from the Doc Helpers.
4269 2006-04-03 David Feuer <David.Feuer@gmail.com>
4271 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4273 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4275 * Cleaned up interfaces between PostScript and Scheme, and moved
4276 computations from PostScript to Scheme:
4278 * music-drawing-routines.ps
4279 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4280 with stroke_and_fill throughout.
4281 (euclidean_length, print_letter, draw_box): Deleted unused
4282 procedures. If someone needs draw_box, implement it using
4283 draw_round_box; don't duplicate code.
4284 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4285 Refactored/cleaned up interfaces.
4288 * output-ps.scm: reordered arguments to PostScript functions to
4289 match new interfaces
4290 (glyph-string): Rewrote glyph-string.
4291 (grob-cause): Replaced string-append with format.
4292 (repeat-slash): Rewrote to do computation here.
4293 (round-filled-box): Rewrote to do computation here.
4295 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4297 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4299 * stepmake/stepmake/toplevel- targets.make: print help info about
4302 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4304 * input/regression/hairpin-circled.ly: new file
4306 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4308 * lily/hairpin.cc (print): add support for circled tip
4310 * scm/define-grob-properties.scm: add circled-tip parameter
4312 * scm/define-grobs.scm: init circled-tip to false
4314 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4316 * scm/music-functions.scm (quote-substitute): set
4319 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4321 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4324 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4326 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4328 2006-03-31 David Feuer <david.feuer@gmail.com>
4330 * scm/framework-ps.scm:
4332 * scm/output-ps.scm: glyph-string now produces smaller, more
4333 readable, and probably faster PostScript. Several findfont
4334 scalefont setfont instances changed to selectfont
4335 Hacked-up string-appends changed to formats.
4337 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4339 2006-03-30 Graham Percival <gpermus@gmail.com>
4341 * scm/lily-library.scm: make "no version" warning message more polite.
4343 * lily/music.cc: add double quotes to failed octave check.
4345 * Documentation/user/ advanced-notation, changing-defaults,
4346 instrument-notation, invoking, music-glossary: whole bunch of minor
4349 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4351 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4352 $(buildscriptdir) iso. depth.
4354 * VERSION (PACKAGE_NAME): release 2.9.1
4356 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4358 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4360 * VERSION (PATCH_LEVEL): bump version number.
4362 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4365 * lily/pango-font.cc (pango_item_string_stencil): use
4368 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4369 $(outdir)/emmentaler-%.svg): remove canary.
4371 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4372 glyphnames if we have a ttf font.
4374 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4376 * Documentation/user/advanced-notation.itely (Font selection):
4377 Corrected reference to the font-family-override.ly example.
4379 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4381 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4382 stem-tremolo object in the stem (or else the stem might not be
4385 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4387 * lily/ttf.cc (print_trailer): only print existing glyphs.
4389 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4391 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4392 position the tremolo based on the position of the notehead.
4394 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4395 notes and update the texidoc line with the new positioning rules.
4397 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4399 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4401 * scripts/lilypond-book.py (Module): set default for linewidth if
4404 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4406 * VERSION (PACKAGE_NAME): release 2.9.0.
4408 * input/regression/stem-tremolo-position.ly: new file.
4410 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4412 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4414 * lily/stem-tremolo.cc (print): position
4415 the tremolo depending only on the end of the stem
4416 and not on the notehead
4417 (raw_stencil): center, on the middle staff line, the
4418 flag that is closest to the end of the stem (previously
4420 (calc_width): add this callback to shorten a tremolo when
4421 it is beamed or it is stemup with a flag
4422 (style): add this callback to make a tremolo rectangular when
4423 it is beamed or it is stemup with a flag
4424 (rotated_box): this is like Lookup::beam but makes a rotated
4425 rectangle instead of a parallelogram
4427 * lily/stem.cc (calc_stem_info): make sure the stem
4428 is long enough to fit the tremolo
4429 (calc-length): reduce the length of tremolo stems since the
4430 tremolo code is now capable of better positioning
4432 * scm/define-grobs.scm: make calc_width the default beam-width
4433 callback for stem-tremolo and add the style callback
4435 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4437 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4440 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4442 * lily/ttf.cc (make_index_to_charcode_map): restore old
4445 2006-03-28 Werner Lemberg <wl@gnu.org>
4447 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4449 2006-03-28 Graham Percival <gpermus@gmail.com>
4451 * THANKS: update for 2.9, add section for Documentation helpers.
4453 * Documentation/topdocs/NEWS.tely: compile fix.
4455 * Documentation/user/ basic-notation, global, advanced-notation,
4456 examples.itely: minor fixes from mailist.
4458 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4460 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4463 * lily/ttf.cc (print_trailer): use it.
4465 * lily/pango-font.cc (get_unicode_name): new function.
4467 * lily/ttf.cc (make_index_to_charcode_map): move function from
4469 (print_trailer): substitute uniXXXX name if applicable.
4471 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4472 (pango_item_string_stencil): use it to generate uniXXXX names.
4474 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4475 note heads, for uniform widths in shape note output.
4476 (overdone_heads): hmm. remove them again.
4478 * scripts/lilypond-book.py (output): add links to filenames.
4480 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4482 * lily/note-collision.cc (get_clash_groups): only consider when
4483 Note_column::dir <> CENTER.
4485 * scripts/lilypond-book.py (get_option_parser): init output_name
4488 2006-03-24 Graham Percival <gpermus@gmail.com>
4490 * Documentation/topdocs/NEWS.tely: add @end itemize
4492 * Documentation/user/ global, advanced-notation: minor
4495 2006-03-23 Graham Percival <gpermus@gmail.com>
4497 * Documentation/user/ lilypond.tely, music-glossary,
4498 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4500 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4502 * mf/GNUmakefile: don't install .enc files.
4504 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4506 * VERSION (PATCH_LEVEL): bump to 2.9.0
4508 2006-03-22 Graham Percival <gpermus@gmail.com>
4510 * Documentation/user/advanced-notation.itely: minor fixes
4513 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4515 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4517 * branch lilypond_2_8
4519 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4521 * scripts/lilypond-book.py (samefile): new function, for windoze
4524 2006-03-21 Graham Percival <gpermus@gmail.com>
4526 * ly/engraver-init.ly: add info about StaffGroup.
4528 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4530 * input/regression/stem-direction-context.ly: idem.
4532 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4536 * input/regression/page-layout-twopass.ly: comment out \markup so
4539 * lily/instrument-name-engraver.cc (finalize): add to instrument
4540 name global System. This also fixes chopped instrument names, but
4541 doesn't crash when there are slurs/beams.
4543 * lily/slur-configuration.cc (add_score): disallow negative slur
4546 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4548 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4550 * lily/instrument-name-engraver.cc (process_music): kludge: add
4551 InstrumentName spanner to axis group of left bound. Fixes chopped
4552 off instrument names in EPS images.
4554 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4556 * scripts/abc2ly.py (option_parser): update to 2.7.40
4558 2006-03-20 Graham Percival <gpermus@gmail.com>
4560 * THANKS: move small doc contributors to SUGGESTIONS.
4562 * Documentation/user/ basic-notation, advanced-notation,
4563 global: small changes from mailist.
4565 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4567 * Documentation/user/advanced-notation.itely (Text marks): update
4568 for new rehearsalMarkAlignSymbol convention.
4570 * VERSION (PATCH_LEVEL): bump version.
4572 * input/test/instrument-name-align.ly: new file.
4574 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4576 * input/test/instrument-name-align.ly: new file. Document how to
4577 align instrument names.
4579 * lily/mark-engraver.cc: remove properties.
4581 * scm/define-context-properties.scm
4582 (all-user-translation-properties): remove align symbol properties
4583 for barnumber/reh. mark.
4585 * lily/break-align-interface.cc (self_align_callback): new
4586 interface, new function. Look at complete alignment. This handles
4587 tunable break alignments in case break-align-symbols are missing.
4589 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4591 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4593 * python/convertrules.py (conv): mark/bar number alignment rule.
4595 * lily/break-align-interface.cc (calc_positioning_done): also
4596 store offset from last visible break-alignment to its
4597 neighbor. This makes alignment on non-visible objects more reliable.
4599 * po/lilypond.pot (Module): ran po-replace.
4601 * input/regression/tie-single-manual.ly (Module): new file.
4603 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4604 look at has_manual_position_.
4605 (from_ties): set has_manual_position_ if tie has staff-position set.
4607 * lily/tuplet-bracket.cc (calc_positions): idem.
4609 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4612 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4614 * scm/define-markup-commands.scm (smallCaps): new markup command
4615 for turning a text to small caps using smaller font size and upper
4618 2006-03-17 Graham Percival <gpermus@gmail.com>
4620 * Documentation/user/ examples, instrument-notation,
4621 advnaced-notation: minor fixes from mailist.
4623 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4625 * Documentation/user/tutorial.itely (First steps): change example
4628 2006-03-17 Graham Percival <gpermus@gmail.com>
4630 * Documentation/user/ examples, advanced: minor changes from mailist.
4632 * THANKS: add Geoff Horton, for documentation stuff.
4634 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4636 * python/lilylib.py (system): revert have_select kludge.
4638 * Documentation/user/tutorial.itely (Commenting input files):
4639 update version numbers in doc.
4641 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4642 bound-padding to multi-measure-interface
4644 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4646 * input/test/engraver-example.ily: update version number.
4648 * VERSION (PACKAGE_NAME): release 2.7.39
4650 * lily/note-spacing.cc (get_spacing): heighten threshold where
4651 accidentals/arpeggios influence previous spacing fully.
4653 * lily/rest.cc (y_offset_callback): only use direction if
4654 staff-position wasn't set before.
4656 * lily/bar-number-engraver.cc: add support for
4657 barNumberAlignSymbol.
4658 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4660 * lily/pointer-group-interface.cc (set_ordered): new function.
4661 (add_unordered_grob): new function.
4663 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4664 to ordered, unless the opposite has been proved. This fixes
4665 random reordering of large object groups across linebreaks,
4668 * lily/main.cc (do_chroot_jail): printf format fix.
4670 * lily/tie-formatting-problem.cc (generate_configuration):
4671 multiply y-shift for dot with direction.
4673 * scm/define-markup-commands.scm (note-by-number): put (magstep
4674 size) in y-attach too.
4676 * Documentation/topdocs/NEWS.tely (Top): show override.
4678 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4679 direction for stems.
4681 2006-03-15 Graham Percival <gpermus@gmail.com>
4683 * Documentation/user/ changing-defaults, global: minor
4686 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4688 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4690 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4691 breakable items after uniformly stretched notes.
4693 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4694 outline with outer edge of note heads. This prevents infinity
4695 problems with tied whole notes.
4697 * scripts/lilypond-book.py (do_file): use os.popen
4699 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4701 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4703 * Documentation/user/invoking.itely: Add ragged-right to bug report
4706 2006-03-14 Graham Percival <gpermus@gmail.com>
4708 * Documentation/user/global.itely: small fix from mailist.
4710 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4712 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4713 file descriptor returned by tempfile.mkstemp() when writing
4714 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4717 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4719 * po/fi.po: newline bugfix.
4721 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4723 * scm/paper.scm (paper-alist): Rounding fixes.
4725 2006-03-13 Graham Percival <gpermus@gmail.com>
4727 * Documentation/user/ changing-defaults, instrument-notation,
4728 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4730 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4734 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4736 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4739 * python/lilylib.py (print_environment): move ps_page_count to
4742 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4744 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4746 * scm/framework-ps.scm (embed-document): new function. Use to
4749 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4751 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4753 * Documentation/user/instrument-notation.itely (Setting simple
4754 songs): Added \book{...} around the full example, so the separate
4755 markups are included in the printed example.
4757 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4759 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4762 * python/lilylib.py (system): rewrite system() using
4763 subprocess. Remove >& redirection trickery.
4765 2006-03-11 Graham Percival <gpermus@gmail.com>
4767 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4768 notation-appendices.itely: minor fixes from mailist.
4770 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4772 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4773 unsplit man also needs images.
4775 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4777 * VERSION (PACKAGE_NAME): 2.7.38 released.
4779 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4781 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4784 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4786 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4787 respects the Score.skipTypesetting property.
4789 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4791 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4792 Prolog. No %%EOF after CFF file.
4794 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4796 * lily/constrained-breaking.cc (get_max_systems): used to return a
4798 (combine_demerits): use pointers to reduce copying data
4799 (calc_subproblem): idem
4800 (get_page_penalty): add page turn penalties
4802 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4804 * Documentation/user/invoking.itely (Invoking lilypond): better
4805 explanation of -e usage.
4807 * lily/main.cc (main_with_guile): don't append to
4808 init_scheme_code_string
4810 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4812 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4814 * scripts/convert-ly.py (do_options): don't print help for
4817 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4818 @code and @example. Update from texinfo.tex from CVS.
4820 2006-03-08 Graham Percival <gpermus@gmail.com>
4822 * Documentation/user/scheme-tutorial.itely: clarifies distances
4823 measured in staff-spaces.
4825 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4827 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4828 consider[k] is true.
4830 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4832 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4833 consider columns that have originals. Unifies spacing for mm
4834 rests around line breaks.
4836 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4837 (set_text_rods): idem.
4838 (calculate_spacing_rods): new function: share code between
4839 set_text_rods and set_spacing_rods.
4840 (set_text_rods): take extents of bounds into account.
4842 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4844 * Documentation/user/basic-notation.itely (Writing music in
4845 parallel): don't use relative.
4847 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4849 * ly/music-functions-init.ly (Module): add shiftDurations
4851 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4853 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4855 * ly/engraver-init.ly: init vocalName to nil.
4857 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4859 * scm/music-functions.scm (music->make-music): bugfix,
4860 KeyChangeEvents are now handled correctly.
4862 * scripts/lilypond-book.py: Add --debug option.
4864 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4866 * python/lilylib.py: add tempfile.
4868 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4870 * VERSION (PACKAGE_NAME): release 2.7.37
4872 * python/lilylib.py (ps_page_count): remove make_ps_images().
4873 (ps_page_count): remove mkdir_p
4874 (system): remove cleanup_temp.
4875 (exit): remove lilypond_version_(check)
4876 (error_log): remove pseudo_filter_p
4881 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4884 * lily/accidental-engraver.cc (make_standard_accidental): only add
4885 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4887 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4888 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4889 Make incompatibilities.
4891 * scm/output-ps.scm (grob-cause): replace backslashes by /
4892 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4894 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4896 * cygwin/GNUmakefile: Install fixes.
4898 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4900 * lily/note-head.cc (head::get_balltype): Compile fix.
4902 * flower/file-name.cc (dos_to_posix): Flower string fix.
4904 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4906 * python/lilylib.py: pychecker cleanups.
4908 * scripts/lilypond-book.py
4909 (Lilypond_snippet.output_print_filename): pychecker cleanups
4911 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4913 * python/lilylib.py (underscore): remove identify() , warranty()
4915 * ps/music-drawing-routines.ps: change Border routine for GSView
4918 * lily/stem.cc (height): use quantize-positions. This triggers
4919 set_stem_lengths, so scripts on beamed stems are handled correctly.
4921 * lily/side-position-interface.cc (aligned_side): check if edges
4922 of script are inside staff. Fixes accent of edge of the staff.
4924 * input/regression/staccato-pos.ly: more examples.
4926 * stepmake/aclocal.m4 (depth): fix bashism.
4928 * lily/lyric-combine-music-iterator.cc: move from
4929 new-lyric-combine-iterator.cc
4930 (process): add pending_grace_lyric_ member to delay lyrics on
4933 * lily/system-start-text.cc (print): suicide if we don't have any
4934 elements. Fixes hara kiri'd instrument names.
4936 * scripts/mup2ly.py (Module): remove.
4938 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4940 * Documentation/user/global.itely (A single music expression):
4941 close @lilypond properly
4943 * lily/volta-bracket.cc (modify_edge_height): change from
4944 after_line_breaking_callback. Suicide last bracket if appropriate.
4946 * python/lilylib.py: strip getopt support
4948 * scripts/etf2ly.py (do_options): use optparse
4950 * scripts/midi2ly.py: optparse, strip lilylib copy.
4952 * scripts/abc2ly.py (voices): use optparse.
4954 * stepmake/stepmake/generic-vars.make: new function absdir.
4956 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4958 * scripts/lilypond-book.py (find_file): use global_options for
4961 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4964 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4966 * python/lilylib.py (get_global_option): ughness for extracting
4967 global options from lilylib.
4968 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4970 * scripts/lilypond-book.py (get_option_parser): use optparse for
4971 option handling. Put options in global_options variable.
4973 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4975 * Documentation/index.html.in: clarify.
4977 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4979 * scm/layout-page-layout.scm (write-page-breaks): add a
4980 music-system-heights property to the page layout output.
4982 * scm/page.scm (make-page-stencil): take footer into account when
4983 computing the 'space-left page property
4984 (annotate-space-left): take footer into account when annonating
4987 2006-02-28 Graham Percival <gpermus@gmail.com>
4989 * Documentation/user/ advanced-notation, global: more (final)
4990 docs for music expressions, removed special fermatas.
4992 2006-02-27 Graham Percival <gpermus@gmail.com>
4994 * Documentation/user/ basic-notation, global: minor changes
4997 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
4999 * scm/framework-ps.scm:
5000 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5001 layer for inf? and nan? from framework-ps to lily-library.
5003 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5005 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5006 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5008 * buildscripts/substitute-encoding.py (Module): remove file.
5010 * mf/GNUmakefile: more PFA strippage.
5012 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5014 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5017 * scm/framework-ps.scm: remove font name munging.
5019 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5021 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5023 * scm/markup.scm (define-markup-command): change
5024 def-markup-command to define-markup-command
5026 * scm/music-functions.scm (define-music-function): change
5027 def-music-function to define-music-function.
5029 * python/convertrules.py (conv): rules for def-music-function
5030 and def-markup-commands
5032 * Documentation/user/programming-interface.itely,
5033 input/no-notation/display-lily-tests.ly,
5034 input/regression/lily-in-scheme.ly,
5035 input/regression/markup-user.ly,
5036 input/regression/music-function.ly, input/regression/tie-chord.ly,
5037 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5038 ly/gregorian-init.ly: use new macro names (define-music-function,
5039 define-markup-command).
5041 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5043 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5044 (output): add comments to lp-book latex output.
5046 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5049 2006-02-23 Graham Percival <gpermus@gmail.com>
5051 * Documentation/user/ tutorial, global: minor changes.
5053 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5055 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5056 blocks (for make 3.80)
5058 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5059 \notemode so that user should not have to explicitely type it.
5061 * scm/define-music-display-methods.scm: various
5062 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5065 * input/no-notation/display-lily-tests.ly: new tests for
5066 \applyOutput and \applyContext
5068 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5070 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5071 changed it slightly so that the number of systems returned by
5072 solve () will be the same as the last value passed to resize
5073 (). I've also added more documentation, removed casts, fixed style
5074 problems and put in some recovery if constraints aren't satisfied."
5076 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5078 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5079 for emacs < 22 compatibility.
5080 (count-rexp): Use it.
5081 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5082 substring juggling (Milan Zamazal).
5084 2006-02-23 Graham Percival <gpermus@gmail.com>
5086 * Documentation/user/ basic-notation, advanced-notation,
5087 global.itely, invoking.itely, tutorial,itely:
5088 minor fixes from mailist.
5090 * scm/define-markup-commands.scm: improve docs of \filled-box.
5092 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5094 * Documentation/index.html.in: changes concern the previous release.
5096 * input/regression/+.ly: cultivate typographical terminology.
5098 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5100 * scm/define-grob-interfaces.scm (parentheses-interface): add
5101 padding to parentheses-interface.
5103 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5104 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5106 * VERSION (PATCH_LEVEL): release 2.7.36
5108 * lily/slur.cc: add avoid-slur (ugh.)
5110 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5111 intersection gets smaller. This fixes slurs over extreme points.
5113 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5114 stems with neutral-direction set.
5116 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5118 * lily/open-type-font.cc (load_table): format error.
5120 * lily/change-iterator.cc (process): format fix.
5122 * flower/include/international.hh (_f): idem.
5124 * flower/include/std-string.hh: add format printf attribute.
5126 * scm/define-grobs.scm (all-grob-descriptions): height of all
5127 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5129 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5132 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5134 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5136 * input/regression/: upgraded syntax for some files.
5138 * THANKS: Add bughunters.
5140 2006-02-22 Graham Percival <gpermus@gmail.com>
5142 * Documentation/user/ invoking.itely, advanced-notation.itely,
5143 global.itely: long-awaited "let's make chapter 10 not suck"
5144 update. Rearrange chapter 10; now called "global issues",
5145 addresses file structure, etc. Some info from other files
5146 moved into global.itely.
5148 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5150 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5151 catch trill-span-event notes.
5153 * Documentation/user/examples.itely (Ancient notation templates): typo.
5156 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5158 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5160 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5162 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5164 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5165 froum Laissez_vibrer_engraver.
5167 * ly/declarations-init.ly (repeatTie): add \repeatTie
5169 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5171 * scm/define-grob-properties.scm (all-user-grob-properties): add
5172 head-direction property.
5174 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5175 from_lv_ties. Take head direction argument.
5177 * lily/semi-tie-column.cc: rename from
5178 laissez-vibrer-tie-column.cc. Rename class too.
5180 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5183 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5185 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5187 (find_breaks): idem.
5189 2006-02-21 Graham Percival <gpermus@gmail.com>
5191 * Documentation/user/advanced-notation.itely: fixed make-moment]
5194 * Documentation/user/basic-notation.itely: more clarification to
5197 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5199 * lily/include/constrained-breaking.hh (class
5200 Constrained_breaking): new file.
5202 * lily/constrained-breaking.cc (resize): new file.
5204 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5206 * Documentation/user/advanced-notation.itely (Clusters): insert
5209 * lily/tie-column.cc (calc_positioning_done): support for
5212 * lily/tie-formatting-problem.cc
5213 (generate_extremal_tie_variations): factor out.
5214 (score_ties_configuration): annotate all tie
5215 (print_ties_configuration): new routine.
5216 (generate_configuration): nudge extremal ties outside of the head
5218 (score_ties_configuration): oops. convert to staff-space before
5219 determining position symmetry.
5221 2006-02-20 Graham Percival <gpermus@gmail.com>
5223 * Documentation/user/*-notation.itely: misc minor editing,
5224 shifting doc sections around.
5226 * Documentation/user/*-notation-itely, global.itely,
5227 changing-defaults.itely: added new stuff from NEWS.
5229 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5233 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5235 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5236 lilypond --verbose for lp-book.
5238 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5239 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5241 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5242 $(buildscript-dir) iso. absolute depth.
5244 * buildscripts/genicon.py (dir): thinko.
5246 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5248 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5250 * scm/output-lib.scm: swap darkcyan/darkyellow
5252 * THANKS: Add bughunters.
5254 2006-02-19 Graham Percival <gpermus@gmail.com>
5256 * Documentation/user/programming-interfaces.itely: fixed example.
5258 * Documentation/user/instrument-notation.itely: fix @{ @}.
5260 * scm/script.scm: add avoid-slur for \open.
5262 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5264 * lily/tie-formatting-problem.cc (score_configuration): use
5265 sliding score for min-length.
5267 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5268 spaghetti for icons.
5270 * buildscripts/genicon.py (program_name): new file.
5272 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5274 (generate_configuration): for small ties, also look for collisions
5275 at Y + DIR*h + DELTA_Y.
5276 (get_variations): consider variation for dot positions too.
5278 * lily/side-position-interface.cc (aligned_side): take abs for
5279 quantized rounded position. Fixes tenuto below staff.
5281 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5282 markers when necessary.
5284 * lily/program-option.cc (internal_set_option): add
5285 strict_infinity_checking option.
5287 * scm/output-lib.scm (cyan): swap yellow and cyan.
5289 2006-02-19 Graham Percival <gpermus@gmail.com>
5291 * darwin.patch: trivial linenumber update.
5293 * Documentation/user/ {various}: `\context foo = named' changed
5294 to `\new foo = "name"' in docs.
5296 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5298 * scm/stencil.scm (annotate-y-interval): use it.
5300 * scm/lily-library.scm (interval-sane?): new function.
5302 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5305 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5308 * flower/include/std-vector.hh (iterof): add iterof macro.
5310 * lily/enclosing-bracket.cc (width): new function.
5312 * lily/align-interface.cc (align_elements_to_extents): reinstate
5315 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5317 * Documentation/index.html.in: fix spelling: thankyous.
5319 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5321 * lily/lyric-hyphen.cc: typo.
5323 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5325 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5326 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5329 * VERSION: release 2.7.35
5331 * lily/beam.cc (get_default_dir): oops. Take abs () for
5333 (get_default_dir): use extreme position criterion only in absence
5334 of forced stem directions.
5336 * VERSION (PATCH_LEVEL): bump VERSION.
5338 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5339 dependencies. Necessary for -jX builds.
5341 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5343 * lily/relocate.cc (setup_paths): Yet another const fix.
5345 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5347 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5349 * lily/relocate.cc (setup_paths): oops.
5351 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5353 * Documentation/index.html.in: order links: html before PDF.
5355 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5357 * lily/tie-column-format.cc (Module): remove.
5359 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5361 * lily/text-spanner.cc (print): idem.
5363 * lily/dynamic-text-spanner.cc (print): only print line if longer
5366 * lily/auto-change-iterator.cc (change_to): formatting.
5368 * lily/beam.cc (get_default_dir): take extreme note head as input
5371 * lily/tie.cc (get_default_dir): only look directions for visible
5374 * lily/side-position-interface.cc (aligned_side): oops. Don't
5375 mutiply with direction. This fixes quantized (staccato, tenuto)
5376 scripts below notes.
5378 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5379 direction. Fixes c-lyrics-center-align.ly
5381 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5383 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5386 * lily/std-string.cc:
5387 * lily/include/std-vector.hh (split_string): Move and rename from
5388 lily/include/misc.hh, lily/misc.cc. Update callers.
5390 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5392 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5394 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5396 * flower/test-file.cc: New file.
5398 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5401 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5403 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5405 * flower/include/file-storage.hh: remove file.
5407 * lily/include/midi-item.hh (class Midi_track): idem.
5409 * lily/include/source.hh (class Sources): idem.
5411 * lily/include/performance.hh (class Performance): use vector
5414 * flower/include/cons.hh (class Cons): remove file.
5416 * flower/include/flower-proto.hh: remove template cruft.
5418 * lily/include/font-metric.hh: use size_t not vsize for indices.
5420 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5423 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5425 * lily/include/paper-book.hh (class Paper_book):
5426 make get_system_specs() public.
5428 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5429 the force=10000 case if we don't have a current-best.
5431 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5434 * flower/include/flower-proto.hh: remove outdated templates.
5436 * scm/page.scm: use annotate-spacing
5438 2006-02-15 Graham Percival <gpermus@gmail.com>
5440 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5442 * THANKS: moved Erlend Aasland to contributors.
5444 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5446 * config.hh.in: remove HAVE_PANGO_16
5448 * lily/tuplet-bracket.cc (calc_positions): multiply with
5449 staff-space for beam case. This fixes tuplets+beams on scaled
5452 * config.hh.in: remove all Kpathsea related defines.
5454 * lily/dot-column.cc (side_position): reach stem via dots->
5455 head->stem. Inspect all stems for dot collisions.
5457 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5460 * lily/bar-number-engraver.cc (process_music): document function
5463 * lily/score.cc (default_rendering): add pscore, not systems
5466 * lily/paper-book.cc (get_system_specs): separate generation of
5469 * flower/include/std-vector.hh: don't include config.hh
5471 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5473 * flower/include/std-vector.hh: Better wrapper compatibility with
5476 * flower/include/flower-proto.hh: Remove cheap forward declaration
5479 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5481 2006-02-14 Graham Percival <gpermus@gmail.com>
5483 * Documentation/user/invoking.itely: add warning about command line.
5485 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5487 * lily/include/lily-proto.hh: add Prob, rm Page.
5489 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5491 * VERSION: release 2.7.34
5493 * lily/relocate.cc (framework_relocation): show canary if
5494 GHOSTSCRIPT_VERSION undefined.
5496 * GNUmakefile.in: remove $(VERSION) symlink.
5498 * lily/relocate.cc (setup_paths): add +
5500 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5502 * Documentation/index.html.in: specify sizes for all big HTML pages.
5504 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5506 * config.hh.in: remove @FRAMEWORKDIR@
5508 * lily/system-start-text.cc (get_stencil): new file: separate out
5509 system-start-delimiter text support.
5511 * input/**ly: replace \context with \new where appropriate.
5515 * lily/slur-scoring.cc (get_base_attachments): use
5516 robust_relative_extent. This fixes problems with empty paper-columns.
5518 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5520 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5522 * scm/define-music-properties.scm (all-music-properties):
5523 create-new property.
5525 * lily/context-specced-music-iterator.cc (construct_children):
5526 inspect 'create-new property iso. magical $uniqueContextId context
5529 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5531 * lily/context-key-manager.cc (Module): new file. Encapsulate
5532 object key generation.
5534 * lily/include/context-key-manager.hh (Module): new file.
5536 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5538 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5541 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5543 (reloc_b): excise --enable-framework-dir
5545 * lily/relocate.cc (framework_relocation): use getenv
5546 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5548 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5550 * flower/include/std-string.hh:
5551 * flower/include/std-vector.hh: Finish std:: conversion; move
5552 flower extensions from std:: namespace. Update users.
5554 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5555 their expansion to vector<*>. Update users.
5557 2006-02-10 Graham Percival <gpermus@gmail.com>
5559 * Documentation/user/invoking.itely: add example to File structure.
5561 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5562 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5564 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5566 * ly/paper-defaults.ly: typo.
5568 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5569 set_parent() for parentheses. This will make it show up in bbox
5572 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5573 ly:grob-common* functions.
5575 * lily/grob-scheme.cc (LY_DEFINE):
5576 ly:grob-common-refpoint-of-array: new function
5577 ly:grob-common-refpoint: new function
5578 ly:grob-relative-coordinate: new function
5580 * lily/instrument-name-engraver.cc (process_music): use
5581 Text_interface::is_markup(). This fixes \markup on instrument names.
5583 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5586 * lily/slur.cc (print): idem.
5588 * lily/tie.cc: add line-thickness for ties.
5590 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5592 * scm/output-svg.scm: Document diversion from GNU coding standards
5593 as a workaround for a bug in Microsoft Internet Explorer.
5595 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5597 * lily/instrument-name-engraver.cc (process_music): use
5598 is_markup() iso. is_string()
5600 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5602 * lily/percent-repeat-engraver.cc (process_music): only look at
5603 main_part_ for % repeats.
5605 * lily/stem-tremolo.cc (get_beam_translation): new function.
5606 (calc_slope): new function.
5607 (height): don't use real slope.
5609 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5611 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5612 new connect-to-neighbor, control-points and staff-padding
5613 properties to make ligature brackets showing up again.
5615 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5617 * VERSION: release 2.7.33
5619 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5622 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5623 remove applyOutput example.
5624 (Objects connected to the input): document \tweak, \parenthesize
5626 * lily/relocate.cc (prefix_relocation): allow "current"
5627 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5628 changing VERSION in a lily tree less painful.
5630 * input/regression/parenthesize.ly: new file.
5632 * scm/output-lib.scm (parenthesize-element): new function.
5634 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5636 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5638 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5639 cause: accidentals are caused by note heads, not note events.
5641 2006-02-08 Graham Percival <gpermus@gmail.com>
5643 * darwin.patch: small patch from Erlend, thanks!
5645 * Documentation/user/basic-notation.itely: add stem-neutral example.
5647 * Documentation/user/putting.itely: clarifications.
5649 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5651 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5652 note, add more guidelines to what should go into NEWS.
5654 * input/sakura-sakura.ly: document how to override font.
5656 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5658 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5660 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5662 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5664 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5665 convertrules. Add explicit grouping, needed for python2.2.
5667 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5669 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5671 2006-02-07 Graham Percival <gpermus@gmail.com>
5673 * Documentation/user/global.itely: fix line-width in (text) docs.
5675 * Documentation/user/lilypond-book.itely: same.
5677 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5679 * VERSION (PACKAGE_NAME): release 2.7.32
5681 * Documentation/topdocs/NEWS.tely (Top): document new variable
5684 * flower/include/array.icc (Message): remove file.
5686 * flower/include/std-vector.hh: make sure vsize and VPOS are
5687 defined for binary_search_bounds().
5689 * flower/std-string.cc (std): add to_string(long unsigned).
5691 * configure.in (gui_b): excise std_string option.
5692 (gui_b): excise std_vector option.
5694 * flower/string.cc (Module): excise flower array & string
5696 * flower/include/std-string.hh: excise flower string.
5698 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5700 * python/convertrules.py (lilypond_version_re_str): require
5701 only numbers and dots in \version string.
5703 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5705 * lily/system-start-delimiter.cc (print): allow style = text too.
5707 * lily/system-start-delimiter-engraver.cc
5708 (acknowledge_system_start_text): new function, also add add to
5709 support of system-start-text (instrument names). This fixes
5710 instrument names on piano staves.
5712 * lily/instrument-name-engraver.cc: rewrite. Use
5713 system-start-delimiter approach. This save memory and cpu.
5715 * scm/define-grobs.scm (all-grob-descriptions): remove
5716 instrument-name from break-alignment.
5718 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5720 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5722 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5725 * configure.in (std_vector): On by default.
5727 * lily/include/font-metric.hh:
5728 * lily/include/tfm-reader.hh:
5729 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5732 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5734 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5736 * VERSION (PACKAGE_NAME): 2.7.31
5738 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5739 EPS edge at 0, but take minimum with left-overshoot. This fixes
5740 cut off system start delims.
5742 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5743 hack: add to axis group if not added yet. This fixes hara kiri'd
5746 * lily/hara-kiri-group-spanner.cc
5747 (force_hara_kiri_in_y_parent_callback): fix signatures.
5749 * lily/hairpin.cc (print): check next hairpin to see whether or
5750 not to be continuing.
5752 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5754 * Remove trailing whitespace from makefiles.
5756 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5759 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5761 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5763 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5765 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5767 * configure.in: Use it.
5769 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5771 * scm/music-functions.scm (pitch-of-note): new function.
5773 * ly/music-functions-init.ly: add \octave and \addquote
5775 * lily/parser.yy (music_function_chord_body): softcode \octave.
5776 (lilypond_header): softcode \addquote
5778 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5780 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5781 array.hh, parray.hh at all. Getting ready to flip the
5784 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5786 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5789 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5791 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5793 * flower/include/array.hh: typo.
5795 2006-02-02 Graham Percival <gpermus@gmail.com>
5797 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5799 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5801 * flower/include/pqueue.hh: Derive from std::vector.
5803 * flower/include/parray.hh: Conform to std::vector interface.
5806 2006-02-02 Graham Percival <gpermus@gmail.com>
5808 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5810 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5812 * flower/file-path.cc (is_file): remove if 0 section.
5814 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5815 selecting afii61352.
5817 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5819 * flower/include/std-vector.hh (boundary): Oops, reverse.
5821 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5822 remove superfluous `d'.
5824 * flower/include/std-vector.hh (boundary, top): Detach from class.
5825 Remove empty vector shell.
5827 * flower/include/array.hh (reverse, swap): Detach from class.
5830 * flower/include/std-vector.hh
5831 * flower/include/array.hh (concat): Globally change to insert ().
5834 * flower/include/std-vector.hh
5835 * flower/include/parray.hh
5836 * flower/include/array.hh (elem, elem_ref): Globally replace by
5839 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5841 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5843 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5844 anticipate on identifier substitutions.
5846 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5848 * flower/include/std-vector.hh (insert): Remove, replace by
5849 std::vector interface. Update callers.
5851 * flower/include/array.icc (insert): Change signature to
5852 match std::vector interface.
5854 * flower/include/array.icc (vector_sort): Bugfix.
5856 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5858 * lily/parser.yy (output_def_head_with_mode_switch): new
5859 production. Result: dashes and underscores may be used in the
5862 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5864 * python/convertrules.py (conv): oops. One slash too much.
5866 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5868 * flower/include/std-vector.hh (sort): Remove, replace by
5869 ::vector_sort. Update callers.
5871 * flower/include/std-vector.hh (slice): Remove. Update callers.
5874 * flower/test-std.cc (vector_sort): New test.
5876 2006-02-01 Graham Percival <gpermus@gmail.com>
5878 * Documentation/user/putting.itely: fixes from Erik.
5880 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5882 * flower/test-std.cc: Add simple unit test for vector migration.
5884 * stepmake/stepmake/test*: Unit test support.
5886 * flower/include/std-vector.hh (del): Remove. Use erase (),
5889 * flower/include/array.hh (begin, end): Add.
5892 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5894 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5895 std::string not String.
5897 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5900 * lily/prob.cc (Prob): copy type_ too.
5902 * lily/lily-guile.cc (mangle_cxx_identifier): new
5903 function. Class_bla::foo_bar_[px] ->
5904 ly:class-bla::foo-bar[?!]. Changes throughout
5906 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5908 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5910 * lily/beam.cc (calc_direction): take dir from visible stem in
5913 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5915 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5916 Fix -1, >=0 boundary checks for unsigned vsize.
5918 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5919 loop for unsigned vsize.
5921 * configure.in (--enable-std-vector): New option.
5922 (--enable-std-string): On by default.
5924 * flower/include/std-vector.hh: New file. Enable switch to
5925 std::vector, update client code.
5927 2006-01-30 Graham Percival <gpermus@gmail.com>
5929 * scm/document-translation.scm: clarify "this context is also
5930 known as". Thanks, Werner!
5932 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5934 * Documentation/user/invoking.itely: small fix from Don.
5936 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5938 * scm/lily.scm (define-scheme-options): rename option
5939 preview-include-book-title to book-title-preview
5940 (define-scheme-options): move force-eps-font-include (from paper
5941 block) to eps-font-include -d option.
5943 * VERSION (PATCH_LEVEL): release 2.7.30
5945 * input/bach-schenker.ly (staffPiano): new file.
5947 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5949 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5952 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5954 * ps/lilyponddefs.ps: remove start-system, stop-system,
5955 start-page fluff. This saves putting { } code on the stack, fixing
5956 stack overflows when including EPS files.
5958 2006-01-29 Graham Percival <gpermus@gmail.com>
5960 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5962 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5964 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5966 2006-01-28 Graham Percival <gpermus@gmail.com>
5968 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5970 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5972 * input/mutopia/claop.py: Update.
5974 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5976 * input/regression/completion-heads.ly (texidoc): fix.
5978 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5980 * lily/tie-formatting-problem.cc
5981 (set_ties_config_standard_directions): use abs iso fabs for ints.
5983 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5985 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5986 little less than noteheight, to prevent overlaps in chords.
5988 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5989 head, and fudge stem-attachment.
5991 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5993 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5995 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
5997 * lily/main.cc (main): Debugging aid: catch exceptions.
5999 * flower/std-string.cc (to_string): Robustification. Fixes midi
6000 output with std::string.
6002 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6004 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6006 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6008 * Fix -DSTRING_UTILS_INLINED.
6010 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6012 * VERSION (PATCH_LEVEL): release 2.7.29
6014 * lily/relocate.cc (setup_paths): mingw uses std string too.
6016 * lily/*.cc: various fixes for substr(ARG).
6018 * lily/sustain-pedal.cc (print):
6020 * flower/file-name.cc (slashify): use std strings.
6022 * flower/string-convert.cc: remove publib.h
6024 * scm/define-markup-commands.scm (verbatim-file): new markup
6025 command \verbatim-file
6027 * Documentation/topdocs/NEWS.tely: fixup URLs
6029 * input/regression/alignment-vertical-manual-setting.ly (Module):
6032 * lily/align-interface.cc (align_elements_to_extents): overwrite
6033 translations with numbers in alignment-offsets from left bound
6035 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6036 (page-translate-systems): new function: take into account Y-offset.
6038 * Documentation/topdocs/NEWS.tely (Top): document new features.
6040 * input/regression/page-layout-manual-position.ly (Module): new
6043 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6045 * flower/file-path.cc (path::parse_path): Oops.
6047 * Finish std::string interface. For now, use std:: marker
6048 throughout for easy s/r.
6050 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6052 * Documentation/user/putting.itely (Score is a single musical
6054 (Score is a single musical expression): more typos.
6056 * scm/page.scm (annotate-space-left): thinko.
6057 (annotate-page): more thinkos.
6059 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6061 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6062 for different \score blocks separately.
6063 (post-process-pages): put write-page-layout into paper block.
6065 * lily/output-def.cc (get_parser): new file.
6067 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6070 * lily/include/output-def.hh (class Output_def): add parser_ member.
6072 * input/regression/page-layout-twopass.ly (Module): new file.
6074 * scm/lily.scm: remove cpp hack.
6076 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6078 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6080 * GNUmakefile.in (c-clean): New target.
6082 * flower/include/std-string.hh: String/std::string compatibility:
6083 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6086 * flower/rational.cc:
6087 * flower/include/rational.hh:
6090 * flower/include/offset.hh:
6092 * flower/interval.cc:
6093 * flower/include/interval.hh:
6095 * flower/string-convert.cc:
6096 * flower/include/string-convert.hh: Use std::string [interface].
6099 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6101 * Documentation/index.html.in: clean up.
6103 2006-01-25 Graham Percival <gpermus@gmail.com>
6105 * Documentation/user/putting.itely: another new untested doc section.
6107 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6109 * scm/layout-page-layout.scm (write-page-breaks): write
6110 \spacingTweaks #ALIST. Handle grace timing.
6112 * scm/: more imports.
6114 * scm/page.scm (make-page): add footer/header.
6115 (annotate-space-left): revise: only take page argument.
6116 (layout->page-init): new function.
6118 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6119 version of the system/spacing/linebreak hack writing to the output
6121 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6124 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6127 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6129 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6131 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6133 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6134 handling to page.scm
6136 * lily/prob-scheme.cc (LY_DEFINE): new file.
6137 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6139 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6142 * lily/music.cc (derived_mark): derive Music from Prob.
6144 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6146 * lily/prob.cc (Module): Implement Prob (Property Object), object
6147 with shared and r/w property alists.
6149 * lily/include/prob.hh (Module): new file. Declare Prob.
6151 * flower/string.cc: remove is_empty().
6153 * flower/include/string.hh (class String): remove String:: qualifier.
6155 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6156 substitute appropriate functions.
6158 * flower/include/string.hh (class String): remove to_str0 and
6159 is_empty(). S&R everywhere.
6161 2006-01-23 Graham Percival <gpermus@gmail.com>
6163 * Documentation/user/basic-notation.itely: add hairpin
6164 after-linebreak tweak to commonprop.
6166 * Documentation/user/putting.itely: added two new sections.
6168 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6170 * flower/international.cc:
6171 * flower/include/international.hh:
6173 * flower/getopt-long.cc:
6174 * flower/include/getopt-long.hh: Use std::string [interface].
6177 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6179 * stepmake/stepmake/executable-rules.make: Add dependency on
6182 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6184 * flower/file-path.cc:
6185 * flower/include/file-path.hh: Use std::string [interface].
6188 * flower/direction.cc:
6189 * flower/axis.cc: Unused. Remove.
6191 * configure.in (--enable-std-string): New option.
6193 * flower/std-string.cc:
6194 * flower/include/std-string.hh: New file.
6196 * flower/file-name.cc[STD_STRING]:
6197 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6199 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6201 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6203 * scm/define-markup-commands.scm (with-dimensions):
6204 with-dimensions markup command.
6206 * input/test/font-table.ly: use it.
6208 * lily/open-type-font.cc (glyph_list): new function.
6210 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6212 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6214 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6216 * ly/music-functions-init.ly (parallelMusic): new music function
6217 for parallel music entry.
6219 * scm/define-music-properties.scm (all-music-properties): new
6220 'void music property
6222 * scm/music-functions.scm (ly:music-message): make public, to be
6223 used in music function definitions
6225 * scm/lily-library.scm (collect-music-for-book): discard music
6226 when the 'void property is set.
6228 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6230 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6232 * mf/GNUmakefile: idem.
6234 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6236 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6238 * Documentation/user/notation-appendices.itely (The Feta font):
6241 * input/test/font-table.ly: new file. Generate font table within lily.
6243 * Documentation/user/notation-appendices.itely (The Feta font):
6244 use new font-table.ly file.
6246 * stepmake/stepmake/install-out-targets.make
6247 (local-install-outfiles): only create directory if
6248 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6250 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6252 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6254 * VERSION (PACKAGE_NAME): release 2.7.28
6256 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6257 the right font from a Mac dfont.
6258 (write-preamble): don't forget directory, only look at files.
6260 This fixes problems with TTF files in dfonts that don't match
6261 their PostScript names.
6263 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6264 PS name from TTF font.
6266 * input/regression/tie-manual.ly: document new feature.
6268 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6270 * VERSION (MY_PATCH_LEVEL): bump to .28
6272 * Documentation/user/basic-notation.itely (Ties): add tie examples
6275 * lily/tie-formatting-problem.cc (score_ties_configuration):
6276 symmetry penalties for outer ties.
6278 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6280 * lily/tie-formatting-problem.cc (generate_configuration)
6281 (set_manual_tie_configuration): skip non-pair manual
6282 tie-configuration, so you can set individual ties as
6284 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6286 * input/regression/tie-chord.ly: use generateTiePattern to
6289 * lily/tie-formatting-problem.cc (peak_around): new function.
6290 (score_configuration): use sliding criterion for staff line collisions.
6291 (score_configuration): idem for dot collisions.
6292 (generate_configuration): use separate stem_gap for gap to stem.
6294 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6295 separate penalty factors for x and y distance.
6296 (struct Tie_details): separate penalties for tip and center line collisions.
6298 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6300 * lily/tie-formatting-problem.cc (generate_configuration): make
6301 large ties avoid stafflines in the horizontal section.
6302 (score_configuration): use softcoded penalties
6303 (score_aptitude): idem.
6305 * lily/tie-helper.cc (from_grob): softcode tie details
6307 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6309 * lily/staff-symbol-referencer.cc (on_line): rename from
6312 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6314 * ly/music-functions-init.ly: remove duplicate tag.
6316 * lily/include/*.hh: GCC 4.1 fixes.
6318 006-01-16 Erlend Aasland <erlenda@gmail.com>
6320 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6322 * scm/define-music-types.scm: fix bug in desc. string
6323 for OverrideProperty
6325 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6327 * scripts/lilypond-book.py: bugfix
6329 * scm/define-music-types.scm: fix typos.
6331 2006-01-14 Graham Percival <gpermus@gmail.com>
6333 * Documentation/user/ basic-notation.itely, global.itely,
6334 advanced-notation.itely, instrument-notation.itely: small
6335 additions (bugs and commonly tweaked properties).
6337 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6339 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6340 detection of mingw build.
6341 (MINGW_BUILD): opps.
6343 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6345 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6348 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6350 * scm/music-functions.scm (skip->rest): add skip->rest
6352 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6354 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6357 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6358 config dirs. Aids debugging.
6359 (display_config): also display config files.
6361 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6363 * VERSION: release 2.7.27
6365 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6366 for determining bar size.
6368 * lily/staff-symbol.cc (print): place lines at distance line-positions
6370 * scm/define-grob-properties.scm (all-user-grob-properties): add
6373 * lily/staff-symbol.cc (height): new function.
6375 * input/regression/staff-line-positions.ly: new file.
6377 2006-01-06 Graham Percival <gpermus@gmail.com>
6379 * input/test/add-staccato.ly: remove reference to old file.
6381 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6383 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6384 lilypond binary too.
6386 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6388 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6390 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6392 * scripts/midi2ly.py: Bugfix: Declare datadir.
6394 * make/ly-rules.make:
6395 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6396 that seems to be gone). Fixes make web.
6398 * The grand 2005-2006 replace.
6400 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6402 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6404 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6405 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6406 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6407 like -dgs-font-load.
6409 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6410 remove absolute path to lilypond binary.
6412 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6414 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6416 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6418 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6420 * mf/GNUmakefile: remove broken dvips map symlink.
6422 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6425 * configure.in: Cosmetic fixes.
6427 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6429 * Documentation/user/music-glossary.tely (Pitch names): Added
6430 Spanish pitch names and durations, thanks to Ernesto Gancedo
6432 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6434 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6435 init. Fixes verbose printing of .scm files.
6437 * stepmake/aclocal.m4: add spaces before - options.
6439 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6441 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6442 of path search in local block variable.
6444 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6446 * configure.in (NCSB_DIR): --enable-ncsb-dir
6447 (LINK_GXX_STATICALLY): denko.
6449 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6451 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6452 use locate to find c059033l.pfb.
6454 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6456 * lily/tie-formatting-problem.cc
6457 (problem::generate_base_chord_configuration): Use my_round (was
6460 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6461 do not invoke mbrtowc.
6463 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6465 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6467 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6469 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6471 * Documentation/user/invoking.itely (svg): revise.
6473 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6475 * lily/lexer.ll: use sourcefilename iso. renameinput.
6477 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6479 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6480 <PostScriptName>.ttf instead of c059XXXttf.
6482 * lily/program-option.cc (LY_DEFINE): special support for
6483 --verbose, so it works before option init too.
6485 * mf/GNUmakefile (local-install): oops.
6487 * lily/lyric-hyphen.cc (print): oops.
6489 * buildscripts/pfx2ttf.fontforge: new file.
6491 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6492 ($(outdir)/%.ttf): new rule.
6494 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6497 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6500 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6502 * VERSION: release 2.7.26
6504 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6506 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6508 * lily/font-config.cc (init_fontconfig): verbosity.
6510 * THANKS: add Muziekacademie Lede.
6512 * scripts/musicxml2ly.py (print_voice_definitions): new function
6513 (print_score_setup): new function
6514 (convert): read part definition to output staves properly.
6516 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6519 * python/musicexp.py (Output_printer.__init__): use _ in data
6521 (Output_printer.unformatted_output): new function: no formatting,
6523 (Duration.get_length): remove isinstance() checks for
6524 Output_printer everywhere.
6526 * input/regression/lyrics-bar.ly (texidoc): add
6527 Separating_line_group_engraver.
6529 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6531 * lily/relocate.cc (framework_relocation): New function,
6532 factored from set_relocation ().
6533 (prefix_relocation): Rename from set_relocation ().
6534 (setup_paths): Use it.
6536 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6538 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6539 numbers. Patch by Erlend Aasland.
6541 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6543 * lily/font-config.cc (init_fontconfig): print warning if cache
6544 file is not existant.
6546 * lily/main.cc: don't use #ifdef but #if
6548 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6550 * lily/grob-property.cc (internal_set_property): don't abort on
6551 calculation-in-progress.
6553 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6555 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6556 connect-to-neighbor property not connect-to-other
6558 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6559 (LY_DEFINE): oops. don't forget protection.
6561 * flower/parse-afm.cc (Module): strip AFM handling completely.
6563 * lily/stencil-expression.cc: idem.
6565 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6567 * lily/function-documentation.cc (ly_add_function_documentation):
6568 use static member iso. Protected_scm
6570 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6572 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6574 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6576 * lily/relocate.cc (set_env_dir): New function.
6577 (set_relocation): Use it to fix setting PANGO_PREFIX.
6579 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6581 * input/regression/stem-direction-context.ly: remove rest.
6583 * lily/melody-engraver.cc (process_music): restart for bar lines.
6584 (acknowledge_slur): restart for slurs.
6586 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6588 * Documentation/user/invoking.itely: describe how to view SVG
6589 output using Inkscape which replace embedded fonts with OTF fonts.
6591 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6593 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6595 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6597 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6600 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6602 * VERSION (PACKAGE_NAME): release 2.7.25
6604 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6606 * input/regression/stem-direction-context.ly: new file.
6608 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6610 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6613 * ly/engraver-init.ly: add Melody_engraver
6615 * lily/beam.cc (calc_direction): use default-direction
6616 iso. get_default_direction()
6618 * scm/define-grob-properties.scm (all-user-grob-properties): add
6619 default-direction property.
6621 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6623 * lily/stem.cc (calc_default_direction): remove
6624 Stem::get_default_direction, use default-direction with callback
6627 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6629 * lily/melody-engraver.cc: new file. Acknowledge stems for
6630 interpolated stem directions.
6632 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6634 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6636 * lily/slur-configuration.cc (fit_factor): more robust check for
6637 point in curve X-extent.
6639 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6640 (outside_slur_callback): check for 'outside avoidance.
6642 * lily/slur-configuration.cc (score_extra_encompass): don't use
6643 bound->column() == avoid->column() for checking extents, as this
6644 doesn't work for accidentals.
6646 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6647 DynamicText hardcoding.
6649 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6650 crash if bound stem is NULL
6652 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6655 2005-12-22 Graham Percival <gpermus@gmail.com>
6657 * scm/define-markup-commands.scm: typo. @code{\raise}
6660 * darwin.patch: now used again, includes a
6661 required patch from fink.
6663 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6665 * po/TODO: mention gtranslator along with kbabel.
6666 * po/fi.po: update translations.
6668 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6670 * lily/relocate.cc (setup_paths): Bugfix.
6672 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6674 * lily/slur-configuration.cc (score_extra_encompass): don't use
6675 "avoid" choice for avoid-slur.
6677 * stepmake/bin/install.py (dest): don't create existing dir.
6679 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6681 * stepmake/bin/install.py: Remove file before copying.
6684 * stepmake/aclocal.m4: Do not substitute INSTALL.
6686 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6688 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6689 depend on link-tree.
6691 * lily/relocate.cc (setup_paths): only check path for non-absolute
6692 dir without directory part.
6694 * flower/file-name.cc (is_absolute): new method.
6695 (is_absolute): check root_ too.
6697 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6699 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6700 relocation code. Oops, don't comment out too much.
6702 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6705 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6708 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6710 * .cvsignore: Add install-sh.
6712 * autogen.sh (srcdir): Typo.
6714 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6716 * autogen.sh (srcdir): urg. Touch install-sh.
6718 * stepmake/bin/install-sh (Module): remove.
6720 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6722 * lily/include/relocate.hh: new file.
6724 * lily/relocate.cc: new file. Contain relocation logic.
6726 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6727 (main): read LILYPOND_VERBOSE as the first thing.
6729 * stepmake/aclocal.m4: remove INSTALL variable.
6731 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6732 separate target for making font symlinks.
6733 (documentation-dir): use $(if $(findstring )) for switching off
6736 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6737 something if DOCUMENTATION is no.
6739 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6741 * VERSION: release 2.7.24
6743 * lily/script-column-engraver.cc (stop_translation_timestep):
6744 delay adding to script-column.
6746 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6748 * python/convertrules.py (conv): rule for number-visibility
6750 * lily/slur-configuration.cc (score_extra_encompass): different
6751 distance measure for avoid and inside avoidance.
6752 (score_extra_encompass): use 1/(distance+eps) as penalty.
6754 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6755 encompass objects for generating slur curves.
6757 * lily/slur.cc: use details iso. slur-details property.
6759 * input/regression/slur-tuplet.ly: new file.
6761 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6763 * flower/include/offset.hh (class Offset): new operator /=
6765 * lily/tuplet-number.cc (print): new file, new interface.
6767 * scm/define-grob-properties.scm (all-user-grob-properties):
6768 remove number-visibility property.
6770 * lily/tuplet-bracket.cc (calc_control_points): new function
6771 (calc_connect_to_neighbors): new function.
6772 (print): remove text handling for tuplet numberdef.
6774 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6777 * lily/lily-guile.cc (robust_scm2booldrul): new function
6779 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6781 * lily/tuplet-bracket.cc (calc_position_and_height): use
6782 staff-padding to control whether tuplet brackets are over staves.
6784 * lily/grob.cc (suicide): clear dim_caches_.
6786 * lily/dimension-cache.cc (clear): new function.
6788 * lily/grob.cc (extent): swap order of min-extent and extent
6789 calculations. This fixes hara kiri staves.
6791 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6793 * lily/main.cc: Nitpick: relocation is not based on path, but on
6794 directory (location).
6796 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6798 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6800 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6802 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6804 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6806 * stepmake/stepmake/generic-vars.make (Module): idem.
6808 * stepmake/stepmake/executable-targets.make (default): use it.
6810 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6812 * make/GNUmakefile: don't install make rules.
6814 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6816 (prepend_env_path): more verbosity.
6818 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6820 * GNUmakefile.in: add dir argument for find command.
6822 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6823 fixes weird line numbers for point & click.
6825 * lily/source-file.cc (get_counts): init line/column/char counts.
6827 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6829 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6831 2005-12-16 Graham Percival <gpermus@gmail.com>
6833 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6834 minor fixes from Fredric. Thanks!
6836 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6838 * ly/music-functions-init.ly: add \bar and \clef music function
6840 * lily/lily-lexer.cc: idem.
6842 * lily/parser.yy (FIXME): remove BAR and CLEF.
6844 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6846 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6848 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6849 function arguments too
6851 * lily/main.cc (set_relocation): new function.
6853 * scripts/musicxml2ly.py (convert): add \version
6855 * lily/tie.cc: remove get_default_attachments()
6857 * VERSION (PACKAGE_NAME): release 2.7.23
6859 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6860 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6862 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6864 * lily/tie-formatting-problem.cc (score_ties): new function
6865 (get_variations): new function. Try flipping dirs for collisions.
6866 (generate_optimal_chord_configuration): new function. 1-opt search
6867 for better configuration.
6869 * lily/tie-configuration.cc: new file.
6871 * lily/tie.cc: junk Tie::get_configuration()
6873 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6874 (score_ties_configuration): new function.
6875 (generate_ties_configuration): new function.
6876 (generate_base_chord_configuration): new function.
6877 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6878 (set_manual_tie_configuration): Move body from tie-column-format.cc
6880 * input/regression/tie-dot.ly: new file.
6882 * lily/tie-formatting-problem.cc (score_configuration): score
6885 * lily/tie-helper.cc (get_transformed_bezier): new function
6887 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6889 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6890 -undefined suppress iso. -framework Python
6892 * scm/define-grobs.scm (all-grob-descriptions): set
6893 springs-and-rods (thanks Joe Neeman!)
6895 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6897 * input/no-notation/display-lily-tests.ly (test):
6898 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6899 changed from \tag #'(a b) to \tag #'a \tag #'b
6901 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6903 * Documentation/topdocs/NEWS.tely: strip out-www.
6905 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6907 * config.make.in (AR): add AR and RANLIB
6909 * flower/libc-extension.cc: include cassert
6911 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6914 2005-12-11 Graham Percival <gpermus@gmail.com>
6916 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6918 * stepmake/stepmake/python-modules-vars.make: define
6919 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6921 * THANKS: added Johannes Schindelin.
6923 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6925 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6927 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6928 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6930 * lily/parser.yy: reorganize file layout.
6932 * ly/music-functions-init.ly: add tweak music function.
6934 * lily/grob-info.cc (ultimate_music_cause): new function:
6935 recursively lookup causes.
6937 * lily/parser.yy (chord_body_element): allow music functions for
6938 post-events, allow music functions for chord elements.
6940 * lily/font-config-scheme.cc (display_fontset): add cast.
6942 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6943 #'(a b) -> \tag #'a \tag #'b rule.
6945 * python/musicexp.py (Output_printer.dump_version): new function
6947 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6949 * lily/parser.yy (FIXME): remove \tag
6950 (FIXME): remove tag_music() function.
6952 * lily/lily-lexer.cc: remove \tag
6954 * ly/music-functions-init.ly: define music-function "tag"
6956 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6958 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6960 * VERSION (PATCH_LEVEL): release 2.7.22
6962 * input/regression/lyric-hyphen-retain.ly: renew.
6964 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6967 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6968 iso. minimum-length property for rods.
6970 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6971 LyricSpace item to keep lyrics spaced apart.
6973 * ly/engraver-init.ly: remove Separating_line_group_engraver
6975 * Documentation/user/music-glossary.tely: do setfilename before
6978 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6980 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6981 See xref documentation, for example.
6983 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6985 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6986 pending_skip iso. ly_voice[-1]
6987 (main): add if __main__ for debugging.
6989 * python/musicxml.py (Accidental.__init__): new class.
6991 * scripts/musicxml2ly.py (progress): new function
6992 (musicxml_key_to_lily): don't barf on modeless keys.
6993 (create_skip_music): new function.
6994 (musicxml_spanner_to_lily_event): new function. Handle beams too.
6995 (musicxml_note_to_lily_main_event): new function.
6997 * python/musicexp.py (Music.__init__): add comment field.
6998 (NestedMusic.append): new routine.
6999 (SequentialMusic.print_ly): print comment.
7000 (ArpeggioEvent.ly_expression): new class
7001 (BeamEvent.ly_expression): new class
7002 (NoteEvent.__init__): support for cautionary/forced accs.
7004 * lily/lookup.cc (slur): normal order for array loop.
7006 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7009 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7012 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7014 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7016 * scripts/lilypond-book.py: Introduce option
7017 --preserve-line-breaks, for usage with srcltx
7019 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7021 * scm/output-lib.scm (print-circled-text-callback): draw circle
7022 around text using make-circle-markup.
7024 * Documentation/user/*: strip out-www from file names.
7026 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7028 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7029 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7031 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7033 * Documentation/user/GNUmakefile: idem.
7035 * Documentation/user/macros.itexi: strip out-www
7037 * python/rational.py: python 2.3 compat.
7039 * VERSION (PATCH_LEVEL): release 2.7.21
7041 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7042 option formatting, lilypond style.
7044 * python/musicexp.py: grab from Ikebana: a library for composing
7045 ly music expressions.
7046 (Output_printer): class for advanced .ly printing.
7049 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7050 convert to pythonesque structure.
7052 * python/rational.py: PD rational number class.
7054 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7056 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7058 * lily/part-combine-iterator.cc: Minor bugfix
7060 * THANKS: Update bughunters
7062 2005-12-02 Werner Lemberg <wl@gnu.org>
7064 * mf/README: Document process for proper mf2pt1 conversion.
7066 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7069 * mf/feta-harmonica.mf: Removed. Unused.
7071 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7073 * scripts/lilypond-book.py (do_file): fix thinkos.
7075 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7077 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7078 ($(outdir)/parser.cc):
7079 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7081 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7083 * ly/titling-init.ly (tagline): it should be a space between
7084 "Music engraving by LilyPond" and the version number.
7086 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7088 * VERSION (PACKAGE_NAME): release 2.7.20
7090 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7092 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7094 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7096 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7098 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7100 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7102 * kpath-guile/: remove directory
7104 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7105 file. Encapsulate kpathsea using commandline tools.
7107 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7110 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7112 * Documentation/user/advanced-notation.itely (Setting automatic
7113 beam behavior): Correct a few typos. Thanks to David Bobroff.
7115 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7116 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7118 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7120 * scripts/*.py: gmane address for bugs.
7122 2005-11-28 Pal Benko <benkop@freestart.hu>
7124 * make/ly-rules.make: add -f switch to mv
7126 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7128 * lily/bar-line.cc: interpret it
7130 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7132 * configure.in (--disable-documentation): New switch.
7134 * GNUmakefile.in: Use it.
7136 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7138 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7140 * scripts/lilypond-book.py (do_file): search chunks for
7143 * GNUmakefile.in: add copy step in between so we can lose the
7144 out-www directories.
7146 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7148 * lily/pango-font.cc (pango_item_string_stencil): put
7149 geometry.width into glyph-string too.
7151 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7153 * scm/define-music-display-methods.scm (RevertProperty):
7154 (OverrideProperty): Use grob-property-path property, a list of
7155 symbols, instead of grob-property, which used to be a single
7157 (BassFigureEvent): a figure can be a plain number, not necessarily a
7160 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7162 * VERSION: release 2.7.19
7164 * lily/figured-bass-engraver.cc (process_music): check
7165 figuredBassCenterContinuations first.
7167 * scm/translation-functions.scm (format-bass-figure): make double
7170 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7173 * lily/system-start-delimiter-engraver.cc: move from
7174 Nested_system_start_delimiter_engraver, rename
7175 Nested_system_start_delimiter_engraver ->
7176 System_start_delimiter_engraver.
7178 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7179 bracket type from hierarchy.
7181 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7183 * lily/rest.cc (y_offset_callback): read staff-position.
7185 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7186 mark after-line-breaking-callback as internal.
7188 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7190 2005-11-25 Werner Lemberg <wl@gnu.org>
7192 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7194 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7196 * stepmake/bin/add-html-footer.py (do_file): add google
7198 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7199 staff if first_start_ is true.
7201 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7203 * scripts/midi2ly.py (split_track): add __repr__ members.
7204 (track_first_item): only return Item if not None. This fixes a
7205 problem when dumping a track that starts with an empty channel.
7207 * python/midi.c: doc module.
7209 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7211 * Documentation/user/global.itely (Creating MIDI files): Fix
7212 compilation problem.
7214 2005-11-22 Graham Percival <gpermus@gmail.com>
7216 * Documentation/user/basic-notation.itely: clarify dynamic
7219 * Documentation/user/advanced-notation.itely: add unicode
7220 escape control example, whatever that is. :)
7222 * Documentation/user/global.itely: added "removing dynamics
7225 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7227 * VERSION (PATCH_LEVEL): release 2.7.18
7229 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7230 System_start_delimiter_engraver by
7231 Nested_system_start_delimiter_engraver.
7233 * lily/nested-system-start-delimiter-engraver.cc (struct
7234 Bracket_nesting_node): new class.
7235 (struct Bracket_nesting_group): new class
7236 (struct Bracket_nesting_staff): new class.
7237 (process_music): create hierarchy of grobs. This allows separate
7238 tuning of different SSDs.
7240 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7241 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7243 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7245 * lily/side-position-interface.cc (aligned_side): multiply
7248 * lily/script-engraver.cc (make_script_from_event): allow setting
7251 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7253 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7255 * scm/define-grobs.scm (all-grob-descriptions): new grob
7256 NestedSystemStartDelimiter.
7258 * input/regression/system-start-heavy-bar.ly: new file.
7260 * lily/nested-system-start-delimiter-engraver.cc: new file.
7262 * lily/nested-system-start-delimiter.cc: new file.
7264 * input/regression/system-start-nesting.ly: new file.
7266 * scm/define-grobs.scm (all-grob-descriptions): use X side
7267 positioning for positioning braces for nested contexts.
7269 * lily/system-start-delimiter.cc (print): don't divide extent by
7271 (print): use style iso. glyph.
7272 (staff_bracket): translate glyph inside routine already.
7274 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7276 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7279 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7281 * scm/define-context-properties.scm
7282 (all-user-translation-properties): rename figuredBassFormatter
7283 from newFiguredBassFormatter.
7285 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7287 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7289 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7291 * lily/beam.cc (calc_beaming): new function.
7292 (calc_shorten): new function.
7294 * THANKS: add Edward Neeman.
7296 * input/regression/accidental-clef-change.ly: new file.
7298 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7300 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7302 * lily/clef-engraver.cc (inspect_clef_properties): reset
7303 localKeySignature for clef changes.
7305 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7307 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7308 add dummy definition that works in Linux and add information in
7309 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7311 * Documentation/user/changing-defaults.itely (Modifying context
7312 plug-ins): Add index for \with.
7314 * Documentation/user/music-glossary.tely (dal segno): Updated
7315 example to version >=2.6.
7317 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7319 * Documentation/user/instrument-notation.itely (Printing chord
7320 names): Reorder \chordmode and \repeat in one example.
7322 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7324 * VERSION: release 2.7.17
7326 * Documentation/topdocs/NEWS.tely (Top): add note about
7329 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7330 new function. Search region of 3 positions for best tie.
7331 (score_configuration): new function.
7332 (score_aptitude): new function.
7333 (generate_configuration): new function.
7334 (get_configuration): new function.
7335 (Tie_formatting_problem): new function
7337 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7339 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7341 * THANKS: add Eduardo Vieira & Ralph Little
7343 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7346 * lily/include/tie-formatting-problem.hh (class
7347 Tie_formatting_problem): add Tie_details to
7348 Tie_formatting_problem. Update calling conventions.
7350 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7353 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7355 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7357 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7358 scm/define-context-properties.scm: Maintenance bugfix: make
7359 ligature brackets work again by removing obsolete ligature
7360 primitive callback push/pop.
7362 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7363 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7366 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7368 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7369 used and do not call it a path.
7370 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7372 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7374 * lily/include/tie-formatting-problem.hh (class
7375 Tie_formatting_problem): new file.
7377 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7379 * Documentation/misc/ChangeLog-2.3: new file.
7381 * lily/audio-staff.cc (output): degarianize.
7383 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7385 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7386 Unset PYTHONOPTIMIZE. Fixes install if set.
7388 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7390 * python/convertrules.py (conv): add warning about drums.
7392 * make/stepmake.make: include toplevel-version.make after config.make.
7394 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7395 also allow python2.4
7397 * config.make.in (configure-srcdir): remove GXX GCC vars.
7399 * stepmake/aclocal.m4: don't do non-srcdir build with
7400 symlinks. Use inclusion, so the src directory name can be changed.
7402 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7404 * make/mutopia-vars.make:
7405 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7408 2005-11-13 Werner Lemberg <wl@gnu.org>
7410 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7411 but the affected path. This ensures that the (overlapping) outlines
7412 have the same direction, which is a necessary prerequisite for
7413 FontForge's algorithm to remove overlaps.
7416 * mf/feta-haak.mf: Formatting.
7417 (draw_bracket): Slightly modify outline to avoid an unnecessary
7419 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7420 them from the affected paths.
7422 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7424 * mf/README: remove xpm / accordion notes.
7426 * lily/tie-column-format.cc (set_chord_outline): add dots into
7427 skyline extents. This fixes tie formatting if the left head has dots.
7429 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7430 space inside the staff.
7431 (get_configuration): shift another position if necessary in case
7434 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7436 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7437 buildscript-dir iso. $(depth)/buildscripts.
7439 * tex/GNUmakefile (local-uninstall): remove
7440 music-drawing-routines.ps juggling.
7442 * stepmake/stepmake/install-targets.make (local-install-files):
7443 prepend src-dir to install targets.
7445 * lily/system-start-delimiter-engraver.cc
7446 (acknowledge_system_start_delimiter): use
7447 add_offset_callback(). This fixes translation of nested
7450 * lily/grob-closure.cc (add_offset_callback): only encaps in
7451 simple_closure if it's a procedure.
7453 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7456 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7457 remove-empty where pertinent.
7459 2005-11-12 Graham Percival <gpermus@gmail.com>
7461 * Documentation/user/instrument-notation.itely: added
7462 Cameron Horsburgh's multiple stanzas docs. Thanks!
7464 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7467 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7468 make picture in builddir, not srcdir.
7470 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7472 * VERSION: release 2.7.16
7474 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7477 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7479 * Documentation/user/examples.itely (Piano templates): Minor
7480 modification to the Piano centered lyrics example.
7482 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7484 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7487 * Documentation/user/point-and-click.itely: simplify p&c
7488 instruction: don't configure firefox. Put lilypond-invoke-editor
7489 in front of the browser.
7491 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7492 (run-browser): new function.
7494 * lily/parser.yy (Lily_lexer): recognize Book
7496 * lily/book.cc (clone): new function
7498 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7500 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7502 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7503 Maintenance bugfix: reduce number of font related warnings by
7504 updating naming conventions for glyph-name.
7506 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7508 * scm/define-grobs.scm (all-grob-descriptions): add
7509 rhythmic-grob-interface to TabNoteHead.
7511 * scm/layout-beam.scm (check-quant-callbacks): remove
7514 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7516 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7517 alignment of centered divisiones.
7519 * scm/scripts.scm (articulations): Maintenance bugfix:
7520 follow-into-staff -> quantize-position.
7522 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7523 plica head in porrectus deminutus.
7525 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7527 * make/lilypond.fedora.spec.in (Group): add %clean section.
7529 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7530 less then 1/5th of total length.
7531 (print): use gap too. Fixes tupletUp-single-bracket.ly
7533 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7534 events into EventChord. This fixes textspanners on mm rests. Fixes
7537 * lily/side-position-interface.cc (get_axis): read side-axis
7538 (set_axis): set side-axis.
7540 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7541 properties everywhere.
7543 * lily/spacing-spanner.cc (breakable_column_spacing): add
7544 average-spacing-wishes. Take maximum if not set.
7545 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7547 * scm/define-grobs.scm (all-grob-descriptions): add
7548 average-spacing-wishes.
7550 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7551 offset callbacks. This fixes alignment for Fingering objects.
7553 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7554 space for key - timesig combination.
7556 * input/regression/script-stem-tremolo.ly (Module): new file.
7558 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7561 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7562 Fixes: c-tremolo-script.ly.
7564 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7566 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7568 * scm/define-grobs.scm (all-grob-descriptions): remove
7569 self-X-offset. Fixes alignment of octavate-8.
7571 * scripts/lilypond-book.py (datadir): look in
7572 LILYPONDPREFIX/share/lilypond/current/
7574 * GNUmakefile.in: symlink current to <VERSION>.
7576 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7578 * lily/main.cc: eps listed as a backend.
7580 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7582 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7584 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7586 * lily/include/score.hh (class Score): remove texts_ member.
7588 * lily/beam.cc (set_stem_lengths): force direction callback.
7589 (print): read quantized-positions, so we can force
7590 Beam::set_stem_lengths to occur.
7591 (rest_collision_callback): use common X parent.
7593 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7595 * flower/file-path.cc (find): Bugfix: Return name of file found.
7597 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7598 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7599 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7601 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7603 * flower/offset.cc: idem.
7605 * mf/*.mf: update email address.
7607 * lily/font-config-scheme.cc: new file.
7609 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7611 * lily/*: cs.uu.nl -> xs4all.nl
7613 * VERSION (PATCH_LEVEL): release 2.7.15
7615 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7618 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7620 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7622 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7624 * lily/staff-performer.cc (process_music): add audio
7625 elements. This makes MIDI instrument changes work once again.
7627 * lily/main.cc (LY_DEFINE): add gmane address.
7629 * lily/beam.cc: remove calc_positions()
7631 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7632 original_ in private scope.
7633 (class Grob): drop pscore_ pointer, change to output_def pointer.
7634 (class Grob): cleanup class definition.
7636 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7638 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7640 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7641 absolute. Better diagnostics.
7643 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7644 This makes lilypond run from the build directory using argv0
7645 relocation (without any --prefix or LILYPONDPREFIX setting).
7647 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7649 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7651 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7652 with simple-closure.
7654 * lily/self-aligment-interface.cc (set_align_self): new function
7655 (set_center_parent): new function.
7657 * lily/side-position-interface.cc (set_axis): new function.
7659 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7662 * scm/define-grob-properties.scm (all-user-grob-properties):
7663 remove [XY]-offset-callbacks add [YX]-offset
7665 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7667 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7668 entry for time signatures after breathing signs. Bug report by
7671 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7673 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7674 not absolute, make it absolute using PATH.
7676 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7678 * python/midi.c (initmidi): Fix type for mingw.
7680 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7682 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7684 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7687 * stepmake/aclocal.m4: Support python cross compiling.
7689 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7692 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7694 * scm/output-lib.scm (chain-grob-member-functions): replace
7697 * lily/chained-callback.cc (Module): remove file.
7699 * lily/rest-collision.cc (force_shift_callback_rest): change to
7702 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7704 * lily/grob.cc (y_parent_positioning): remove axis argument from
7705 parent_positioning callbacks.
7706 (Grob): junk init code
7707 (get_offset): use generic property callbacks for
7708 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7709 (axis_parent_positioning): new function
7710 (axis_offset_symbol): new function
7711 (chain_offset_callback): new function
7712 (add_offset_callback): new function
7714 * lily/beam.cc (rest_collision_callback): change signature; this
7715 is now a chained callback.
7717 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7718 callback administration.
7720 * lily/simple-closure.cc: new file. Smob type that allows "grob
7723 (ly:make-simple-closure FUNC A B)
7725 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7728 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7731 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7733 * lily/rest.cc (polyphonic_offset_callback): remove.
7735 * lily/script-engraver.cc (try_music): remove bool* argument.
7737 * scm/script.scm (default-script-alist): set quantize-position
7740 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7742 * lily/side-position-interface.cc (aligned_side): move staff
7743 position quantization from
7744 Side_position_interface::quantised_position().
7745 (quantised_position): remove
7747 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7749 * input/regression/beam-quant-standard.ly: reindent, set
7750 debug-beam-quanting to #t.
7752 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7753 10000 if this is a "hard" concave beam.
7755 * lily/beam.cc (calc_least_squares_positions): change from
7756 calc_least_squares_dy
7757 (set_stem_lengths): this is now a chained callback.
7759 * lily/context-property.cc (execute_general_pushpop_property):
7760 bugfix override with procedure should have effect.
7762 * scm/define-grob-properties.scm (all-internal-grob-properties):
7763 remove position-callbacks.
7765 * scm/define-grobs.scm (all-grob-descriptions): use
7766 ly:make-callback-chain for positions property.
7768 * scm/layout-beam.scm (check-quant-callbacks): return list of
7771 * scm/lily.scm (type-p-name-alist): add callback-chain
7773 * lily/lily-guile.cc (type_check_assignment): type check failure
7774 is warning not message.
7776 * lily/grob-property.cc (try_callback): walk callback chain if
7779 * lily/chained-callback.cc: new file. new smob type.
7781 * lily/lily-guile.cc (procedure_arity): new function.
7783 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7785 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7787 2005-10-25 John Mandereau <john.mandereau@free.fr>
7789 * Documentation/user/instrument-notation.itely (Figured bass):
7790 describe new features
7792 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7794 * lily/beam.cc (calc_least_squares_dy): use property callback.
7796 * lily/beam-concave.cc (calc_concaveness): use property callback.
7798 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7800 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7804 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7806 * scm/layout-page-layout.scm (page-headfoot): annotate
7809 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7811 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7812 doesn't take y-space.
7814 * scm/paper.scm (paper-alist): fix A7 dimensions.
7816 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7818 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7819 src-wildcard, remove $(wildcard).
7821 * po/GNUmakefile (PO_FILES):
7822 * ps/GNUmakefile (PS_FILES):
7823 * tex/GNUmakefile (TEX_FILES):
7824 * cygwin/GNUmakefile (POSTINSTALLS):
7825 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7826 some wildcard calls.
7828 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7830 * THANKS: add Thomas Bushnell.
7832 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7834 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7835 (lilypond-main): Redirect to gui-main if 'gui is set.
7837 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7838 for alternative installations kludging s/share/lib/g
7841 * SConstruct (libdir_package_version): Define.
7843 * python/SConscript:
7844 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7847 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7849 * lily/main.cc: clarify --safe.
7851 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7853 * VERSION: release 2.7.14
7855 * Documentation/user/*.itely: remove minimumVerticalExtent.
7857 * scm/define-grobs.scm (all-grob-descriptions): remove
7858 RemoveEmptyVerticalGroup
7860 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7862 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7865 * python/convertrules.py (conv): add rules.
7867 * lily/grob.cc: remove is_empty()
7869 * lily/grob-property.cc: remove add_to_list_property().
7871 * scripts/convert-ly.py (datadir): add prefix switching hack to
7874 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7875 space-function tweak.
7877 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7879 * scm/define-grob-properties.scm (all-user-grob-properties):
7880 remove callback property.
7882 * lily/include/grob.hh (class Grob): remove property_callbacks_
7883 member. Properties of procedure type are assumed to be callbacks.
7885 * lily/ligature-engraver.cc (override_stencil_callback):
7886 rewrite. Use noteHeadLigaturePrimitive as source.
7888 * scm/define-grob-properties.scm (all-internal-grob-properties):
7889 remove ligature-primitive-callback
7891 * lily/include/dimension-cache.hh (class Dimension_cache): make
7892 class, with Grob as friend.
7894 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7895 has_extent_callback()
7897 * scm/translation-functions.scm (format-new-bass-figure): read
7898 figuredBassPlusDirection
7900 * scm/define-context-properties.scm
7901 (all-user-translation-properties): add figuredBassPlusDirection.
7903 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7905 * lily/align-interface.cc (set_ordered): new function.
7907 * lily/grob.cc (flush_extent_cache): rewrite.
7909 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7910 Interval pointer directly.
7912 * lily/main.cc (setup_paths): insert extra / .
7913 (setup_paths): junk cff entry.
7915 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7918 * lily/axis-group-engraver.cc (finalize): remove
7919 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7921 * lily/grob.cc (Grob): don't set extent from ctor.
7922 (extent): use property callbacks.
7924 * lily/axis-group-interface.cc: remove set_axes() function.
7926 * lily/grob-property.cc (del_property): new function.
7928 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7930 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7932 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7934 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7936 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7938 * mf/SConscript: Updates.
7940 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7942 * stepmake/stepmake/*:
7946 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7947 from any directory in build-dir. Cleanups.
7949 * make/srcdir.make.in: Remove.
7951 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7953 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7956 * lily/SConscript: Remove ttftools.
7958 * SConstruct: Resurrect.
7960 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7962 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7965 * lily/paper-book.cc (add_score_title): put Paper_score title into
7968 * scm/translation-functions.scm (format-new-bass-figure): also
7969 allow plus in combination with _
7971 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7973 * VERSION: 2.7.13 released.
7975 * lily/note-collision.cc (check_meshing_chords): don't wipe
7976 stencil, merely set transparent.
7978 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7979 (Top): document #'callbacks.
7980 (Top): document nested \override.
7982 * input/regression/figured-bass.ly: update for slash and pluses.
7984 * input/regression/figured-bass-continuation-forbid.ly (Module):
7987 * scm/translation-functions.scm (format-new-bass-figure): use
7988 slashed-digit if diminished is set.
7989 (format-new-bass-figure): add + if 'augmented is set.
7991 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7993 * input/test/piano-staff-distance.ly: remove file.
7995 * Documentation/user/advanced-notation.itely (Formatting cue
7996 notes): use length-fraction for making stems/beams smaller.
7998 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8001 * lily/new-figured-bass-engraver.cc: new property
8002 centerFiguredBassContinuations
8004 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8007 * lily/context-property.cc (execute_general_pushpop_property):
8010 * input/regression/override-nest.ly: new file.
8012 * python/convertrules.py (FatalConversionError.subber): conversion
8013 rule for #'callbacks
8015 * input/regression/override-nest.ly: new function.
8017 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8020 * lily/context-property.cc (lookup_nested_property): new function.
8021 (evict_from_alist): new function.
8022 (general_pushpop_property): new function.
8023 (execute_general_pushpop_property): rewrite. Support nested
8026 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8028 * lily/beam.cc: use length-fraction too.
8030 * scm/define-grob-properties.scm (all-user-grob-properties):
8031 remove property flag-width-function
8032 (all-user-grob-properties): remove space-function.
8034 * scm/layout-beam.scm: remove flag-width-function.
8036 * lily/beam.cc: remove flag-width-function
8038 * scm/layout-beam.scm: remove beam dir functions.
8040 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8042 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8043 for easier grace tweaks.
8045 * lily/beam.cc: remove dir-function.
8047 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8049 * lily/grob.cc: remove spacing-procedure.
8051 * lily/note-head.cc (calc_stem_attachment): new function.
8052 (internal_print): use callback to get glyph-name.
8054 * lily/grob-property.cc (get_interfaces): new function.
8056 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8058 * lily/stem.cc (calc_stem_end_position): new function.
8059 (calc_length): new function.
8060 document details for stem.
8061 remove Stem::get_direction()
8063 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8065 * lily/grob-property.cc (set_callback): new function.
8067 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8069 * lily/item-scheme.cc: new file.
8071 * lily/bar-line.cc (before_line_breaking): remove function.
8072 remove bar-size-procedure, break-glyph-function
8074 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8076 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8078 * lily/system-start-delimiter.cc (print): suicide from
8079 here. Remove after_line_breaking_callback.
8081 * lily/script-interface.cc (calc_direction): use callback for direction.
8083 * lily/side-position-interface.cc (aligned_side): don't use
8084 Side_position_interface::get_direction directly. Use callback.
8086 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8088 (get_print_stencil): rename from get_stencil: create stencil with
8089 transparency, color and cause.
8091 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8093 * python/convertrules.py (conv): insert temporary warning rule.
8095 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8097 * lily/grob-property.cc (try_callback): remove marker if applicable.
8099 * lily/grob.cc: elucidate doc about after/before-line-breaking
8101 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8103 * lily/stem.cc (height): idem.
8105 * lily/stem-tremolo.cc: idem.
8107 * lily/slur.cc (height): don't use get_uncached_stencil()
8109 * lily/rest.cc (y_offset_callback): use offset callback
8110 iso. after-line-breaking callback.
8112 * lily/grob.cc: change after/before-line-breaking-callback to
8113 after/before-line-breaking dummy properties.
8115 * lily/include/grob.hh: remove Grob_status.
8117 * scm/define-context-properties.scm
8118 (all-user-translation-properties): remove verticalAlignmentChildCallback
8120 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8121 (calc_direction): use callback
8122 (calc_positions): use callback.
8124 * lily/tie.cc (calc_direction): use callback. Only call parent
8125 positioning for more than one tie.
8127 * lily/tie-column.cc (calc_positioning_done): use callback
8129 * lily/slur-scoring.cc (calc_control_points): use callback
8131 * lily/slur.cc (calc_direction): use callback.
8133 * lily/note-collision.cc (force_shift_callback): remove.
8135 * lily/dot-column.cc (force_shift_callback): remove. Use
8136 other_axis_parent_positioning.
8138 * lily/grob.cc (other_axis_parent_positioning): new function.
8139 (same_axis_parent_positioning): new function
8141 * lily/align-interface.cc (alignment_callback): remove function.
8143 * lily/note-collision.cc (calc_positioning_done): use callback.
8145 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8146 (calc_direction): idem.
8147 remove print function.
8149 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8151 * lily/dot-column.cc (calc_positioning_done): use callback.
8153 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8155 * lily/beam.cc (calc_direction): use pseudo-property for beam
8157 (calc_positions): use callback
8159 * lily/align-interface.cc (calc_positioning_done): use
8160 callback. Fold fixed distance and normal alignment in one function.
8162 * lily/stem.cc (calc_stem_end_position): use callback.
8163 (calc_positioning_done): idem.
8164 (calc_direction): idem.
8165 (calc_stem_end_position): idem
8166 (calc_stem_info): idem.
8168 * lily/grob-property.cc (get_property_data): new function:
8169 (try_callback): new function.
8171 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8174 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8176 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8178 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8182 * lily/include/*.hh (Module): compile fixes.
8184 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8186 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8187 as an argument for char-syntax: use (char-syntax (or nil 0))
8188 instead of (char-syntax nil), thanks to Milan Zamazal.
8190 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8192 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8195 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8198 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8200 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8201 add class_name() method.
8203 * lily/music-scheme.cc: remove ly:music-name.
8205 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8207 * cygwin/postinstall-lilypond.sh: Remove cruft.
8209 * cygwin/postremove-lilypond.sh: Remove.
8211 * cygwin/GNUmakefile (default): Remove postremove rules.
8213 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8215 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8218 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8221 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8222 consider break index for broken spanner.
8224 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8225 characters from string before splitting.
8227 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8229 * scm/framework-ps.scm (output-preview-framework): use
8230 is-book-title to determine whether to chop off the booktitle.
8232 * lily/paper-book.cc (systems): init from book-title-properties
8233 (add_score_title): init score-title-properties.
8235 * ly/paper-defaults.ly: add {score,book}-title-properties.
8237 * scm/document-backend.scm (lookup-interface): error message if
8238 using unknown interface.
8240 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8243 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8245 (make_bracket): new function.
8247 * scm/lily.scm (define-scheme-options): add paper-size option.
8249 * ly/declarations-init.ly (laissezVibrer): get paper size from
8252 * scm/translation-functions.scm: use \fontsize for changing the
8255 * scm/define-grobs.scm (all-grob-descriptions): set
8256 between-length-limit to 1.0
8258 * lily/tie-helper.cc: add between_length_limit_ detail property.
8260 * mf/feta-bolletjes.mf: typos.
8262 * lily/note-head.cc (internal_print): don't shadow idx
8263 parameter. This fixes wrong attachment for do shape heads.
8265 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8267 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8269 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8271 * scm/layout-slur.scm: rename from slur.scm
8273 * scm/layout-page-layout.scm: rename from page-layout.scm
8275 * scm/layout-beam.scm: rename from beam.scm
8277 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8278 bass-figure-interface
8280 * lily/new-figured-bass-engraver.cc (process_music): add
8281 implicitBassFigures property.
8283 * scm/define-markup-commands.scm (pad-x): new markup.
8285 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8286 minimumVerticalExtent on FiguredBass context.
8288 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8289 case the continuation crosses a line break.
8291 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8293 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8294 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8295 absolute file name bug.
8297 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8299 * VERSION (PACKAGE_NAME): release 2.7.12
8301 * input/regression/figured-bass-continuation-center.ly: new file.
8303 * input/regression/beam-outside-beamlets.ly: new file.
8305 * lily/beam.cc (set_beaming): don't clip edges.
8306 (connect_beams): don't clip edges.
8308 * lily/beaming-info.cc (clip_edges): new function.
8310 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8312 * Documentation/user/instrument-notation.itely (Figured bass):
8313 demonstrate extenders, update seealso links.
8315 * scm/titling.scm (marked-up-headfoot): change tagline
8316 handling. tagline = ##f will blank the tagline as well.
8318 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8320 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8322 * lily/new-figured-bass-engraver.cc (struct
8323 New_figured_bass_engraver): add new_music_found_ member.
8325 * lily/lilypond-version.cc (Lilypond_version): deal with
8326 incorrectly formatted version strings.
8328 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8329 New_figured_bass_engraver by default.
8331 * lily/ttf.cc (print_trailer): only define glyph names when
8332 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8334 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8336 * lily/horizontal-bracket.cc (make_bracket): new function.
8338 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8339 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8340 BassFigureLine, BassFigureAlignment
8342 * lily/new-figured-bass-engraver.cc (process_music): new file.
8344 * lily/figured-bass-continuation.cc: new file.
8346 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8349 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8351 * scripts/lilypond-book.py: Bug fix, put the quote around the
8352 actual score for LaTeX documents.
8354 * scm/define-grobs.scm (all-grob-descriptions): Change
8355 collapse-height of the SystemStartBracket grob to 5.0,
8356 so the bracket disappears for single stave score lines (similarly
8357 to SystemStartBraces).
8359 * Documentation/user/advanced-notation.itely (Polymetric
8360 notation): Clarify the use of compressMusic.
8362 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8363 that the grace spacer note in other staves need the same duration
8364 and document the stroke-style property.
8366 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8368 * Documentation/user/global.itely (Vertical spacing): document
8369 alignment-extra-space and fixed-alignment-extra-space.
8371 * Documentation/topdocs/NEWS.tely (Top): add entry.
8373 * input/regression/alignment-vertical-spacing.ly: new file.
8375 * python/convertrules.py (conv): add rule.
8377 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8379 * lily/align-interface.cc (stretch_after_break): new
8380 function. Read fixed-alignment-extra-space property.
8381 (align_elements_to_extents): read alignment-extra-space property.
8383 * lily/lily-guile.cc (robust_scm2dir): new function.
8385 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8386 (annotate-space-left): new function. Annotate space left on page.
8387 (annotate-y-interval): new function.
8388 (paper-system-annotate-last): new function. Annotate bottom-space.
8390 * mf/feta-beugel.mf (y):
8392 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8394 * VERSION (PACKAGE_NAME): release 2.7.11
8396 * scm/lily-library.scm (interval-translate): new function
8397 (interval-center): new function.
8399 * scm/page-layout.scm (paper-system-annotate): new function. Add
8400 arrows for dimensions.
8402 * scm/stencil.scm (dimension-arrows): new function.
8404 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8406 * input/regression/page-spacing.ly: add annotatespacing
8408 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8409 (LY_DEFINE): new function ly:paper-system-set-property!
8411 * Documentation/user/global.itely (Paper size): explain how to add
8414 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8415 correspond to GS's definition.
8417 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8419 (print): only connect to next bracket if the next one is alive.
8420 (print): set padding to 0.0 if the bound is a breakable
8421 column. This makes tupletFullLength brackets reach up to the staff
8422 line if it doesn't connect to the next line.
8424 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8426 * lily/bar-number-engraver.cc: correct docs.
8428 * scm/output-lib.scm (first-bar-number-invisible): rename from
8429 default-bar-number-visibility
8431 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8433 * scm/define-music-properties.scm (all-music-properties): remove
8436 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8438 * po/fi.po: refresh.
8440 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8442 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8444 (disappear): bugfix.
8446 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8448 * lily/include/paper-system.hh (class Paper_system): remove
8449 staff_extents_ member.
8451 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8453 * lily/include/paper-system.hh (class Paper_system): remove
8454 number_ variable. Remove is_title_. Remove break_before_penalty_
8456 * lily/paper-book.cc (systems): use 'number property iso. number_
8459 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8460 remove ly:paper-system-number.
8462 * scm/lily-library.scm (paper-system-title?): new function.
8464 * lily/book.cc (process): bugfix: flip ?: cases.
8466 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8469 * ly/music-functions-init.ly: add outputProperty music function.
8471 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8473 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8475 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8477 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8479 * lily/paper-system.cc (internal_get_property): new function.
8481 * Documentation/user/global.itely (Vertical spacing): refer to
8484 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8487 * input/regression/page-spacing.ly: new file.
8489 * input/regression/page-top-space.ly: new file.
8491 * lily/spacing-spanner.cc: cmath -> math.h
8493 * lily/paper-system.cc (read_left_bound): new function. Read
8494 line-break-system-details from left bound to determine extents.
8496 * Documentation/user/programming-interface.itely (Using LilyPond
8497 syntax inside Scheme): change applyxxx -> applyXxx.
8499 * ly/music-functions-init.ly: add outputProperty music function.
8501 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8503 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8505 * python/convertrules.py (conv): rule
8507 * ly/music-functions-init.ly: applyxxx -> applyXxx
8509 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8512 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8514 * flower/include/real.hh: include <math.h> iso. <cmath>
8516 * flower/include/offset.hh: include real.hh
8518 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8520 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8521 fix example, now that 'interfaces is no longer directly available.
8523 * lily/book.cc (process): don't crash if paper == NULL.
8527 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8529 * scm/define-music-types.scm (music-descriptions): set length and
8530 start-callback for QuoteMusic
8532 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8534 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8535 arguments. Fixes compilation error with gcc 3.3.
8537 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8539 * VERSION: release 2.7.10
8541 * stepmake/stepmake/python-module-rules.make
8542 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8544 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8547 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8549 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8550 -Werror. Otherwise GCC barfs over various optimizations.
8552 * scm/define-grob-properties.scm (all-internal-grob-properties):
8553 add note-head property
8555 * Documentation/user/instrument-notation.itely (Laissez vibrer
8558 * input/regression/laissez-vibrer-ties.ly: new file.
8560 * lily/laissez-vibrer-engraver.cc: new file.
8562 * lily/include/tie-column-format.hh: new file.
8564 * lily/tie-column-format.cc: new file.
8566 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8568 * lily/laissez-vibrer-tie.cc: new file.
8570 * lily/include/laissez-vibrer-tie.hh: new file.
8572 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8574 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8576 * scm/define-grobs.scm (all-grob-descriptions): add
8577 LaissezVibrerTie, LaissezVibrerTieColumn
8579 * lily/tie-column.cc (set_tie_config_directions): new function
8580 (final_shape_adjustment): new function.
8581 (shift_small_ties): new function.
8583 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8585 * lily/include/tie.hh (struct Tie_details): add x_gap_
8586 (struct Tie_configuration): add head_position_
8588 * lily/tie-column.cc (set_chord_outline): new function.
8590 * mf/cmr.enc.in: remove file.
8592 2005-09-11 Graham Percival <gpermus@gmail.com>
8594 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8596 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8598 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8599 reduce aliasing effects.
8601 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8604 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8606 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8608 * flower/include/real.hh: std::fabs too.
8610 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8612 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8614 * lily, flower: Include C++ iso C headers. Import namespace std
8617 * lily/side-position-interface.cc:
8619 * lily/note-head.cc:
8620 * lily/include/includable-lexer.hh:
8621 * flower/include/string-data.icc: Remove using std::*.
8623 * lily, flower: Include C++ iso C headers. Import namespace std
8626 * lily/side-position-interface.cc:
8628 * lily/note-head.cc:
8629 * lily/include/includable-lexer.hh:
8630 * flower/include/string-data.icc: Remove using std::*.
8632 * Documentation/user/instrument-notation.itely (Entering lyrics):
8633 Multiple latin-1->utf-8 conversion fix.
8635 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8637 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8639 * lily/tie.cc (get_configuration): also avoid dots for non-space
8642 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8644 * Documentation/user/instrument-notation.itely: Bugfix.
8646 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8648 * tex/GNUmakefile: don't install texinfo.tex
8650 * tex/ : cleanup: remove unused files.
8652 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8654 * flower/include/real.hh: using std::{isnan,isinf}
8656 * VERSION (PATCH_LEVEL): release 2.7.9
8658 2005-09-05 Graham Percival <gpermus@gmail.com>
8660 * Documentation/user/ instrument-notation.itely,
8661 advanced-notation.itely: minor tweaks.
8663 * input/test/script-chart.ly: add item padding.
8665 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8667 * flower/offset.cc: use math.h iso. <cmath>
8669 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8672 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8673 (widen-left-stencil-edges): new function. Fix alignment problems
8674 with LaTeX includegraphics.
8676 * lily/text-interface.cc (interpret_markup): use abort().
8678 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8680 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8682 * lily/tie.cc (get_configuration): update bezier shape as we
8684 (get_configuration): don't move large ties if we're outside of the
8687 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8689 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8691 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8693 * .cvsignore: Add auto-generated configure files and then some.
8695 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8697 * scm/define-grobs.scm (DynamicLineSpanner): Add
8698 X-extent-callback. Fixes hairpin-slur collision.
8700 2005-08-31 Graham Percival <gpermus@gmail.com>
8702 * Documentation/user/advanced-notation.itely,
8703 basic-notation.itely: minor changes.
8705 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8707 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8708 \linebreak between each .eps file if \betweenLilyPondSystem is
8711 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8712 music): Document the \linebreak
8714 * Documentation/user/lilypond-book.itely,
8715 input/tutorial/lbook-latex-test.tex,
8716 Documentation/user/examples.itely: Remove \usepackage{graphics}
8718 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8720 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8722 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8725 * scripts/lilypond-book.py (PREAMBLE_LY): define
8726 inside-lilypond-book
8727 (modify_preamble): new function. Insert \RequirePackage{graphics}
8728 when no {graphics found in preamble.
8730 2005-08030 Graham Percival <gpermus@gmail.com>
8732 * Documentation/user/basic-notation.itely, global.itely,
8733 tutorial.itely: misc small changes.
8735 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8737 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8740 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8742 * lily/tie-column.cc (new_directions): put Tie down on center
8745 * lily/script-interface.cc (before_line_breaking): use
8746 Grob::programming_error
8748 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8750 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8753 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8755 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8757 2005-08-29 Werner Lemberg <wl@gnu.org>
8759 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8760 the `*.scale.pfa' files to avoid warnings.
8762 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8764 * lily/tempo-performer.cc (process_music): idem.
8766 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8768 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8770 * Documentation/user/advanced-notation.itely (Text markup): not a
8773 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8775 * lily/staff-performer.cc (initialize): add tempo/name to
8779 2005-08-26 Graham Percival <gpermus@gmail.com>
8781 * Documentation/user/advanced.itely: add text-only example.
8783 * Documentation/user/invoking.itely: add index entries for
8786 * Documentation/user/ tutorial.itely, basic-notation.itely:
8787 small fixes suggested by Steve D. Thanks!
8789 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8791 * input/regression/markup-bidi-pango.ly: new file.
8793 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8794 standard. Remove #ifdef. Remove memleak.
8795 (text_stencil): use text_dir to decide how to composite items.
8796 (text_stencil): determine uniform text direction for the entire
8799 * scripts/lilypond-book.py (output_name): remove
8800 latex_filter_cmd. Non-portable to non-Unix systems.
8801 (get_latex_textwidth): use File.write and os.unlink() instead.
8803 * THANKS: add Vicente & Trevor.
8805 * lily/grob.cc (discretionary_processing): look up origin for
8806 programming_error too.
8808 * input/regression/tie-broken.ly: new file.
8810 * lily/tie-column.cc (set_chord_outlines): set outline for line
8813 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8815 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8816 unscaled transform, just translate stencils.
8818 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8821 * scm/define-markup-commands.scm (wordwrap-string): use
8823 (wordwrap-stencils): idem.
8826 (wordwrap-stencils): translate last line to right for
8827 text-direction = LEFT.
8829 * scm/define-grob-properties.scm (all-user-grob-properties): add
8832 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8834 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8835 when copying a Lily_parser object.
8837 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8839 * scm/define-markup-commands.scm (null): add null markup.
8841 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8843 * lily/item.cc: Add documentation of center-invisible
8845 2005-08-24 Graham Percival <gpermus@gmail.com>
8847 * Documentation/user/advanced-notation.itely: add info about
8850 * Documentation/user/programming-interface.itely: fix example
8851 involving raised text.
8853 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8855 * lily/beam.cc (print): fix X start/end points of isolated
8858 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8860 * lily/multi-measure-rest.cc (set_text_rods): new function.
8862 * lily/vertical-align-engraver.cc (process_music): call
8863 Align_interface::set_axis(). This forces #'elements to be ordered,
8864 preventing random vertical reordering of staves.
8866 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8867 add avoid-slur property.
8869 * Documentation/user/basic-notation.itely (Measure repeats): add
8870 countPercentRepeats example.
8872 * Documentation/user/advanced-notation.itely (Other text markup
8873 issues): remove remark about normal-font. We have \normal-text
8875 * input/regression/tie-chord.ly: add note about remaining bugs.
8877 * lily/tie.cc (print): try Tie_column::set_directions () if
8878 control-points not yet defined.
8880 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8882 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8883 extent. This fixes braces falling out of the EPS bbox.
8885 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8888 2005-08-23 Graham Percival <gpermus@gmail.com>
8890 * {various} : change #up->#UP and #down->#DOWN.
8892 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8894 * Documentation/user/advanced-notation.itely: clarify
8895 what objects handles text on a multimeasure rest.
8897 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8899 * VERSION (PATCH_LEVEL): release 2.7.7
8901 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8903 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8905 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8907 * input/regression/*.ly: formatting clean-up. Default layout
8908 before music expression.
8910 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8911 romanze28-2 example.
8913 * scm/ps-to-png.scm: remove dir-re function.
8914 (make-ps-images): generate page names, instead of globbing them.
8915 This brings down LilyPond memory usage for make web by a factor
8918 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8919 don't use glob. With 3000 files, globbing
8920 Documentation/user/out-www/ can take too much time.
8922 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8924 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8926 * input/regression/tie-manual.ly: new file
8928 * input/regression/tie-chord.ly: update.
8930 * flower/include/interval.hh (struct Interval_t):
8932 * lily/tie.cc (distance): new function
8933 (height): new function.
8934 (init): new function
8935 (Tie_details): new struct.
8937 * lily/skyline.cc (skyline_height): new function.
8939 * lily/tie-column.cc (set_chord_outlines): new function.
8940 (new_directions): read tie-configuration
8942 * lily/skyline.cc: fix ASCII art.
8944 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8946 * python/convertrules.py (string_or_scheme): Fix spelling error
8948 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8950 * lily/tie-column.cc (set_directions): set directions only once.
8951 (add_configuration): new function.
8953 * lily/tie.cc (set_control_points): new function
8955 * lily/tie-column.cc (new_directions): new function.
8957 * ly/music-functions-init.ly: set 'pitch property
8958 iso. trill-pitch. This makes \relative work with \pitchedTrill
8960 * lily/tie.cc (get_configuration): new function. Don't generate
8961 control points, rather, generate configuration.
8962 remove head-pair property.
8964 * lily/include/tie.hh (struct Tie_configuration): new struct.
8966 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8968 * Documentation/topdocs/NEWS.tely: clarify.
8970 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8972 * lily/tie.cc: remove minimum-length
8974 * scm/define-grob-properties.scm (all-user-grob-properties):
8975 remove staffline-clearance, y-offset
8977 * input/regression/tie-dots.ly (Module): remove.
8979 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8980 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8982 * input/regression/tie-single.ly: new file.
8984 2005-08-21 Graham Percival <gpermus@gmail.com>
8986 * ly/bagpipe.ly: fix compile problem.
8988 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8990 * lily/midi-item.cc (name): new method.
8992 * lily/staff-performer.cc (acknowledge_audio_element): use
8993 signature of baseclass.
8995 * lily/engraver-group.cc (do_announces): move recursion call out
8998 * lily/drum-note-performer.cc (class Drum_note_performer): use
8999 process_music everywhere.
9001 * ly/performer-init.ly: add default children everywhere.
9003 * lily/paper-book.cc (output): call paper-book-write-midis
9004 directly: always write MIDI, even if no \layout {} block.
9006 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9008 * VERSION (PACKAGE_NAME): release 2.7.6
9010 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9011 about not being able to handle repeat.
9013 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9015 * Documentation/user/examples.itely (Piano templates):
9016 * lily/include/performer-group.hh: Remove last traces of
9017 Performer_group_performer. Fixes make web.
9019 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9021 * Documentation/user/examples.itely (Piano templates): change
9022 Engraver_group_engraver -> Engraver_group
9024 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9025 scm_stand_in_procs is not weak_any.
9027 * lily/volta-bracket.cc (print): don't use strcmp().
9029 * lily/volta-engraver.cc (process_music): use
9030 Text_interface::is_markup() for setting the 'text property of the
9033 * input/mutopia/claop.py (accents): update syntax to 2.6
9035 * scm/define-context-properties.scm
9036 (all-user-translation-properties): add countPercentRepeats.
9038 * Documentation/user/basic-notation.itely (Measure repeats): add
9039 isolated percent example.
9041 2005-08-18 Graham Percival <gpermus@gmail.com>
9043 * input/ {various}: change direction #1, #-1 to
9044 #up/#down or \fooUp, \fooDown.
9046 * Documentation/user/music-glossary.tely: #-1 to #down.
9048 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9049 to #up, #-1 to #down.
9051 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9053 * lily/include/engraver-group.hh: rename.
9055 * lily/include/performer-group.hh: rename.
9057 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9059 * input/test/script-abbreviations.ly: Removed some old LaTeX
9062 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9064 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9065 Remove functions. Remove if 1: constructs, reindent.
9067 * scripts/convert-ly.py (add_version): Add functions from
9070 * scm/script.scm (default-script-alist):
9071 s/priority/script-priority. Fixes script stacking. Backportme.
9072 (Fermata): Very low priority.
9074 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9076 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9078 * input/regression/slur-script.ly: remove padding tweaks. Add
9081 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9082 time sigs and related stuff.
9084 * scm/define-grob-properties.scm (all-user-grob-properties): add