1 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * mf/GNUmakefile: explicit dependencies for .otftable files.
5 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
7 * input/regression/fret-boards.ly: new file.
9 * po/de.po: new po courtesy translation team.
11 * scripts/lilypond-book.py (get_option_parser): add newline to doc string.
13 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
15 * ly/gregorian-init.ly (neumeDemoLayout): update
16 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
18 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
19 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
21 2006-10-27 Erlend Aasland <erlenda@gmail.com>
23 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
24 Yet another build fix.
26 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
28 * SConstruct (lilypondprefix): use sorted() for list_sort()
31 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
33 * flower/SConscript: Unit test rules.
35 * flower/test-std.cc: Compile fix.
37 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
39 * python/midi.c (pymidi_parse_track): warning fixes.
41 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
44 2006-10-26 Graham Percival <gpermus@gmail.com>
46 * Documentation/user/ {basic-, global}: minor changes from mailist.
48 2006-10-26 Erlend Aasland <erlenda@gmail.com>
50 * scm/define-grobs.scm: trivial beautification
52 * lily/tie-performer.cc: no need to #include "pqueue.hh"
54 * lily/source-file.cc: put multibyte var inside #if clause
56 * scm/define-grob-interfaces.scm:
57 * scm/define-grob-properties.scm:
58 Build fix (string-fret-finger-combinations)
60 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
63 * Documentation/user/lilypond-book.itely: Build fix.
65 2006-10-26 Joe Neeman <joeneeman@gmail.com>
67 * lily/system.cc (get_paper_system):
68 * lily/paper-book.cc (systems):
69 move most of the backwards compatibility stuff into
72 * Documentation/topdocs/NEWS.tely: add 2 entries for the
75 * Documentation/user/page.itely: remove time-scaled-music
76 bug for the Page_turn_engraver
78 * lily/paper-book.cc (set_system_penalty): backwards
79 compatibility (breakbefore) for the old page breaker
81 2006-10-25 Graham Percival <gpermus@gmail.com>
83 * Diocumentation/user/instrument-notation.itely: added more
84 info about stanzas; thanks Geoff!
86 * Documentation/user/ {basic, advanced}: small fixes from
89 * THANKS: add some bug reporters.
91 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
93 * scm/define-context-properties.scm (all-user-translation-properties):
94 noteToFretFunction: Add.
96 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
97 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
99 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
101 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
104 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
105 Remove bashism in delete.
107 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
109 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
111 * scm/translation-functions.scm (determine-frets-mf): flatten let*
113 * scm/define-context-properties.scm
114 (all-user-translation-properties): add maximumFretStretch property.
116 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
118 * lily/source-file.cc (get_counts): use multibyte variable.
120 * scm/translation-functions.scm (determine-frets-mf): new
121 function: compute fret numbers.
123 * scm/output-lib.scm (string-frets->description) new function.
124 (fret-board::calc-stencil): new function
126 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
128 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
130 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
132 * lily/tab-note-heads-engraver.cc: cleanups.
134 * lily/fretboard-engraver.cc: new file
136 * ly/engraver-init.ly: add FretBoards context
138 2006-10-24 Joe Neeman <joeneeman@gmail.com>
140 * lily/grob.cc (pure_relative_y_coordinate)
141 (pure_height): use the new call_pure_function stuff
143 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
146 * lily/side-position-interface.cc (pure_y_aligned_side): add an
149 * lily/simple-closure.cc (ly_eval_simple_closure): make
150 simple-closure evaluatable from scheme
151 (evaluate_with_simple_closure): make simple-closures pure-
154 * lily/slur.cc (pure_outside_slur_callback): new function
156 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
157 fits in with previous changes that made the page forces much
160 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
161 and pure-Y-extent into this new function.
162 (pure-conversions-alist): add outside-slur-callback
164 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
166 * Documentation/user/advanced-notation.itely (Instrument names):
167 Remove obsolete bug workaround for instrument names on piano
170 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
172 * Documentation/user/lilypond-book.itely (Integrating DocBook and
173 music): patch by Bertalan Fodor for docbook.
175 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
176 of $(LILYPOND). Prevents lilypond run for .txt files.
178 * INSTALL.txt: gitness.
180 * .cvsignore: update to force gitness.
182 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
184 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
185 detect suicide in nested tuplets.
187 2006-10-23 Werner Lemberg <wl@gnu.org>
189 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
190 typo in argument to FT_Get_X11_Font_Format.
192 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
194 * stepmake/stepmake/po-vars.make: more gitness.
196 * flower/polynomial.cc (check_sol): no empty if bodies.
198 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
200 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
202 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
204 * Documentation/user/examples.itely (Transcription of mensural
205 music): Added more comments in .ly source. Suggest to remove
206 Forbid_line_break_engraver to allow line breaking at all bars.
208 * Documentation/user/instrument-notation.itely (Ancient
209 articulations): Updated @refbugs regarding episem.
211 * Documentation/user/instrument-notation.itely (Gregorian square
212 neumes ligatures): Added \augmentum dots. Updated @refbugs
213 regarding \augmentum.
215 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
217 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
220 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
223 * ly/gregorian-init.ly: Added \augmentum macro.
225 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
227 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
229 * lily/pango-font.cc (pango_item_string_stencil): use
230 FT_Get_X11_Font_Format()
232 2006-10-22 John Mandereau <john.mandereau@free.fr>
234 * po/fr.po: update translation.
236 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
238 * VERSION (PATCH_LEVEL): bump version
240 * input/regression/horizontal-bracket-break.ly: new file.
242 * scm/define-grobs.scm (all-grob-descriptions): calc
245 * lily/horizontal-bracket.cc (make_bracket): support
246 connect-to-neighbor. Fix #118
248 * VERSION: release 2.9.26-2
250 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
252 * VERSION (PACKAGE_NAME): release 2.9.26
254 * buildscripts/output-distance.py (test_basic_compare): add
256 (FileLink.multi_img_cell): new function, glob multi-page png
259 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
261 * po/lilypond.pot: update.
263 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
265 * Documentation/user/global.itely (File structure): remove
268 * lily/parser.yy (FIXME): remove ADDQUOTE
270 * Documentation/user/global.itely (Extracting fragments of
271 notation): new node, about clip systems.
273 * Documentation/user/lilypond-book.itely (Many quotes of a large
274 score): ref to clip systems.
276 * Documentation/user/instrument-notation.itely (Entering lyrics):
277 add note about lyric ties and required font.
279 * lily/open-type-font.cc (glyph_list): format errors.
281 * Documentation/user/programming-interface.itely (Scheme
282 procedures as properties): more doco on simple-closure and scheme
284 (Input variables and Scheme): use lilypond[verbatim], document
287 * Documentation/user/page.itely (Displaying spacing): use \book
288 explicitly, so arrows show .
289 (Line breaking): add note about Forbid_line_break_engraver
291 * Documentation/user/tweaks.itely (Common tweaks): also set length
292 to prevent tie squeezing.
293 (Default files): use @var{}
295 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
296 (Generating LilyPond files): add FOMUS.
298 2006-10-20 Joe Neeman <joeneeman@gmail.com>
300 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
301 Y-offset for TextScript and Script
303 * lily/text-engraver.cc (make_item):
304 * lily/script-engraver.cc (make_script_from_event):
305 remove call to Side_position_interface::set_axis since all scripts
306 now have this set by default
309 * lily/prob.cc: use variables
311 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
313 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
314 at typography, rather analyse stream event duration.
316 * Documentation/user/page.itely (Page formatting): set a6 paper
317 for system separator example.
319 * lily/arpeggio.cc (Module): idem.
321 * lily/accidental-placement.cc: add script-priority property.
323 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
325 * lily/ttf.cc (print_trailer): if all else fails: use
326 glyphIndexXXXX as glyph name. Fixes #117.
328 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
329 entry if cmap contains glyph.
330 (get_index_to_charcode_map): remove from Pango_font class, use
331 global filename -> font mapping.
332 (get_glyph_index_name): new function.
333 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
336 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
338 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
341 * scm/define-grob-properties.scm (all-user-grob-properties):
342 remove outdated doc. Fixes #116
344 * lily/completion-note-heads-engraver.cc (process_music): always
345 clone input events; otherwise we may overwrite input 'duration
346 property. Fixes #115.
348 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
351 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
354 * VERSION (PATCH_LEVEL): bump version.
356 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
358 * lily/engraver.cc (internal_make_grob): use variables.
360 * flower/string-convert.cc (dec2double): clean-up warnings.
362 * configure.in (CXXFLAGS): add -Werror.
364 * VERSION (PACKAGE_NAME): release 2.9.25
366 2006-10-18 Joe Neeman <joeneeman@gmail.com>
368 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
369 line even if we precede a forced break.
371 * lily/optimal-page-breaking.cc (try_page_spacing): square line
372 forces too. Make page-spacing weight default to 10 because the
373 changes to vertical springs decreased the page force/line force
374 proportions. Also, take the average of line force and page force
375 instead of just the sum.
377 * lily/constrained-breaking.cc (initialize): make the stiffness
378 of the vertical springs depend on the height of the system. This
379 prevents pages with only a few large systems from getting huge
382 * Documentation/user/page.itely (Page formatting): document the
383 change in default page-spacing-weight
385 * lily/include/constrained-breaking.hh: initialise bottom_padding_
387 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
389 * input/typography-demo.ly (melody): remove superfluous slur.
391 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
392 add piano-pedal-script-interface
394 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
396 * scripts/lilypond-book.py: DocBook support.
398 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
400 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
402 (stop_translation_timestep): set bound to currentMusicalColumn if
403 not set yet. Fixes #102
405 * lily/piano-pedal-bracket.cc: formatting.
407 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
409 * lily/piano-pedal-align-engraver.cc: new class
410 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
413 2006-10-18 Heikki Junes <hjunes@gmail.com>
415 * po/fi.po: Update Finnish translation (before the next release).
417 2006-10-17 Joe Neeman <joeneeman@gmail.com>
419 * lily/system.cc (get_paper_system): reinstate the backwards-
420 compatible page breaking for the old page breaker.
422 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
424 * lily/recording-group-engraver.cc: removed
426 * lily/context.cc, lily/translator-group.cc: Don't touch
427 Context::implementation_ if it's null
429 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
431 * scm/paper.scm: only use left-margin if defined.
433 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
435 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
437 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
438 strokeFingerOrientations
440 * lily/script-column.cc (row_before_line_breaking): also handle
441 accidentals and arpeggios in horizontal script stacking.
443 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
446 * input/regression/script-stack-horizontal.ly: trim.
448 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
450 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
453 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
454 'text if string argument.
456 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
458 * scm/define-context-properties.scm
459 (all-user-translation-properties): change to strokeFingerOrientations
461 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
463 * lily/parser.yy: remove debug output
465 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
467 * ly/paper-defaults.ly: set left/right margin.
469 * scm/paper.scm (set-paper-dimensions): use left-margin and
470 right-margin for computing linewidth.
472 * Documentation/topdocs/NEWS.tely (Top): idem.
474 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
477 * scm/define-markup-commands.scm (tied-lyric): increase negative
478 space: space syllables tighter.
480 * VERSION (PATCH_LEVEL): bump version.
482 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
485 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
487 * COPYING: further clarification
489 * VERSION: release 2.9.24
491 * input/regression/script-stack-horizontal.ly: add version.
493 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
495 * input/regression/lyric-tie.ly (texidoc): use different words.
497 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
499 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
501 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
502 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
504 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
506 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
508 * Doxyfile: remove file.
510 * scm/define-grob-interfaces.scm (string-finger-interface): add
511 string-finger-interface
513 * lily/general-scheme.cc (LY_DEFINE): move
514 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
516 * Documentation/topdocs/NEWS.tely (Top): add note for
517 string-finger feature.
519 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
522 * scm/output-lib.scm (string-finger::calc-text): read 'digit
525 * input/regression/script-stack-horizontal.ly: new file.
527 * ly/engraver-init.ly: add Script_row_engraver.
529 * lily/script-column.cc (order_grobs): refactor: separate axis
531 (row_before_line_breaking): new function.
533 * lily/script-row-engraver.cc (Script_row_engraver): new file.
535 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
537 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
539 * Documentation/user/instrument-notation.itely: Cleanup: Remove
540 annoying skip notes from mensural ligature example. Update
541 @refbugs for ligatures and mensural ligatures.
543 * lily/coherent-ligature-engraver.cc,
544 lily/include/coherent-ligature-engraver.hh,
545 lily/mensural-ligature-engraver.cc,
546 lily/vaticana-ligature-engraver.cc: Revise code for item
547 reparentizing. There should now be less programming_error
550 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
552 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
553 Maintenance bugfix: Don't create empty Stencil (), but empty box
554 instead. This fix should eliminate some programming_error
557 * ly/engraver-init.ly (MensuralStaff): Set default accidental
560 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
561 \layout block _before_ score.
563 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
565 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
567 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
569 2006-10-13 Erlend Aasland <erlenda@gmail.com>
571 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
573 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
575 * VERSION (PATCH_LEVEL): bump version.
577 * COPYING: clarify exception note.
579 * lily/main.cc: remove remark about "COPYING".
581 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
582 system-count starts at 0 for each clip-region. Change name to
583 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
584 layout block, per score.
586 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
588 * lily/input-smob.cc: add equal_p for Input
590 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
593 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
595 * lily/prob.cc: Add equal_p predicate for Prob
597 * lily/translator.cc: small cleanup
599 * scm/document-music.cc: use data from translator listener
600 registration to generate documentation for event classes
602 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
604 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
606 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
608 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
610 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
612 * Documentation/topdocs/INSTALL.texi: Thinko.
614 * .cvsignore: Update.
616 * lexer-gcc-3.1.sh: Remove.
618 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
619 Update anonymous cvs access. Remove comment about gcc 3.0.4.
621 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
623 * VERSION: release 2.9.23
625 * lily/paper-column-engraver.cc (stop_translation_timestep): also
628 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
630 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
632 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
634 * input/regression/clip-systems.ly (Notes): new file.
636 * scm/lily.scm (define-scheme-options): add clip-systems option.
638 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
640 (dump-stencil-as-EPS): move bbox calculation from previous
642 (output-framework): use -dclip-systems
644 * scm/lily-library.scm (filtered-map): new function
646 * scm/framework-ps.scm (clip-system-EPS): new function.
647 (clip-system-EPSes): new function.
649 * lily/paper-column.cc: add rhythmic-location to interface
651 * scm/define-grob-properties.scm (all-user-grob-properties): add
652 rhythmic-location property.
654 * scm/clip-region.scm: new file: rhythmic-location data type and
655 system-clipped-x-extent function.
657 * ly/init.ly: use (scm clip-region)
659 * lily/paper-column-engraver.cc (stop_translation_timestep): set
660 rhythmic-location for paper column grobs.
662 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
664 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
666 * ly/engraver-init.ly: Remove obsolete comment on
669 * Documentation/user/instrument-notation.itely: Tune Ancient
670 Articulations figure, such that the episem actually shows.
672 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
673 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
675 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
678 2006-10-12 Graham Percival <gpermus@gmail.com>
680 * Documentation/user/ {some}: minor edits that were lost somehow.
682 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
684 * VERSION (PACKAGE_NAME): bump version.
686 * input/regression/lyric-tie.ly (texidoc): new file.
688 * Documentation/topdocs/NEWS.tely (Top): add new feature.
690 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
692 * scm/define-markup-commands.scm (tied-lyric): new function: split
693 string along ~ and reattach with U+203F (tie character) and
696 * scm/output-lib.scm (lyric-text::calc-text): new function.
698 * lily/lyric-engraver.cc (process_music): don't set 'text.
700 * scm/output-lib.scm (string-finger::calc-text): new function
701 (lyric-text::print): new function.
703 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
704 generic for fingering & string number. Use for string-finger.
706 * scm/define-music-types.scm (music-descriptions): add
709 * lily/fingering-engraver.cc (listen_string_finger): new function
711 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
713 * scm/define-context-properties.scm
714 (all-user-translation-properties): add stringFingerOrientations
716 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
718 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
719 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
721 * lily/dots.cc: Added style property for dots.
723 * mf/parmesan-heads.mf: Fix typo in comment.
725 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
726 adding longa head to feta font and removing obsolete default
729 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
731 * scm/output-lib.scm (fingering::calc-text): use origin
732 event-property, not music-property.
734 * lily/lilypond.rc.in: spell my name correctly.
736 2006-10-10 Joe Neeman <joeneeman@gmail.com>
738 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
739 already have a non-empty extent. Fixes estimation for Hara-kiri
742 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
744 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
747 * lily/ligature-engraver.cc: Remove unused #include.
749 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
750 Bugfix: remove method check_for_prefix_loss(Item *) from global
751 namespace to avoid namespace pollution.
753 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
755 * VERSION: release 2.9.22
757 * ly/generate-documentation.ly: update option name.
759 * lily/dynamic-text-spanner.cc (print): revert fix.
761 * scm/define-grob-interfaces.scm
762 (trill-pitch-accidental-interface):
763 add trill-pitch-accidental-interface
765 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
766 dereference if it's really a duration.
768 * lily/figured-bass-engraver.cc (process_music): clear spanner if
769 useBassFigureExtenders is not set.
770 (listen_bass_figure): record as new event if
771 useBassFigureExtenders not set. Fixes #103.
773 * scm/stencil.scm (circle-stencil): don't center stencil argument,
774 instead: move circle. Fixes #107.
776 * scm/define-grobs.scm (all-grob-descriptions): set
777 allow-loose-spacing for PaperColumn and
778 NonMusicalPaperColumn. Kludge for #110.
780 * lily/spaceable-grob.cc: add allow-loose-spacing property.
782 * lily/spacing-determine-loose-columns.cc (is_loose_column):
783 allow-loose-spacing property.
785 * scm/define-markup-commands.scm (postscript): gsave & grestore
786 around embedded PS. Do setlinewidth too. Fixes #109.
788 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
790 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
791 code. This patch fixes ligature brackets that were not at all
794 2006-10-08 Graham Percival <gpermus@gmail.com>
796 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
798 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
800 * scm/define-context-properties.scm: clarified docs (bug 91).
802 * Documentation/user/basic-notation.itely: document volta brackets
803 not aligning (bug 63).
805 * Documentation/user/ global.itely invoking.itely: ignore or
806 add warnings about texstr.
808 2006-10-08 John Mandereau <john.mandereau@free.fr>
810 * po/fr.po: update translation.
812 * po/: update msgids.
814 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
816 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
818 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
820 * Documentation/user/page.itely (Two-pass vertical spacing): add
821 documentation for two-pass spacing technique.
823 2006-10-06 Graham Percival <gpermus@gmail.com>
825 * Documentation/user/convert-ly.txt: new file; new
826 storage place for this file (moved from bugs/ CVS).
828 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
830 * lily/note-head.cc: Fixed programming_error message.
832 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
834 * scm/define-grobs.scm (pure-conversion): move pure-callback
837 * scm/script.scm (default-script-alist): set avoid-slur for turn,
838 marcato, stopped, thumb.
840 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
842 * lily/completion-note-heads-engraver.cc (process_music): don't
843 skimp on memory usage.
845 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
848 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
849 parenthesis item. This fixes premature Y-extent triggering. Fixes
852 * VERSION (PATCH_LEVEL): bump version.
854 2006-10-04 Graham Percival <gpermus@gmail.com>
856 * Documentation/user/advanced-notation.itely: added
857 info about instrument names for piano or other contexts,
860 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
862 * mf/feta-bolletjes.mf (solfa_quarter_width): use
863 solfa_base_notewidth as unit for non-DO-notes too.
865 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
867 * VERSION: release 2.9.21
869 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
872 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
874 * python/lilylib.py (progress): Minor fix.
876 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
878 * lily/note-name-engraver.cc: doc engraver.
880 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
882 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
884 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
887 * lily/stem-engraver.cc (make_stem): don't set duration-log
889 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
890 write snippet-names binary.
892 * python/lilylib.py (system): use os.system for mingw32
894 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
897 * scm/backend-library.scm: update email address.
899 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
902 * scm/define-grobs.scm (all-grob-descriptions): use callback to
905 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
906 handle dot creation separately.
908 * lily/tab-note-heads-engraver.cc (process_music): idem.
910 * lily/drum-note-engraver.cc (process_music): idem.
912 * lily/note-heads-engraver.cc (process_music): idem.
914 * lily/rest-engraver.cc: don't set duration-log.
916 * scm/output-lib.scm (string-number::calc-text): new function.
917 (note-head::calc-duration-log): new function.
919 * lily/fingering-engraver.cc (make_script): remove 'text setting.
921 * scm/output-lib.scm (fingering::calc-text): new function.
923 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
925 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
926 and include-eps-font -> include-eps-fonts
928 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
930 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
932 * lily/timing-translator.cc: list properties.
933 (start_translation_timestep): update internalBarNumber too.
935 * scm/define-context-properties.scm
936 (all-user-translation-properties): add internalBarNumber.
938 * input/regression/spacing-no-note.ly: new file.
940 * buildscripts/output-distance.py (link_file): verbosity for OSError.
942 * lily/book.cc: #include cleanup.
944 * lily/include/lily-guile-macros.hh: add assert to
945 scm_or_str2symbol(SCM).
947 * VERSION (PATCH_LEVEL): bump version.
949 * lily/spacing-spanner.cc (musical_column_spacing): handle
950 musical->nonmusical spacing case, where there is no spacing
951 wish. Fixes issue #61.
953 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
954 (pango_item_string_stencil): use logical rect horizontally (to
955 preserve spaces), ink_rect vertically (for time signatures).
957 * lily/font-metric.cc (word_stencil): new interface function
959 * input/regression/utf-8-mixed-text.ly: new file.
961 * lily/percent-repeat-engraver.cc (listen_percent): remove
964 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
965 non-dynamic scripts. Fixes #30.
967 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
969 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
971 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
972 SCM_UNDEFINED for non-existent data.
974 * lily/side-position-interface.cc (general_side_position): allow
975 optional current_offset argument for chaining, so combinations of side-position
976 and outside slur callback don't add up. Fixes issue #92.
978 * lily/pango-font.cc (pango_item_string_stencil): use
979 logical_rect. This prevents spaces after words from disappearing,
982 * VERSION: release 2.9.20
984 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
986 * scm/define-grob-properties.scm (all-user-grob-properties):
987 mention stencil as user settable.
989 2006-10-02 Joe Neeman <joeneeman@gmail.com>
991 * Documentation/user/page.itely (Page formatting):
992 document auto-first-page-number
994 * lily/page-breaking.cc (find_chunks_and_breaks):
995 * lily/paper-score.cc (calc_breaking): Follow changes to the
996 Constrained_breaking interface
998 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
999 here backwards, as an optimisation
1000 (initialize): new function; move most of the code in resize () here
1001 (combine_demerits): cache ragged_right_
1002 (Constrained_breaking): constructor now takes the Paper_score
1004 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1006 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1007 avoid parser lookahead for 0-ary functions.
1009 * lily/translator.cc: Extract event classes from
1010 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1012 2006-10-02 Heikki Junes <hjunes@gmail.com>
1014 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1017 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1019 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1020 function. Call the page breaking function selected in the
1021 `page-breaking' \paper variable, then the post processing function
1022 chosen using the `page-post-process' \paper variable.
1023 (line-height): new function. Return the height of a system.
1024 (line-minimum-position-on-page): new function. Return the position
1025 of a system on page (using the previous line position), only
1026 considering between system padding.
1027 (stretchable-line?): new function. Says whether a line can be
1028 stretched (ie. is not a title nor a single staff system).
1029 (page-maximum-space-left): new function. Computes space left on a
1030 page, when all systems are separated by their padding.
1032 * lily/page-breaking.cc (breaking::make_pages): Move page post
1033 processing function call to page breaking wrapper (common to all
1036 * lily/paper-book.cc (book::pages): call the page breaking
1037 wrapper, instead of the page breaker directly
1039 * ly/paper-defaults.ly: Add \paper variables for page breaking
1040 wrapper and page post processing function. Make
1041 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1042 `system-maximum-stretch-procedure' variable for holding a function
1043 computing the maximum stretch a system allows.
1045 * scm/layout-page-dump.scm (write-page-breaks): computes the
1046 stretch to apply to systems on a page to minimize left
1047 space. Dump this stretch length.
1049 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1050 the system-stretch property of the tweak data to stretch the
1052 (includePageLayoutFile): Void function which includes the
1053 generated page-layout file if it exists and if the page layout
1054 dumping is not asked.
1055 (scoreTweak): if the score tweak named by the argument exists,
1058 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1060 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1061 handle correctly the case where there are multiple \noPageBreaks
1064 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1066 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1068 * abc2ly.py fix so that entering " -- " will translate to a -- in
1069 the lilypond instead of a " - - "
1071 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1073 * lily/align-interface.cc: fix typo
1075 * lily/dynamic-text-spanner.cc (print): Add a special case for
1076 trill spanner right sides.
1078 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1080 * lily/align-interface.cc (get_extents_aligned_translates): add
1081 support for padding variable.
1083 * lily/break-align-interface.cc (self_align_callback): oops: use
1084 loop variable in guard.
1086 * input/regression/repeat-percent-grace.ly: new file.
1088 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1089 remember first currentCommandColumn of a grace run. Fixes issue 70.
1091 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1092 move class definition to CC file.
1094 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1096 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1097 measure-long repeats.
1099 * flower/include/international.hh: include stdarg.h
1101 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1103 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1104 put_systems_on_pages to return an empty result, we need to assign
1105 demerits properly in that case.
1106 (put_systems_on_pages): Make the number of pages depend on the
1107 evenness of page_number. Add auto-first-page-number.
1108 (calc_subproblem): ensure that the page-number is even for the
1109 left-hand page. Warn if the first page-turn doesn't fit onto the
1110 first (right-hand) page.
1112 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1113 (min_page_count): make this publicly accessible
1114 (min_page_count): fix a bug when there are forced page breaks that
1115 was introduced when I made this loop run backwards
1116 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1117 replace space_systems_on_min_pages with these two. The logic in
1118 space_systems_on_min_pages was getting too convoluted and is better
1119 contained in page-turn-page-breaking.
1121 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1123 (breakable_column): typo
1125 * lily/source-file.cc (get_line): fix off-by-one error
1126 and clean up some of the logic
1128 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1130 * lily/page-breaking.cc (make_pages): honour the first-page-number
1133 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1135 * VERSION (PACKAGE_NAME): bump version.
1137 2006-09-26 Pal Benko <benko.pal@gmail.com>
1139 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1140 (the latter is the same as petrucci-f which is kept for compatibility)
1142 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1144 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1146 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1148 * lily/global-context.cc (run_iterator_on_me): break out of loop
1149 if moment doesn't increase.
1151 * scm/define-grob-properties.scm (all-user-grob-properties): add
1154 * lily/accidental.cc (after_line_breaking): read forced property.
1156 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1159 * input/regression/accidental-forced-tie.ly: new file.
1161 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1163 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1165 * lily/figured-bass-engraver.cc: only listen to rest events if
1166 ignoreFiguredBassRest is not set.
1168 * scm/define-context-properties.scm
1169 (all-user-translation-properties): add ignoreFiguredBassRest property
1171 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1173 * lily/paper-book.cc (get_system_specs):
1174 (set_system_penalty): fix breakbefore.
1175 We used to set a penalty on the system after the break, now we
1176 set a permission on the system before the break
1178 * lily/grob-property.cc: add scm debugging hooks into
1179 property modification
1181 * lily/context-property.cc:
1183 rename make_foo_from_properties to internal_make_foo and
1184 move it from context-property.cc to a member function of
1187 * lily/include/lily-guile-macros.hh:
1188 overload ly_symbol2scm macro so that there is no more need
1191 * lily/volta-repeat-iterator.cc:
1192 * lily/tweak-engraver.cc:
1193 * lily/tuplet-bracket.cc:
1194 * lily/span-bar-engraver.cc:
1195 * lily/script-engraver.cc:
1196 * lily/prob-scheme.cc:
1197 * lily/pointer-group-interface.cc:
1199 * lily/grob-scheme.cc:
1200 * lily/grob-property.cc:
1202 * lily/context-property.cc:
1203 * lily/break-substitution.cc:
1204 * lily/break-align-engraver.cc:
1205 * lily/axis-group-interface.cc:
1206 * lily/align-interface.cc:
1207 remove calls to internal_FOO
1209 * lily/system-start-delimiter-engraver.cc:
1210 * lily/parenthesis-engraver.cc:
1211 * lily/accidental-engraver.cc:
1212 remove calls to make_foo_from_properties
1214 2006-09-23 Graham Percival <gpermus@gmail.com>
1216 * Documentation/user/programming-iterfaces.itely: fix
1217 def-music-function -> define-music... leftover.
1219 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1221 * lily/page-spacing.cc (min_page_count): by running the loop
1222 backwards, we can calculate ragged_last properly.
1224 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1226 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1227 printfirst-page-number -> print-first-page-number
1229 * python/convertrules.py: corresponding rule.
1231 * Documentation/user/page.itely (Page formatting): Document the
1232 default values of all page layout parameters.
1234 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1236 * lily/lexer.ll: remove limitation on music function arity. New
1237 mode extratoken, which inserts extra EXPECT_* tokens after
1238 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1240 * lily/parser.yy: Change grammar for music function accordingly.
1242 * lily/include/lily-parser.hh: New method get_state, new member
1243 hidden_state. Works around a problem when parser fetches
1244 MUSIC_FUNCTION token but not the following EXPECT_* token.
1246 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1249 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1250 references to Music; use ASSIGN_EVENT_ONCE everywhere
1252 * lily/grob-info.cc: junk *music_cause
1254 * lily/music.cc: copy eventified articulations to stream event
1256 * lily/part-combine-iterator.cc: Cleanup using enums
1258 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1261 * lily/include/engraver.hh: Junk music.hh include
1263 * lily/stream-event.cc: Changed constructors
1265 2006-09-21 Graham Percival <gpermus@gmail.com>
1267 * Documentation/user/tweaks.itely (Fitting music onto fewer
1268 pages): change settings to avoid warning messages.
1270 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1272 * Documentation/user/tweaks.itely (Fitting music onto fewer
1273 pages): Add between-system-space setting.
1275 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1277 * lily/accidental-placement.cc (calc_positioning_done): don't
1278 trigger Y-extent calculation too early. Use pure_height instead.
1280 * lily/scale.cc (LY_DEFINE): new file.
1282 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1284 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1285 that happen at the start of a score: having a zero-length
1286 chunk was messing up min_system_count calculations.
1288 * lily/source-file.cc (get_line): lower_bound, not
1289 binary_search. Fixes problem where point-and-click would
1290 always point to the first line.
1292 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1294 * lily/accidental-placement.cc (calc_positioning_done): also put
1295 stems into accidental support.
1297 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1300 * scm/script.scm (default-script-alist): avoid-slur and
1301 slur-padding for portato script.
1303 * lily/stem-tremolo.cc (translated_stencil): new function.
1304 (height): use new function. Fixes tremolos on whole notes.
1306 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1309 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1311 * scripts/abc2ly.py (try_parse_comment): idem.
1313 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1314 bar_string iso. string.find()
1318 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1321 2006-09-18 Graham Percival <gpermus@gmail.com>
1323 * Documentation/user/basic-notation.itely: add bug
1324 warning about ties and octavation/clef.
1326 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1328 * VERSION (PACKAGE_NAME): release 2.9.18
1330 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1332 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1333 figure out midi file names right here.
1335 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1337 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1339 * scm/backend-library.scm: option naming: gs-font-load*s*
1341 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1344 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1346 * scm/define-music-types.scm (music-descriptions): remove
1347 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1348 Music::to_event doesn't complain.
1350 * lily/accidental-placement.cc (ape_compare):
1351 * lily/semi-tie.cc (compare):
1352 * lily/note-column.cc (shift_compare): replace by XXX_less
1354 * lily/tie-formatting-problem.cc (set_chord_outline):
1355 * lily/tie-column.cc (calc_positioning_done):
1356 * lily/system.cc (post_processing)
1358 * lily/stem.cc (note_head_positions)
1359 (calc_positioning_done):
1360 * lily/spanner.cc (do_break_processing)
1361 (find_broken_piece):
1362 * lily/span-bar.cc (print):
1363 * lily/semi-tie-column.cc (calc_positioning_done):
1364 * lily/rest-collision.cc (calc_positioning_done):
1365 * lily/program-option.cc (get_help_string):
1366 * lily/note-collision.cc (get_clash_groups):
1367 * lily/new-fingering-engraver.cc (position_scripts):
1368 * lily/keyword.cc (Keyword_table):
1369 * lily/hara-kiri-group-spanner.cc (request_suicide):
1370 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1371 * lily/accidental-placement.cc (calc_positioning_done):
1373 * lily/beam.cc (get_beam_segments):
1374 * lily/grob-array.cc (remove_duplicates):
1377 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1378 ragged-last-bottom = ##f (test the new page breaker)
1380 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1382 * scm/define-context-properties.scm
1383 (all-internal-translation-properties): remove properties that
1384 were used to communicate page-turn stuff to the paper-column
1387 * lily/lily-guile.cc (robust_scm2string): new function
1389 * lily/paper-column-engraver.cc: Clean up page turn stuff
1391 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1392 instead of cluttering up paper-column-engraver.cc
1394 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1396 * scm/layout-page-dump.scm (scm): export utility function names,
1397 to allow user writing cutsom dumping functions.
1399 * scm/layout-page-layout.scm: export utility function names to
1400 enable custom page breaking function writing. Tabify.
1401 (line-next-space): use ?-suffix only for predicates
1402 (page-maximum-space-to-fill): new function. Return the space
1403 between first and bottom system of a page, to give to
1405 (space-systems): use a space-to-fill argument (for instance as
1406 computed by page-maximum-space-to-fill) instead of computing
1407 internaly this space with the page height. That way, the caller
1408 can adjust the space to use.
1409 (make-page-from-systems, walk-paths): compute space to fill before
1410 calling space-systems.
1412 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1414 * scm/script.scm (default-script-alist): set paddings for every
1415 type here, increase for portato mark.
1417 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1420 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1422 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1423 use spanner::set-spacing-rods
1425 * lily/note-column.cc: reformat.
1427 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1428 step positioning for note/rest combinations.
1430 * input/regression/rest-note-collision.ly: new file.
1432 * scm/define-grobs.scm (all-grob-descriptions): add
1435 * flower/include/std-vector.hh: switch off again.
1437 * VERSION (PATCH_LEVEL): bump to 2.9.18
1439 * flower/include/std-string.hh: idem.
1441 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1443 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1445 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1448 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1450 * Documentation/user/page.itely: update page breaking documentation
1452 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1454 * lily/note-collision.cc (calc_positioning_done): only access
1455 first head if available.
1457 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1459 * scm/framework-ps.scm (output-preview-framework): use new name.
1461 * lily/program-option.cc (internal_set_option): use new names.
1463 * Documentation/user/SConscript (lilypond_book_flags): update -d
1466 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1467 output into other programs): new variable names.
1469 * scm/lily.scm (define-scheme-options): uniformize var names.
1471 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1472 tuplets_ is non-empty before popping.
1474 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1476 * lily/spanner.cc (find_broken_piece):
1477 * lily/spacing-spanner.cc (get_columns):
1478 * lily/source-file.cc (get_line):
1479 * lily/simple-spacer.cc (get_column_description):
1480 * lily/keyword.cc (lookup):
1481 use the new binary search.
1483 * flower/include/std-vector.hh: replace binary_search with
1484 a more STL-like version
1486 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1488 * lily/tie-performer.cc: remove unused last_event_ property.
1489 (class Tie_performer): add now_tied_heads_ property for
1490 partially-tied heads.
1491 (acknowledge_audio_element): when adding an Audio_note, put the
1492 note in now_tied_heads_ if the audio note is partially tied.
1493 (stop_translation_timestep): always include entries in
1494 now_tied_heads_ in heads_to_tie_.
1496 * lily/drum-note-performer.cc (process_music): look for tie-events
1497 in the articulations; pass to Audio_note constructor.
1499 * lily/note-performer.cc (process_music): look for tie-events in
1500 the articulations; pass to Audio_note constructor.
1502 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1505 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1506 include initializer in constructor.
1508 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1510 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1511 unless they are breakable. This fixes discrepancies between the forces
1512 calculated here and the forces calculated in get_line_configuration.
1514 * lily/grob.cc (pure_relative_y_coordinate): fix some
1515 mis-estimation that was happening with piano staves.
1517 * lily/constrained-breaking.cc (resize): don't choke if we get a
1518 measure that won't fit on a line.
1519 (combine_demerits): don't consider uniformity when ragged
1521 * lily/page-spacing.cc (solve): why the f* were there two of these?
1522 (calc_subproblem): properly handle the case where a system is taller
1525 * lily/system.cc (get_paper_system): ensure that all the permissions
1526 and penalties are passed to the paper systems.
1528 * lily/page-breaking.cc (create_system_list): support system-count.
1530 * scm/define-grobs.scm (pure-print-callbacks): add
1531 ly:script-interface::print
1533 * lily/page-spacing.cc (min_page_count): fix calculation of min
1534 pages if we are ragged and there are non-zero springs.
1536 * scm/layout-page-layout.scm: if the pure-height estimates are under
1537 the real height, allow space-systems to ignore padding if it is
1538 needed in order to fit the systems on one page
1540 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1542 (solve): fix performance problem. Make sure we always get at least
1545 * lily/page-breaking.cc (make_pages): include write-page-breaks
1548 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1550 * scm/define-grobs.scm: add the new slur-callback
1551 fix pure-relevant to not exclude grobs whose extent is already
1554 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1557 * lily/slur.cc (pure_height): new callback to estimate the height
1560 2006-09-02 Graham Percival <gpermus@gmail.com>
1562 * Documentation/user/invoking.itely: small update on
1563 MacOS X notes; thanks Trevor!
1565 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1567 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1569 * lily/lexer.ll: accept EOF in all states.
1571 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1573 * lily/source-file.cc (Source_file): always 0-terminate character
1574 array, to prevent Flex from barfing.
1576 * lily/global-context.cc (get_output): robustness: don't crash if
1577 no Score context found.
1579 * lily/include/book.hh (class Book): idem.
1581 * lily/include/context-def.hh (struct Context_def): idem.
1583 * lily/include/score.hh (class Score): don't derive from Input.
1585 * lily/book.cc (Book): add a copy ctor.
1587 * buildscripts/output-distance.py (FileLink.calc_distance): count
1588 orphans in distance too.
1590 * python/midi.c (midi_parse_track): robustness: don't read past
1593 * ly/performer-init.ly: add Control_track_performer, move
1594 Tempo_performer and Time_signature_performer to Score.
1596 * lily/score-performer.cc (acknowledge_audio_elements): override
1597 from base class: add to audio-columns
1599 * lily/control-track-performer.cc (add_text): new file: generate
1602 * lily/performance.cc: move output_header_track to
1603 Control_track_performer ()
1605 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1607 * lily/include/midi-item.hh (class Midi_channel_item): insert
1608 class into hierarchy, for items that can have a channel setting. Dehungarify.
1610 * lily/include/performer.hh (class Performer): remove
1611 play_element(); move functionality into announce/acknowledge.
1613 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1615 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1616 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1618 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1620 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1623 * lily/all-font-metrics.cc: remove TFM support.
1625 * lily/include/tfm.hh: remove TFM support, TFM reader.
1627 * lily/include/binary-source-file.hh: remove Binary_source_file.
1629 2006-08-27 Graham Percival <gpermus@gmail.com>
1631 * Documentation/topdocs/NEWS.itely: add @c marker for
1632 stuff I've processed.
1634 * Documentation/user/ various: info from NEWS.
1636 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1638 * lily/paper-column-engraver.cc (finalize): Oops, this change
1639 should have gone in on 2006-08-23
1641 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1643 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1644 quotes to quote arguments. Fixes Windows problem.
1646 * python/lilylib.py (progress): idem
1648 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1650 * scripts/musicxml2ly.py: fix for importing
1651 minor key signatures from MusicXML. (Phillip Kirlin)
1653 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1655 * python/musicxml.py:
1656 (Attributes.get_key_signature): now correctly retrieves mode from
1659 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1661 * lily/parser.yy (output_def_body): take ownership of identifier
1664 * Documentation/user/advanced-notation.itely (Metronome marks):
1665 update use of \tempo in \midi.
1667 * VERSION: release 2.9.16
1669 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1671 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1674 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1676 * input/regression/tie-chord-partial.ly: clarify example.
1678 * scm/define-music-properties.scm (all-music-properties): remove
1681 * ly/music-functions-init.ly: remove \untied.
1683 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1684 stream events and music events.
1685 (stop_translation_timestep): search acknowledged heads for
1688 * input/regression/tie-chord-partial.ly: new file.
1690 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1691 for \char markup command.
1693 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1695 * scm/define-music-types.scm (music-descriptions): consistency:
1696 Use solo-{one,two}-event iso. solo-[12]-event.
1698 * lily/part-combine-engraver.cc (process_music):
1699 Use solo-{one,two}-event iso. solo-[12]-event.
1701 * ly/declarations-init.ly (partCombineListener): add Timing as
1704 * flower/std-string.cc (string_copy): use copy ()
1706 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1708 2006-08-24 Graham Percival <gpermus@gmail.com>
1710 * Documentation/user/changing-defaults.itely, global.itely,
1711 lilypond-book.itely, page.itely: minor changes from mailist.
1713 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1715 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1718 * scm/define-context-properties.scm
1719 (translator-property-description): robustness: detect type errors
1720 in property definitions.
1722 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1723 after getting it from SCM.
1725 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1728 * lily/include/performer.hh (class Performer): strip get_tempo()
1731 * lily/midi-def.cc: strip file.
1733 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1735 * lily/include/context-def.hh (struct Context_def): use
1736 VIRTUAL_COPY_CONSTRUCTOR().
1738 * lily/source-file.cc: smobification.
1740 * lily/include/source-file.hh (class Source_file): smobify
1741 Source_file. Trim redundant members.
1743 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1744 clones after creation. This plugs a huge memory leak.
1746 * python/convertrules.py (FatalConversionError.sub_tempo):
1747 complete rule for \midi{ \tempo }
1749 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1751 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1753 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1755 * input/regression/optimal-page-breaking-hstretch.ly: test for
1756 ragged-last-bottom also
1758 * lily/paper-column-engraver.cc (finalize): make the end of a score
1759 breakable by default. This is to balance out a change in behaviour
1760 of the page-turn-breaker which no longer makes the end of a score
1763 * lily/paper-book.cc (pages): set the systems_ once the pages are
1766 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1767 Page_breaking interface.
1769 * lily/page-breaking.cc (class Page_breaking): make the interface
1770 more consistent and provide abstractions for dealing with
1773 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1774 algorithm. Use the new interface to Page_breaking.
1776 * lily/page-spacing.cc: better support for ragged-bottom and
1779 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1781 * python/convertrules.py (conv): warning on \tempo{}
1783 * ly/performer-init.ly: set tempoWholesPerMinute.
1785 * ly/midi-init.ly: remove \midi
1787 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1790 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1791 tempoUnitDuration for determining what to print.
1793 * lily/lyric-extender.cc: typo.
1795 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1797 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1800 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1802 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1803 eps-pad-boxes is set.
1805 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1807 * THANKS: update sponsors.
1809 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1811 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1813 * input/regression/tie-chord-untied.ly: new file.
1815 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1817 * scm/define-music-properties.scm (all-music-properties): add
1820 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1822 (headertext_nopics): sanitize no-examples text.
1824 * scm/page.scm (make-page-stencil): don't rely on extents of
1825 page-stencil. This fixes spurious space around .EPS files produced
1826 with the EPS backend.
1828 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1830 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1832 * lily/hara-kiri-engraver.cc (process_music): remember
1833 keepAliveInterfaces after processing \set
1835 * lily/lyric-extender.cc (print): support left/right-padding for
1838 * scm/documentation-generate.scm (string-append): revert lilypond/
1841 2006-08-20 Graham Percival <gpermus@gmail.com>
1843 * Documentation/user/lilypond.tely: clarification to
1844 license presentation (not to actual license).
1846 * Documentation/user/basic-notation.itely,
1847 instrument-notation.itely: minor changes.
1849 * input/ {regression, test}/+.ly: clarification to
1850 text (you can click on examples). Thanks, Mats!
1852 * input/manual/bar-lines.ly: adds ||: repeats.
1854 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1856 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1858 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1860 * Documentation/user/lilypond.tely: strip lilypond/ from info
1861 links, rename to category LilyPond
1863 * lily/pango-font.cc (description_string): new function.
1865 * VERSION: release 2.9.15
1867 * lily/spacing-engraver.cc (stop_translation_timestep): use
1868 Dscho's fix for spacing spanner.
1870 * scm/define-music-types.scm (music-descriptions): use
1871 apply-output-event for ApplyOutputEvent
1873 * lily/output-property-engraver.cc (listen_apply_output): rename
1874 from listen_layout_instruction.
1876 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1879 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1881 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1882 commandline args with contains, split by \n.
1884 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1885 write snippet-names file, call with -dread-file-list. Fixes
1886 command limitations on 64-bit systems.
1888 * input/regression/stencil-color-rotation.ly: new file.
1890 * lily/include/translator.hh (struct Acknowledge_information):
1891 revert: don't use Protected_scm in global objects, as GUILE can't
1892 handle gc_unprotect from automated destructors on MacOS X.
1894 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1895 color, not the original stencil. Fixes combinations of
1896 color/transparency/rotation.
1898 * scripts/lilypond-book.py (main): add --formats=eps for
1901 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1902 crash if spacing_ is nonexistent.
1904 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1906 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1907 \catcode`\@=12 in the LaTeX output.
1909 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1911 * scm/define-music-types.scm (music-descriptions):
1912 use sustain-event iso. sustain-pedal-event.
1914 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1916 * scripts/convert-ly.py: honour the -n command-line switch
1918 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1920 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1921 break specification.
1923 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1925 * Documentation/user: convert-ly the user manual
1927 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1929 * stepmake/aclocal.m4: version check patch (thanks MWD)
1931 * ly/music-functions-init.ly: robustness. Don't crash if
1932 currentBarNumber is not a number.
1934 * VERSION (PATCH_LEVEL): bump.
1936 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1938 * stepmake/aclocal.m4: better version check; handle fooX.Y
1941 * ly/performer-init.ly: instrument name fixup.
1943 * input/manual/chord-names-jazz.ly (banterProperties):
1944 instrumentName update
1946 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1948 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1950 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1951 function. Use hash tables to check membership.
1953 * lily/general-scheme.cc (LY_DEFINE): new function.
1955 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1957 * lily/include/translator.hh (struct Acknowledge_information): add
1960 * ly/music-functions-init.ly: change name to BreathingEvent
1962 * input/regression/*.ly: apply it.
1964 * python/convertrules.py (conv): better instrumentName conversion
1967 * scm/define-music-types.scm (music-descriptions): add
1968 line-break-event to LineBreakEvent music
1970 * lily/music.cc (to_event): don't crash if music type not set.
1972 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1975 * lily/spacing-engraver.cc (stop_translation_timestep): set
1976 spacing for proportional notation too.
1978 * scm/translation-functions.scm (format-bass-figure): inspect
1981 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1983 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1985 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1987 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1989 * scm/layout-page-layout.scm (make-page-from-systems): new function
1990 (optimal-page-breaks): use the new page-breaking calling convention
1992 * scm/define-context-properties.scm (all-user-translation-properties):
1995 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1996 revokePageTurns functionality. If there is a special barline within
1997 the breakable region, break there instead of at the end of the region.
1999 * lily/paper-book.cc (pages): use the new page-breaking calling
2002 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2004 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2006 * scripts/lilypond-book.py: insert \sourcefileline command in
2007 output, so lilypond error messages refer to the spot in the
2008 original .lytex / .itely sourcefile.
2010 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2012 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2013 space to next column for distance to fixed col.
2015 * VERSION (PACKAGE_NAME): release 2.9.14
2017 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2020 * lily/accidental-engraver.cc (process_acknowledged): don't create
2021 accidental for trill span event. This fixes spurious accidentals
2024 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2026 * scm/define-grob-properties.scm (all-user-grob-properties):
2027 Clarify documentation of side-axis and direction. Thanks to Paul
2028 for the inspiration.
2030 * lily/bar-line.cc: Add documentation for "||:" also in the
2031 interface documentation.
2033 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2035 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2037 * lily/paper-column.cc (set_system): new function.
2039 * lily/spacing-engraver.cc (stop_translation_timestep): store
2040 SpacingSpanner refs in Paper_column.
2042 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2043 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2045 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2047 * lily/beam-engraver.cc (listen_beam): add method for
2048 Grace_beam_engraver too.
2050 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2052 * python/convertrules.py: Fix indentation bug that broke
2053 conversion of files older than 1.3.117.
2054 Fix escape error in the description for 2.9.6.
2056 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2058 * lily/*-engraver.cc: convert all try_music functions to listen_*
2061 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2062 enums to represent pedal types, and calculate more data statically.
2064 * scm/part-combiner.scm (recording-group-emulate): create a
2065 softcoded substitute for recording-group-engraver.cc.
2067 * lily/music.cc: make a common transpose function for events and
2070 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2071 ManualMelismaEvent, and obsoletes Melisma_translator.
2073 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2075 * input/test/instrument-name-align.ly: update version.
2077 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2079 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2080 Doc the --pdf flag to lilypond-book.
2082 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2084 * Documentation/topdocs/NEWS.tely (Top): add description.
2086 * input/regression/tuplet-full-length-note.ly: add file.
2088 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2089 always store axis group.
2091 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2093 * input/regression/instrument-switch.ly: new file.
2095 * lily/instrument-switch-engraver.cc (process_music): new file.
2097 * ly/engraver-init.ly: add Instrument_switch_engraver
2099 * ly/music-functions-init.ly: \instrumentSwitch
2101 * scm/define-context-properties.scm
2102 (all-user-translation-properties): add instrumentCueName
2104 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2106 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2108 * ly/music-functions-init.ly: music function \transposition.
2110 * lily/parser.yy (command_element): softcode \transposition.
2112 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2113 (process_music): oops.
2115 * lily/instrument-name-engraver.cc (start_spanner): new
2116 function. Create spanner when property changes.
2117 (stop_spanner): new function.
2119 * python/convertrules.py (conv): add rule.
2121 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2122 shortInstrumentName iso. instr.
2124 * scm/output-ps.scm (dashed-line): add phase argument to
2127 * lily/bar-line.cc (dashed_bar_line): new function.
2128 (compound_barline): support \bar "dashed".
2130 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2131 --output=DIR to DIR/BASE if it is a dir.
2133 * flower/file-name.cc (file_part): new function
2134 (dir_part): new function
2136 * lily/lily-parser-scheme.cc (LY_DEFINE):
2138 * DEDICATION: update
2140 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2142 * lily/instrument-name-engraver.cc: formatting.
2144 * python/convertrules.py (conv): bugfix for \epsfile.
2146 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2150 * lily/gourlay-breaking.cc: Oops, these should have been included
2153 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2155 * scripts/*.py (program_name): cleanup relocation snippets.
2157 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2159 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2161 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2162 page-breakable by default
2164 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2165 correctly calculated for a single-system page
2167 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2168 bigger than the second number
2170 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2171 acknowledge that we aren't satisfying constraints)
2173 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2176 * lily/grob.cc (pure_height): add minimum-Y-extent
2178 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2181 * lily/constrained-breaking.cc: convert code to use new Matrix class
2182 (get_best_solution): new function
2184 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2185 is a page with no systems
2187 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2189 * VERSION (PACKAGE_NAME): release 2.9.13
2191 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2194 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2196 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2198 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2201 * scm/define-grob-properties.scm (all-user-grob-properties):
2202 remove grace-space-factor.
2204 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2205 grace-spacing-interface
2206 (spacing-options-interface): add.
2208 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2210 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2212 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2213 GraceSpacing object.
2215 * lily/note-spacing.cc: fix prop list formatting
2217 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2218 beaming for grace notes too.
2220 * input/regression/spacing-grace.ly: update.
2222 * lily/grace-spacing-engraver.cc: new file.
2224 * lily/spacing-spanner.cc: add strict-grace-spacing.
2226 2006-07-20 Graham Percival <gpermus@gmail.com>
2228 * lily/parser.yy: compile fix.
2230 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2232 * scm/define-grobs.scm (all-grob-descriptions): typo.
2234 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2235 .eps extension from includegraphics.
2237 * scripts/lilypond-book.py (main): add support for --pdf.
2239 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2240 callback to compute common shortest duration.
2241 (set_springs): typo.
2243 * scm/define-grob-properties.scm (all-user-grob-properties): add
2244 strict-grace-spacing.
2246 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2247 support float_grace_columns_.
2249 * lily/spacing-options.cc (init_from_grob): new file.
2251 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2253 * input/regression/spacing-loose-grace.ly: new file.
2255 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2257 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2258 tupletFullLengthNote too. Choose right bound depending on value.
2260 * input/regression/tuplet-full-length-note.ly: new file.
2262 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2264 * lily/*-performer.cc: Converted try_music to listen_*
2266 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2267 as a stream-event internally. Introduce event_cause (), deprecate
2270 * scm/define-music-types.scm: Removed BusyPlayingEvent
2272 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2274 * Documentation/user/advanced-notation.itely (Font selection):
2275 Document how to get a list of available fonts using 'lilypond
2276 -dshow-available-fonts blabla'.
2278 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2280 * GNUmakefile.in: filter lily-XXX.pdf files.
2282 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2284 * scm/define-grob-properties.scm (all-internal-grob-properties):
2285 remove delta-pitch. Use delta-position everywhere.
2287 * scm/output-lib.scm (fall::print): use new order.
2289 * scm/output-ps.scm (path): reorder arguments.
2291 * scm/output-svg.scm (path): support for path primitive.
2293 * input/regression/bend-after.ly: new file.
2295 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2296 recipe for eps -> pdf conversion.
2298 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2300 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2303 2006-07-19 Graham Percival <gpermus@gmail.com>
2305 * input/manual/screech-boink.ly: moved to here.
2307 * input/screech-boink.ly: deleted.
2309 * scm/define-grob-properties.scm: clarify doc string.
2311 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2313 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2315 * scm/output-ps.scm (path): define path.
2317 * scm/define-stencil-commands.scm
2318 (ly:register-stencil-expression): add path.
2320 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2322 * ly/engraver-init.ly: add Fall_engraver
2324 * lily/parser.yy (music_function_event): allow musicfunction
2325 without music arg as music_function_event.
2327 * lily/grob-scheme.cc (LY_DEFINE):
2328 ly:grob-robust-relative-extent. New function.
2330 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2332 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2334 * scm/output-lib.scm (fall::print): new function
2336 * lily/fall-engraver.cc (stop_fall): new file.
2338 * ly/music-functions-init.ly: alphabetise.
2340 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2343 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2345 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2347 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2350 * lily/translator-group.cc (connect_to_context): non const error message.
2352 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2354 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2357 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2359 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2361 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2364 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2366 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2368 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2370 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2372 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2374 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2376 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2378 * scm/layout-page-layout.scm: Define module, tidy code, use more
2379 functions iso. a single big one.
2381 * scm/layout-page-dump.scm: move page dump functions used in two
2382 pass spacing to this file. Define module.
2384 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2387 * ly/paper-defaults.ly: use module layout-page-layout.
2389 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2391 * lily/music.cc: Revised MusicEvent event class. It now contains
2392 event data directly instead of encapsulating it in music. The
2393 previously used class is renamed to OldMusicEvent.
2395 * lily/stream-event.cc: Stream events are now probs.
2397 * lily/translator-group.cc, lily/translator.cc: Translators can
2398 now listen directly to stream events, by using macros
2399 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2401 * lily/arpeggio-engraver.cc: Converted to use new event system
2403 * THANKS: Corrected spelling mistake.
2405 2006-07-12 Graham Percival <gpermus@gmail.com>
2407 * Documentation/user/SConscript, make/lilypond-vars.make,
2408 input/GNUmakefile: doc build looks in input/manual instead
2411 * input/manual/ GNUmakefile, SConscript: build files for
2414 * input/test/ various: some files moved to input/manual/
2416 * Documentation/user/basic-notation.itely: small updates;
2417 thanks Kieren and Charles!
2419 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2421 * VERSION (PACKAGE_NAME): release 2.9.11
2423 * Documentation/topdocs/NEWS.tely (Top): update prop value
2425 * Documentation/user/basic-notation.itely (Tuplets): new property
2428 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2430 * python/convertrules.py (conv): tweaks.
2432 * VERSION (PATCH_LEVEL): bump version.
2434 * python/convertrules.py (conv): add rule for
2435 tupletNumberFormatFunction.
2437 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2438 tupletNumberFormatFunction.
2440 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2441 text through 'text callback.
2443 * lily/time-scaled-music-iterator.cc (construct_children): copy
2444 tweaks generated events.
2446 * scm/define-context-properties.scm
2447 (all-user-translation-properties): remove tupletNumberFormatFunction
2449 * lily/tuplet-engraver.cc (process_music): don't read
2450 tupletNumberFormatFunction
2452 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2455 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2457 * lily/global-context-scheme.cc: Separated ly:run-translator into
2460 * lily/score-engraver.cc, lily/score-performer.cc,
2461 scm/define-context-properties.scm: Make paper/midi output
2462 accessable as a context property.
2464 * lily/score-translator.cc, lily/score-context.cc: Removed.
2466 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2468 * scm/ps-to-png.scm (Module):
2469 * scm/framework-tex.scm (Module):
2470 * scm/framework-ps.scm (Module):
2471 * scm/backend-library.scm (Module):
2472 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2473 "dDEVICEHEIGHTPOINTS".
2475 2006-07-04 Graham Percival <gpermus@gmail.com>
2477 * Documentation/user/ various: general improvements to
2478 "working with lilypond files" section.
2480 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2482 * lily/sequential-iterator.cc: Change the default get_music_list
2483 to read elements-callback music property
2485 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2486 processing of multimeasure rests. Softcoded
2487 sequential-music-iterator.
2489 * lily/sequential-music-iterator.cc: Removed.
2491 2006-06-28 Graham Percival <gpermus@gmail.com>
2493 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2495 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2497 * lily/parser.yy: Wrap non-post-events in EventChords before
2498 assigning them to identifiers.
2500 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2502 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2503 gives correct vertical placement of \bar ":" in all staff
2504 sizes. Thanks Martial!
2506 2006-06-26 Graham Percival <gpermus@gmail.com>
2508 * Documentation/user/invoking.itely : minor update from mailist.
2510 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2512 * lily/ various: Introduce stream events of types Prepare,
2513 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2514 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2516 * lily/global-context*.cc: Time is now -inf before iteration
2519 * lily/include/context.hh: Removed unique_, init_
2521 * Documentation/topdocs/NEWS: Make the feathered beam example
2522 avoid triggering a bug.
2524 2006-06-24 Graham Percival <gpermus@gmail.com>
2526 * Documentation/user/ various: small additions from mailist.
2528 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2530 * ly/performer-init.ly: Add some missing links in the context
2531 hierarchy for MIDI output. There are probably some more missing!
2533 2006-06-21 Graham Percival <gpermus@gmail.com>
2535 * Documentation/user/ various: minor spelling fixes;
2536 thanks Dave Luttinen!
2538 * Documentation/user/ various: small clarifications;
2539 thanks Anthony Youngman!
2541 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2543 * po/fr.po: add \n appropriately.
2545 * lily/lexer.ll: remove ? from version-seen?
2547 2006-06-19 John Mandereau <john.mandereau@free.fr>
2549 * po/fr.po; update translation, by Jean-Charles Malahieude and
2552 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2554 * THANKS: add Markus Schneider.
2556 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2557 Staff_symbol_engraver
2559 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2560 replace staff_engraver
2562 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2565 * lily/staff-collecting-engraver.cc
2566 (acknowledge_end_staff_symbol): new function
2568 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2570 * lily/staff-collecting-engraver.cc
2571 (acknowledge_end_staff_symbol): new function.
2573 * lily/main.cc: switch on relocation by default.
2575 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2577 * lily/spacing-spanner.cc (musical_column_spacing): set
2578 compound_fixed_note_space to 0.0. Document why.
2580 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2581 range of inverse_hooke_
2582 (Simple_spacer): init completely.
2584 (get_line_configuration): don't use cols.resize(); it introduces
2587 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2589 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2591 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2592 try. Divide by beatlength.
2594 * input/regression/beaming-ternary-metrum.ly: update doc.
2595 add beatLength hack.
2597 * scm/music-functions.scm (make-time-signature-set): add
2598 standard-beat-grouping.
2600 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2602 * input/regression/tie-whole.ly: new file.
2604 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2605 cross center of note head in case of invisible stem.
2607 2006-06-16 Graham Percival <gpermus@gmail.com>
2609 * Documentation/user/ various: small fixes from mailist.
2611 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2613 * lily/breathing-sign.cc (offset_callback): idem.
2615 * lily/align-interface.cc (align_to_fixed_distance): remove
2618 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2621 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2623 * VERSION (PACKAGE_NAME): release 2.9.9
2625 * ly/lilypond-book-preamble.ly: add \version
2627 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2629 * scripts/lilypond-book.py (PREAMBLE_LY): include
2630 lilypond-book-preamble.ly
2632 * lily/stem.cc (get_beaming): return max of 0 and
2633 scm_ilength. Fixes slurring from/to beams.
2635 * ly/lilypond-book-preamble.ly: new file.
2637 * lily/slur.cc: add inspect-index feature.
2639 2006-06-13 Graham Percival <gpermus@gmail.com>
2641 * Documentation/user/tutorial.itely: trivial fix.
2643 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2645 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2646 all non-event music in the parser via MAKE_SYNTAX.
2648 * lily/parser-scheme.cc: Add ly:parser-error function
2650 * scm/paper.scm: fix typo
2652 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2656 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2659 * buildscripts/output-distance.py (test_compare_signatures):
2661 (read_signature_file): use new signature format.
2663 * scm/stencil.scm (write-system-signature): simpler signature
2666 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2669 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2670 stem_end_position, but estimate instead.
2672 * lily/tuplet-bracket.cc (calc_positions): look at
2673 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2674 brackets narrower than beams.
2676 * lily/lexer.ll: set version-seen? even if version is
2679 * lily/rest.cc (y_offset_callback): bugfix: decide position
2680 override based on scm_is_number(). Fixes \rest on center staff
2683 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2684 patterns for 16th triplets.
2686 2006-06-10 Graham Percival <gpermus@gmail.com>
2688 * Documentation/user/ page.itely, global.itely: editing
2691 * Documentation/user/ various: findex -> funindex.
2693 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2695 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2696 insert extra tuplet events.
2698 2006-06-10 Graham Percival <gpermus@gmail.com>
2700 * Documentation/user/programming-interfaces.itely: add
2703 * python/convertrules.py: add annotatefoo -> annotate-foo
2706 * Documentation/user/global.itely: start editing.
2708 * Documentation/user/page.itely: major editing, new spacing
2711 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2713 * scm/define-markup-commands.scm (wordwrap-markups): use
2714 output-def 'line-width if undefined.
2716 * HACKING: trim outdated info.
2718 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2720 * scm/define-grobs.scm (all-grob-descriptions): Add
2721 line-spanner-interface to all grobs that already have
2722 text-spanner-interface or dynamic-text-spanner-interface
2724 * scm/page.scm: Rename annotate{headers,systems,page}->
2727 * input/regression/page-spacing.ly,
2728 input/regression/page-layout-manual-position.ly: idem
2730 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2732 * lily/line-spanner.cc: cleanup property list.
2734 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2735 generator expressions (2.3 compat).
2737 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2739 * lily/vertical-align-engraver.cc: Make sure that the
2740 align{Above,Below}Context properties are included in the automatic
2743 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2745 * scm/paper-system.scm (paper-system-annotate): also annotate the
2746 estimated pure-Y-extent
2748 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2750 * lily/system.cc (break_into_pieces): set the estimated height
2751 of each child system
2753 * lily/stem.cc (pure_height): new pure-Y-extent callback
2755 * lily/staff-symbol-referencer.cc (callback): don't destroy
2756 the staff-position property
2758 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2759 consider_suicide into two functions
2761 * lily/constrained-breaking.cc (resize): use the new pure
2762 callbacks to estimate the height of a system
2764 * lily/axis-group-interface.cc (pure_group_height): new
2765 side-effect-free VerticalAxisGroup height-callback
2767 * lily/align-interface.cc (get_extents_aligned_translates):
2768 split align_elements_to_extents into two functions
2769 (get_pure_child_y_translation): new function
2771 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2773 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2775 * lily/paper-score.cc: cache break_indices and columns
2777 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2779 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2781 * lily/font-config.cc (init_fontconfig): do the init if
2782 cache_file, but don't look at cache_file.
2784 * input/regression/quote-tie.ly: new file.
2786 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2787 to Head_event_tuple, so we deal gracefully with ties on
2790 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2793 2006-06-08 Graham Percival <gpermus@gmail.com>
2795 * input/test/ smart-transpose.ly, reverse-music.ly:
2796 \applyMusic to music functions update, thanks Michael!
2798 2006-06-07 Graham Percival <gpermus@gmail.com>
2800 * input/test/ add-staccato.ly, add-text-script.ly,
2801 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2802 music functions update, thanks to Michael Meixner.
2804 * Documentation/user/music-glossary.tely: small fix
2807 * Documentation/user/ various: minor additions from mailist.
2809 * Documentation/user/lilypond.tely, basic-notation.itely:
2810 small test of @funindex. (works here)
2812 * input/test/font-table.ly: reduce size to partially
2813 de-ugly version in manual.
2815 * Documentation/user/page.itely: new file (split former
2816 "global issues" into "page settings" and "non-musical
2819 * Documentation/user/ various: fix @ref{}s to match
2820 new chapter names (above).
2822 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2824 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2826 2006-06-06 Graham Percival <gpermus@gmail.com>
2828 * Documentation/user/advanced-notation.itely: add example
2829 for segno/coda on barline.
2831 * tex/texinfo.tex: merge from upstream.
2833 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2835 * scripts/lilypond-book.py (process_snippets): Argument fix.
2838 * buildscripts/builder.py:
2841 * Documentation/user/SConscript: More SCons fixes.
2843 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2845 * lily/font-config.cc (init_fontconfig): Only initialize if
2846 global cache_file is found.
2848 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2850 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2853 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2855 * VERSION (PACKAGE_NAME): release 2.9.8
2857 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2858 function. Delay ledger modifying ledgered grobs to
2859 stop_translation_timestep(), to ensure that we're ledgering
2860 according to the new spanner.
2861 (acknowledge_staff_symbol): don't check for non-NULL
2862 staff_sym->get_bound()
2864 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2867 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2870 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2871 directly from srcdir/stepmake/aclocal.m4
2873 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2876 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2878 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2880 * lily/simple-spacer.cc (get_line_configuration): add
2881 keep-inside-line rods
2882 (struct Column_desc): add constructor
2883 (struct Rod_desc): add constructor
2884 (get_line_forces): check for forced page breaks here too
2886 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2887 support/elements cycles between InstrumentNames and AxisGroups
2889 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2891 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2893 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2894 make-txt-files target.
2896 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2897 make-txt-files target.
2899 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2901 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2904 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2906 * Documentation/user/instrument-notation.itely,
2907 input/regression/breathing-sign-ancient.ly,
2908 input/test/divisiones.ly: Removed redundant property settings for
2911 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2912 fix lyrics alignment problems. They are implemented now as scheme
2913 functions that add the appropriate unicode char to the first lyric
2914 event rather than adding a separate lyric event. Minor edit of
2917 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2919 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2920 pollute src dir with built .txt files, but install directly from
2921 Documentation/topdocs/out/
2923 * buildscripts/output-distance.py
2924 (ComparisonData.create_html_result_page): put version/directories
2927 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2930 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2931 Patch by Karl Hammar
2933 * buildscripts/readlink.py: add file.
2934 Patch by Karl Hammar
2936 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2938 * lily/tuplet-number.cc (print): prevent stencil from being
2941 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2943 * scm/stencil.scm (write-system-signature): explicitly
2944 -well, superfluously- close output port.
2946 * buildscripts/output-distance.py (main): oops. Add extra argument.
2948 2006-06-05 Graham Percival <gpermus@gmail.com>
2950 * Documentation/user/music-glossary.tely: clarified example
2951 from Francisco Vila, thanks!
2953 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2955 * input/regression/spacing-section.ly: new file.
2957 * lily/input.cc (programming_error): new function.
2959 * lily/spacing-engraver.cc (try_music): new function. Accept
2960 spacing-section-event
2962 * lily/spacing-spanner.cc (set_springs): take slices of all
2963 columns for spacing.
2965 * lily/include/paper-column.hh (class Paper_column): add
2966 Paper_column::compare.
2968 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2970 * scm/define-music-types.scm (music-descriptions): add
2973 * lily/music-iterator.cc (report_event): use programming_error for
2974 sending non-event error.
2976 * lily/input.cc (programming_error): new function
2978 * buildscripts/output-distance.py (main): use compare-XXX for
2980 (main): --threshold option, default at 0.30
2982 * output-distance.py (main): add --threshold option.
2984 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2986 * scm/paper-system.scm (paper-system-annotate): fix problem when
2987 annotating an empty system
2989 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2991 * GNUmakefile.in: reinstate old web tar/copying.
2993 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2995 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2996 nothing changes. (Erik S)
2998 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3001 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3003 * scm/define-markup-commands.scm (whiteout): do not force
3004 foreground color of argument markup to black.
3006 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3007 the left of the arrow, instead of below the arrow name, so that,
3008 when two little arrows are vertically stacked, their dimensions
3009 and name should not overlap. Add a color key parameter.
3011 * scm/paper-system.scm (paper-system-annotate): Annotate
3012 next-space+next-padding instead of next-space. Annotate space
3013 between next-padding and next-space+padding, respectively, and
3014 following system extent and refpoint-Y-extent. Use colors.
3016 * scm/page.scm (annotate-page): translate annotations slightly to
3019 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3021 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3022 fix for x-staff slurs. Thanks Joe!
3024 * buildscripts/output-distance.py
3025 (SystemLink.output_expression_change_count): keep track of changed
3026 details, and dump in details html page.
3028 * input/regression/figured-bass-staff.ly: add note about setting
3029 properties in Staff context.
3031 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3032 add slurs and ties to support too.
3034 * buildscripts/output-distance.py (main): set dest_dir
3035 argument. Add --max-count option.
3037 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3039 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3040 shortcuts for special unicode chars that are useful in chant
3041 notation. Revised exisiting and added new comments.
3043 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3045 * make/mutopia-rules.make: remove duplicate recipe.
3047 2006-06-02 Werner Lemberg <wl@gnu.org>
3049 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3050 Add support for U+0132 (IJ) and U+0133 (ij).
3052 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3054 * buildscripts/output-distance.py (FileLink): new class. collect
3055 info systems from one .ly file.
3056 (FileLink.link_files_for_html): further tweaks.
3058 2006-06-02 Graham Percival <gpermus@gmail.com>
3060 * tex/texinfo.tex: partial fix for @funindex.
3062 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3065 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3067 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3069 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3070 @example too. Backportme.
3072 2006-06-02 Graham Percival <gpermus@gmail.com>
3074 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3075 from Werner Lemberg.
3077 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3079 * Documentation/user/music-glossary.tely: additional spanish
3080 updates and a lyrics fix in an example.
3082 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3084 * scm/define-grob-properties.scm: Previous patch contained
3085 spurious line from another patch not yet committed. Fixed.
3087 * scm/define-grob-properties.scm: Add missing doc strings for
3090 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3092 * buildscripts/output-distance.py
3093 (ComparisonData.write_text_result_page): separate the scores, sort
3096 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3099 * buildscripts/output-distance.py (me_path): use argv[0] for
3101 (ComparisonData.img_cell): use colored borders.
3103 * scm/stencil.scm (write-system-signature): escape newlines too.
3104 (write-system-signature): use (1,-1) interval for empty interval
3106 2006-01-01 Graham Percival <gpermus@gmail.com>
3108 * Documentation/user/music-glossary.tely: Spanish updates
3109 from Francisco Vila.
3111 * Documentation/user/lilypond-book.itely: addition from
3114 * Documentation/user/ various: edits, small additions
3117 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3119 * GNUmakefile.in (tree-lib-prefix-current):
3120 (tree-share-prefix-current): Use version number in tree, add
3123 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3125 * GNUmakefile.in: write VERSION, again.
3127 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3128 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3130 * stepmake/aclocal.m4: robuster version detection.
3132 * buildscripts/output-distance.py
3133 (ComparisonData.create_html_result_page): copy only if file
3134 exists, fixup src paths.
3136 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3138 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3140 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3141 Another datarootdir reto.
3143 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3144 available. This should be moved to postinstall-lilypond-doc.
3146 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3148 * GNUmakefile.in: simplify local-WWW-post.
3149 remove -type l from find.
3151 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3152 fixes. Don't follow symlinks.
3153 (ComparisonData.create_html_result_page): remove previous results.
3154 insert ../python in path.
3156 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3158 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3160 * config.make.in (datadir): Add datarootdir to silence autoconf.
3162 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3164 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3166 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3168 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3169 slash beams too wide.
3171 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3173 * VERSION: release 2.9.7
3175 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3177 * lily/relocate.cc (read_relocation_dir): Do not blindly
3180 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3182 * lily/parser.yy: replace THIS by PARSER
3184 * Documentation/index.html.in: add link to test-results.html page.
3186 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3188 * scm/translation-functions.scm (format-bass-figure): translate
3189 digits over 10 to the left
3191 * scm/define-markup-commands.scm (translate-scaled): new markup.
3193 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3196 * ly/engraver-init.ly: add Figured_bass_engraver
3198 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3200 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3202 * lily/score-engraver.cc (announce_grob): only note START announces.
3204 * lily/include/engraver-group.hh (Translator_group):
3205 acknowledge_hash_table_ is now drul.
3207 * lily/engraver.cc (announce_end_grob): new method.
3209 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3211 * lily/translator-dispatch-list.cc (create): take start_end argument.
3213 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3214 acknowledge_static_array_ to drul
3216 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3218 * scm/define-grob-interfaces.scm
3219 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3221 * scm/define-grobs.scm (all-grob-descriptions): add
3222 BassFigureAlignmentPositioning
3224 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3225 number stays up to date. Backportme.
3227 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3229 * Documentation/user/basic-notation.itely (Bar lines): Document
3232 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3234 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3236 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3237 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3240 * Resurrect `scons lily' build.
3242 * SConstruct (symlink_tree): Bugfix: link
3243 music-drawing-routines.ps to file iso directory.
3245 * lily/SConscript: Remove kpath-guile from LIBS.
3247 * SConstruct (libdir_package_version): Typo.
3248 (configure): Comment-out fontforge for lack of fontforge.pc .
3249 Also add libdir* to environment.
3251 2006-05-30 Graham Percival <gpermus@gmail.com>
3253 * Documentation/user/ various: minor additions from mailist and
3256 2006-05-30 Paco <fravd@ya.com>
3258 * Documentation/user/music-glossary.tely: numerous corrections and
3259 some new translations.
3261 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3265 * buildscripts/output-distance.py
3266 (ComparisonData.create_html_result_page): new routine: summarise
3267 results in HTML page with images.
3268 (ComparisonData.create_text_result_page): create summary text files too.
3270 * GNUmakefile.in (web-ext): package .signature files too. They
3273 * scm/stencil.scm (write-system-signature): typo.
3275 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3277 * scm/stencil.scm (write-system-signature): better escaping.
3278 only write signature for music systems, not for markup systems.
3280 * scm/framework-ps.scm (output-framework): dump-signatures support
3283 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3285 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3286 for -dno-point-and-click
3288 * lily/grob.cc (get_print_stencil): don't read
3289 point_and_click_global to determine whether to set grob-cause.
3291 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3293 * buildscripts/output-distance.py (main): new function.
3294 (ComparisonData): new class.
3296 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3297 careful with generating new LedgerLineSpanners.
3299 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3301 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3302 context. This fixes double ledger lines in output.
3304 * lily/system.cc (get_paper_system): remove 3 layer limit.
3306 * buildscripts/output-distance.py (SystemLink.distance): new
3307 file. Compare signatures.
3309 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3311 * lily/grob-array.cc (remove_duplicates): rename from
3312 uniq(). Sort before calling uniq() so it actually works.
3314 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3316 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3317 \version from lilypond file snippet.
3318 (Lilypond_file_snippet.ly): oops. typo.
3319 (find_toplevel_snippets): urgh. again.
3321 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3322 prevent duplicated broken items in output.
3324 * scm/framework-eps.scm (output-classic-framework): only dump if
3325 dump-signatures is set.
3327 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3329 * scm/stencil.scm (write-system-signature): new routine: write
3330 python parseable signature of a separate paper system.
3333 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3335 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3339 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3341 * translator-group.cc: send music events to engravers in
3342 non-bottom contexts.
3344 * tuplet-engraver.cc: process tuplet brackets in correct order.
3346 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3348 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3349 arg 2 might point us to a new binary (patch by Karl Hammar)
3351 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3353 * VERSION (PACKAGE_NAME): release 2.9.6
3355 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3357 * Documentation/user/*.itely: 2nd
3358 attempt: replace funindex -> findex globally.
3360 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3362 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3363 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3365 * scm/define-music-display-methods.scm: display methods for
3366 breaks. Fix \applyOutput.
3368 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3370 * Documentation/user/macros.itexi: comment out funindex expansion.
3372 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3375 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3376 Karl Hammar. Backportme.
3378 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3380 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3382 * Documentation/user/programming-interface.itely (Running a
3383 function on all layout objects): idem.
3385 * Documentation/user/introduction.itely (Automated engraving):
3386 update \applyOutput syntax
3388 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3389 remove debugging hook.
3391 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3394 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3396 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3397 TEXI2DVI_FLAGS to texi2dvi invocation.
3399 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3401 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3402 works. More work is done by iterator now, and engraver has been
3403 very much simplified.
3405 * lily/translator-group.cc: try_music is now invoked through a
3408 * lily/*-iterator.cc: Massive cleanups. Junked
3409 try_music_in_children globally. Renamed try_music to report_event,
3410 and made that method descend to a bottom context automatically.
3412 * lily/event-iterator.cc: New file.
3414 * lily/output-property-iterator.cc,
3415 lily/old-lyric-combine-music-iterator.cc: Removed.
3417 * python/convert-rules.py: Modified the syntax for \applyOutput.
3419 2006-05-23 Graham Percival <gpermus@gmail.com>
3421 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3424 * Documentation/user/ various: stuff that might have helped
3425 to fix the pdf creation, plus some minor doc additions.
3427 * Documentation/user/changing-defaults.itely: remove @b from
3428 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3430 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3432 * lily/beaming-pattern.cc (beamify): deal with negative start
3433 moments for beaming patterns.
3435 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3437 * lily/beaming-info.cc (beamify): new function: read beatLength
3438 and beatGrouping from context.
3440 * input/regression/beam-beat-grouping.ly (Module): new file.
3442 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3444 * lily/beam.cc (get_beam_segments): generate events for
3445 max_connect_ case too.
3446 (get_beam_segments): read Stem::max-beam-connect.
3448 * input/regression/beam-single-stem.ly: new file.
3450 * lily/stem.cc (set_beaming): use #f as signaling value for
3453 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3455 * lily/beam.cc (set_beaming): read clip-edges property.
3456 (calc_direction): don't suicide for single stem.
3458 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3459 argument, remove 1<<15 hack. Remove clip_edges()
3461 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3463 2006-05-21 Graham Percival <gpermus@gmail.com>
3465 * Documentation/user/basic-notation.itely: reorg.
3467 * Documentation/user/ various: minor fixes.
3469 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3471 * lily/stencil-expression.cc (register_stencil_head): opps, append
3472 to cdr of static SCM object.
3474 2006-05-19 Graham Percival <gpermus@gmail.com>
3476 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3477 update framework for command index. DOC WRITERS: use @funindex
3478 instead of @cindex @code{}.
3480 * Documentation/user/ various: replace @cindex @code{} => @funindex
3482 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3484 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3485 case positions is set manually.
3487 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3489 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3492 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3494 * Documentation/user/changing-defaults.itely (Contexts explained):
3495 use absolute dimension for @image.
3497 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3498 out image for illustration too.
3499 ($(outdir)/%.png): add more png <-> eps rules.
3501 2006-05-17 Graham Percival <gpermus@gmail.com>
3503 * Documentation/user/ various: remove trailing whitespace, cosmetic
3504 change to reduce changes produced by diff.
3506 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3508 * lily/main.cc (do_chroot_jail): correctness tweak.
3510 * python/lilylib.py (system): import subprocess in system () only.
3512 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3514 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3515 variable. Backportme.
3517 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3519 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3521 2006-05-17 Werner Lemberg <wl@gnu.org>
3523 * lily/lexer.ll (init_signature_has_table): Add
3524 `scm-scm-music-music'.
3526 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3527 (Generic_prefix_music_scm): Add rule for it.
3529 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3530 `quoted-transposition' property.
3532 * ly/music-functions-init.ly (transposedCueDuring): New function.
3534 * scm/define-music-properties.scm (all-music-properties): Updated.
3536 * Documenation/topdocs/NEWS.itely: Document it.
3538 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3540 * python/lilylib.py (system): move import subprocess to system()
3543 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3545 * VERSION (PATCH_LEVEL): release 2.9.5
3547 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3550 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3552 2006-05-16 Graham Percival <gpermus@gmail.com>
3554 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3556 * Documentation/user/ various: minor fixes.
3558 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3560 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3562 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3564 * Documentation/user/advanced-notation.itely (Instrument names):
3565 Modified obsolete instruction on how to move instrument names away
3566 from the staves. Hmm, at second thought the bug probably has been
3567 solved, so the full bug description should probably be removed.
3569 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3571 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3572 currentCommandColumn.
3574 * lily/hairpin.cc (print): also add padding for non-neighbor
3577 * scm/define-context-properties.scm
3578 (all-user-translation-properties): add hairpinToBarline
3580 * input/regression/hairpin-to-barline.ly: new file.
3582 * lily/context.cc (internal_send_stream_event): thinko fix.
3584 * lily/tie.cc (set_default_control_points): robustness fix.
3586 * python/musicxml.py (Part.interpret): don't complain about
3587 incomplete measures.
3589 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3590 new music if last_event_chord() returned None.
3592 * python/musicxml.py (Part.interpret): skip back over chord notes.
3594 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3596 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3597 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3598 lily/slash-repeat-engraver.cc,
3599 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3600 iterator sends PercentEvents
3602 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3603 rework tuplets: send start/stop events to engraver
3605 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3606 dispatchers event-source and events-below to Context
3608 2006-05-15 Graham Percival <gpermus@gmail.com>
3610 * Documentation/user/README.txt: update info for doc writers.
3612 * Documentation/user/programming-interface.itely: integrate
3613 Nicolas' fixes for chapter rewrite.
3615 * Documentation/user/ various: minor fixes.
3617 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3619 * lily/clef-engraver.cc: cleanup.
3621 * Documentation/user/GNUmakefile: dist context-example.eps too.
3623 * lily/key-engraver.cc (create_key): use
3624 explicitKeySignatureVisibility for cancellation too.
3626 * lily/font-config.cc (init_fontconfig): don't close file if
3629 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3631 * Documentation/topdocs/NEWS.tely: niente and rotation news
3633 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3635 * lily/include/stencil.hh
3636 * lily/stencil.cc (rotate): new function. Makes it possible
3637 to rotate a stencil around a given offset.
3639 * lily/grob.cc (get_print_stencil): add rotation support
3641 * lily/stencil-interpret.cc (interpret_stencil_expression):
3642 add rotation support
3644 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3646 * scm/define-grob-properties.scm: add 'rotation property
3648 * scm/define-markup-commands.scm: add rotate markup command
3650 * scm/output-ps.scm: add rotation support in PostScript backend
3652 * scm/output-svg.scm: add rotation support in SVG backend
3654 2006-05-13 Graham Percival <gpermus@gmail.com>
3656 * Documentation/user/music-glossary.itely: French correction.
3658 * Documentation/user/programming-interface.itely: major
3659 new docs, some reorg, some info from Nicolas.
3661 * Documentation/user/ various: small fixes.
3663 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3665 * Documentation/user/programming-interface.itely (Markup
3666 programmer interface): Remove duplicate text.
3668 2006-05-12 Graham Percival <gpermus@gmail.com>
3670 * Documentation/user/context-example.eps: new file.
3672 * Documentation/user/changing-defaults.itely: set up file to
3675 * Documentation/user/programming-interface.itely: changes
3678 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3680 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3682 2006-05-11 Graham Percival <gpermus@gmail.com>
3684 * Documentation/user/programming-interface.itely: first round of
3685 editing and merging emails from Nicolas.
3687 * Documentation/user/scheme-tutorial: minor edit.
3689 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3691 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3693 (Xml_node.message): use it.
3695 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3696 oops. Add duration argument.
3698 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3700 * lily/paper-column-engraver.cc (make_columns):
3701 * scm/define-grobs.scm: Revert my previous change and set the default
3702 in define-grobs.scm instead.
3704 2006-05-09 Graham Percival <gpermus@gmail.com>
3706 * Documentation/user/changing-defaults.itely: general editing,
3707 info about \set and \override.
3709 * Documentation/user/tweaking.itely, advanced-notation.itely:
3710 fixes from Dave Luttinen, thanks!
3712 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3714 * lily/paper-column-engraver.cc (make_columns): By default, a column
3715 needs to be breakable.
3717 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3719 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3721 (musicxml_time_to_lily): idem
3722 (musicxml_key_to_lily): idem
3723 (instrument_drumtype_dict): dict for supported drumtypes.
3724 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3725 moments and pending mm rests
3726 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3727 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3728 (musicxml_voice_to_lily_voice): add mode change.
3729 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3730 speed and less memory usage (factor 5 to 10).
3731 (convert): write -defs.ly and driver file separately so people
3732 can script their own part extraction.
3734 * python/musicxml.py (minidom_demarshal_node): new function:
3735 separate minidom handling.
3736 (lxml_demarshal_node): new function: support lxml.etree too.
3737 (Xml_node.message): new function: verbose error message, with XML
3738 path to offending node.
3739 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3740 (Part_list.generate_id_instrument_dict): new method: collect
3741 instrument names, to be able to set drum_type.
3742 (Part.interpret): handle underfull measures
3743 (Part.interpret): assign instrument names.
3745 * python/musicexp.py (Output_printer.close): new method
3746 (MusicWrapper.print_ly): new class: support other modes,
3748 (BarCheck.print_ly): new class. Support bar checks, with comments
3749 and fancy barchecks.
3750 (NoteEvent.__init__): also set drum_type for drum notes.
3751 (MultiMeasureRest.lisp_expression): dump mm rests.
3753 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3754 line-break-permission if forbidBreak is not set.
3756 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3758 * scm/define-context-properties.scm:
3759 * scm/define-grob-properties.scm:
3760 * scm/define-grobs.scm:
3761 * scm/define-music-display-methods.scm:
3762 * scm/define-music-properties.scm:
3763 * scm/define-music-types.scm:
3764 * scm/music-functions.scm:
3765 * ly/declarations-init.ly:
3766 * lily/include/constrained-breaking.hh:
3768 * lily/spaceable-grob.cc:
3769 * lily/simple-spacer.cc:
3770 * lily/paper-score.cc:
3771 * lily/paper-column.cc:
3772 * lily/paper-column-engraver.cc:
3774 * lily/gourlay-breaking.cc:
3775 * lily/constrained-breaking.cc:
3776 * python/convertrules.py:
3777 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3778 "page-break-penalty" and "line-break-permission".
3779 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3780 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3782 * lily/bar-engraver.cc:
3783 * lily/beam-engraver.cc:
3784 * lily/forbid-break-engraver.cc:
3785 * lily/ligature-engraver.cc:
3786 * lily/paper-column-engraver.cc:
3787 * lily/percent-repeat-engraver.cc:
3788 * lily/score-engraver.cc:
3789 * lily/score-engraver.hh:
3790 * lily/paper-column-engraver.hh:
3791 Inter-engraver communication regarding line breaks is done through context
3792 properties (Score.forbidBreak) instead of function calls.
3794 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3796 * VERSION (PACKAGE_NAME): release 2.9.4
3798 2006-05-08 Graham Percival <gpermus@gmail.com>
3800 * Documentation/user/working.itely: proofreading from Dave
3803 * Doucmentation/user/README.txt: updated with manual style info.
3805 * Documentation/user/ various: trim linewidth to 78 chars.
3807 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3809 * scm/define-grob-properties.scm (all-internal-grob-properties):
3810 remove chord-tremolo property.
3812 * lily/beam.cc (get_beam_segments): don't use stem position as
3813 base for broken ends.
3815 2006-05-06 Graham Percival <gpermus@gmail.com>
3817 * Documentation/user/putting.itely: proofreading from Dave
3820 * Documentation/user/ various: more reorg and clarifications.
3822 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3824 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3826 * ly/music-functions-init.ly: new function featherDurations
3828 * lily/beam.cc: read grow-direction for feathered beaming.
3830 * Documentation/topdocs/NEWS.tely (Top): typo.
3832 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3834 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3837 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3838 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3839 used by music streams.
3841 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3842 lily/stream-event.cc, lily/stream-event-scheme.cc,
3843 lily/listener.cc, lily/scheme-listener.cc,
3844 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3845 lily/include/stream-event.hh, lily/include/listener.hh,
3846 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3847 Created data structures for music streams.
3849 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3851 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3852 construction of a beam.
3855 * flower/include/std-vector.hh (default_compare): use only one comparison.
3857 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3858 (note-by-number): further attachment fixes.
3860 * scm/lily-library.scm (ordered-cons): new function.
3861 (interval-index): new function
3863 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3865 * lily/note-head.cc (get_stem_attachment): new function.
3867 * scm/define-markup-commands.scm (note-by-number): read 'style
3870 * input/regression/markup-note.ly: show note-head style option.
3872 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3875 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3877 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3879 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3881 * lily/include/constrained-breaking.hh: GCC 4 fix.
3883 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3885 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3886 Replace it with functions get_line_forces and get_line_configuration.
3887 (class Simple_spacer): Make data private.
3888 Rewrite compression algorithm to be faster and simpler.
3890 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3891 * lily/gourlay-breaking.cc (solve):
3892 * lily/constrained_breaking.cc (space_line):
3893 Change it to the new simple-spacer code.
3895 * lily/paper-score.cc (get_paper_systems):
3898 Delay breaking the systems until they are requested.
3899 (find_break_indices):
3900 Use vsize for indices.
3902 Move the "Calculating line breaks" message here.
3904 * lily/system.cc (pre_processing):
3905 Move the "Calculating line breaks" message away from here.
3906 (break_into_pieces):
3907 Allow multiple calls to this function in sequence (with touching-but-
3908 not-overlapping breakpoints).
3910 * lily/constrained-breaking.cc:
3911 Replace most of the get_XXXX functions with get_line_details.
3912 Only calculate the force for each line. Calculate configurations only
3913 for the lines we will actually use.
3914 Replace cols_ with lines_.
3916 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3918 * mf/GNUmakefile (depth): remove FC_FIND.
3920 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3922 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3924 * scm/framework-ps.scm (write-preamble): new function.
3925 (write-preamble): load mac fonts via fondu, even if gs-font-load
3928 2006-05-03 Werner Lemberg <wl@gnu.org>
3930 * mf/GNUmakefile (FC_FIND): Fix typo.
3932 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3934 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3936 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3938 * stepmake/aclocal.m4: run python-config for crosscompiling
3941 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3942 -f png for HTML, TEXINFO formats.
3944 * input/tutorial/lbook-html-test.html: new file.
3946 * lily/include/tie-formatting-problem.hh (class
3947 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3948 [column, direction]. This fixes laissez vibrer ties.
3950 * flower/include/tuple.hh (struct Tuple2): new file.
3952 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3953 $(FCMATCH), only if $(NCSB_DIR) not set.
3955 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3957 * config.make.in (DOCUMENTATION): set FCMATCH.
3959 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3961 2006-05-03 Graham Percival <gpermus@gmail.com>
3963 * Documentation/user/ various: final round of reorg.
3965 * Documentation/user/instrument-notation.itely: some more
3966 fixes from Eduardo, thanks!
3968 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3970 * VERSION (PACKAGE_NAME): release 2.9.3
3972 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3974 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3976 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3978 * scm/define-grob-properties.scm (all-user-grob-properties):
3979 Correct typo, thanks to Eduardo.
3981 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3983 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3985 * buildscripts/lilypond-words.py (F): indent fix.
3987 * input/regression/tie-arpeggio-collision.ly: new file.
3989 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3990 function: store outlines per column rank.
3992 * lily/include/tie-configuration.hh (class Tie_configuration): add
3993 column_ranks_ to specification and configuration, to distinguish
3994 between ties for different heads in arpegiated chords.
3996 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3998 * *.py: more 4 space indents.
4000 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4002 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4004 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4006 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4008 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4010 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4012 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4014 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4016 * python/convertrules.py (conv): indent 4 for python files.
4018 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4020 * Documentation/user/changing-defaults.itely (Creating contexts):
4021 Clarify \new semantics.
4023 2006-04-28 Graham Percival <gpermus@gmail.com>
4025 * Documentation/user/ various: major new sections in the
4026 Learning manual, slight reorg elsewhere.
4028 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4030 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4032 * scm/framework-ps.scm (output-framework): remove PageMedia
4034 2006-04-27 Graham Percival <gpermus@gmail.com>
4036 * Documentation/user/ tweaks.itely, working.itely: new
4037 files, being more advanced "learning manual" chapters.
4039 * Documentation/user/ tutorial, putting, lilypond: reorg.
4041 2006-04-26 Graham Percival <gpermus@gmail.com>
4043 * input/regression/lyric-combine-polyphonic.ly: fixed test
4044 (no more "can't find context `one'" error).
4046 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4048 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4050 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4052 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4054 * lily/relocate.cc (read_relocation_dir): new function.
4056 2006-04-26 Graham Percival <gpermus@gmail.com>
4058 * Documentation/user/instrument-notation.itely: a few more fixes
4059 from Eduardo, thanks!
4061 * Documentation/user/README.txt: new file; contains info on
4062 style that used to be in lilypond.tely.
4064 * Documentation/user/ various: first round of doc reorg.
4066 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4067 graphic; this probably causes problems on some pdf
4068 viewers, notably Adobe Acrobat.
4070 2006-04-24 Graham Percival <gpermus@gmail.com>
4072 * Documentation/user/instrument-notation.itely: many alterations
4073 to Vocal music, from Eduardo Viera.
4075 2006-04-23 Graham Percival <gpermus@gmail.com>
4077 * Documentation/user/instrument-notation.itely: fix \new
4078 instead of \context problem.
4080 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4082 * lily/relocate.cc (expand_environment_variables): new function.
4084 (read_relocation_file): id.
4086 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4088 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4090 * ly/engraver-init.ly: remove old comments from TabVoice
4092 2006-04-20 Graham Percival <gpermus@gmail.com>
4094 * Documentation/user/instrument-notation.itely: added Erlend's
4095 latest doc patch, thanks!
4097 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4099 * lily/include/slur.hh:
4101 * lily/phrasing-slur-engraver.cc:
4102 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4103 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4104 Slur_engraver:: and putting it in
4105 Slur::auxiliary_acknowledge_extra_object ().
4107 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4109 * lily/note-collision.cc: fix a comment
4111 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4113 * stepmake/bin/add-html-footer.py: fix footer position in
4114 generated html files: before </body> and </html> tags.
4116 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4118 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4119 Earlier successive `make' commands finally compiled ok.
4121 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4123 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4125 * lily/include/stem-tremolo.hh:
4126 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4130 * lily/include/lookup.hh: add rotated_box ()
4132 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4134 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4135 been generated. Fixes "can't get `--help'" bug after make clean.
4137 * THANKS: alphabetize contributors.
4139 2006-04-17 Graham Percival <gpermus@gmail.com>
4141 * Documentation/user/instrument-notation.itely: added Erlend's
4142 tabs and banjo doc patch. Thanks!
4144 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4146 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4148 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4150 * scm/output-lib.scm: add some more predefined string tunings.
4152 * Documentation/user/instrument-notation.itely: and doc them.
4154 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4156 * ly/engraver.ly: Remove obsolete comments.
4158 * ly/gregorian-init.ly: Define default layout block.
4160 * input/puer-fragment.ly: Updated and extended.
4162 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4164 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4165 pdf conversion behaviour.
4167 * flower/file-name.cc (dir_name)
4168 (get_working_directory): Move from relocate.cc.
4170 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4172 * lily/relocate.cc: Encapsulate sys/stat.h in
4175 2006-04-14 Graham Percival <gpermus@gmail.com>
4177 * Documentation/user/ various: small updates from Cameron
4178 and Juergen, thanks!
4180 * Documentation/user/ various: small updates of my own.
4182 * THANKS: 2.7 -> 2.8.
4184 2006-04-11 Graham Percival <gpermus@gmail.com>
4186 * scm/define-context-properties.scm: typo.
4188 * Documentation/user/ : many more small updates.
4190 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4192 * scm/define-music-types.scm: disposed "docme".
4194 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4196 * lily/hairpin.cc: make niente circles a bit smaller.
4198 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4200 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4201 get-pfa and get-*-fonts targets.
4203 2006-04-10 Graham Percival <gpermus@gmail.com>
4205 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4206 music-glossary, programming-interface: more minor fixes
4209 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4211 * scm/define-context-properties.scm: another old \property update.
4212 This time tested for compiling!
4214 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4216 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4218 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4220 * scm/define-context-properties.scm (all-user-translation-properties):
4221 * Documentation/user/global.itely (Page formatting): Compile fix.
4223 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4225 * Documentation/user/advanced-notation.itely (Polymetric
4226 notation): Update the example to use the "+" symbol and add link
4227 to input/test/compound-time.ly.
4229 2006-04-08 Graham Percival <gpermus@gmail.com>
4231 * scm/define-grob-properties.scm: clarify docs for #'direction.
4233 * scm/define-context-properties.scm: update old \property override.
4235 * Documentation/user/ advanced-notation, global, lilypond-book:
4236 more minor doc updates.
4238 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4240 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4242 * scm/backend-library.scm (search-gs): oops.
4244 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4246 * scripts/lilypond-book.py (output): use base, not filename for href.
4248 * scm/backend-library.scm: only look for gs.
4250 * scripts/lilypond-book.py (output): fix printfilename.
4252 * lily/parser.yy (music_function_musicless_prefix): fold together
4253 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4255 * lily/slur.cc (print): only set font-size if not set yet.
4257 * lily/slur-configuration.cc (add_score): improved layout of debug
4260 2006-04-05 David Feuer <David.Feuer@gmail.com>
4262 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4263 (draw_circle): Hopefully fixed regression.
4264 Improved documentation for several procedures.
4266 2006-03-04 Werner Lemberg <wl@gnu.org>
4268 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4270 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4272 * scripts/musicxml2ly.py (bindir): add dynamic
4275 2006-04-04 Graham Percival <gpermus@gmail.com>
4277 * Documentation/user/ basic-notation, advanced-notation, putting,
4278 instrument-notation, invoking, lilypond, THANKS: another ream of small
4279 fixes from the Doc Helpers.
4281 2006-04-03 David Feuer <David.Feuer@gmail.com>
4283 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4285 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4287 * Cleaned up interfaces between PostScript and Scheme, and moved
4288 computations from PostScript to Scheme:
4290 * music-drawing-routines.ps
4291 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4292 with stroke_and_fill throughout.
4293 (euclidean_length, print_letter, draw_box): Deleted unused
4294 procedures. If someone needs draw_box, implement it using
4295 draw_round_box; don't duplicate code.
4296 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4297 Refactored/cleaned up interfaces.
4300 * output-ps.scm: reordered arguments to PostScript functions to
4301 match new interfaces
4302 (glyph-string): Rewrote glyph-string.
4303 (grob-cause): Replaced string-append with format.
4304 (repeat-slash): Rewrote to do computation here.
4305 (round-filled-box): Rewrote to do computation here.
4307 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4309 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4311 * stepmake/stepmake/toplevel- targets.make: print help info about
4314 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4316 * input/regression/hairpin-circled.ly: new file
4318 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4320 * lily/hairpin.cc (print): add support for circled tip
4322 * scm/define-grob-properties.scm: add circled-tip parameter
4324 * scm/define-grobs.scm: init circled-tip to false
4326 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4328 * scm/music-functions.scm (quote-substitute): set
4331 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4333 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4336 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4338 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4340 2006-03-31 David Feuer <david.feuer@gmail.com>
4342 * scm/framework-ps.scm:
4344 * scm/output-ps.scm: glyph-string now produces smaller, more
4345 readable, and probably faster PostScript. Several findfont
4346 scalefont setfont instances changed to selectfont
4347 Hacked-up string-appends changed to formats.
4349 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4351 2006-03-30 Graham Percival <gpermus@gmail.com>
4353 * scm/lily-library.scm: make "no version" warning message more polite.
4355 * lily/music.cc: add double quotes to failed octave check.
4357 * Documentation/user/ advanced-notation, changing-defaults,
4358 instrument-notation, invoking, music-glossary: whole bunch of minor
4361 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4363 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4364 $(buildscriptdir) iso. depth.
4366 * VERSION (PACKAGE_NAME): release 2.9.1
4368 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4370 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4372 * VERSION (PATCH_LEVEL): bump version number.
4374 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4377 * lily/pango-font.cc (pango_item_string_stencil): use
4380 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4381 $(outdir)/emmentaler-%.svg): remove canary.
4383 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4384 glyphnames if we have a ttf font.
4386 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4388 * Documentation/user/advanced-notation.itely (Font selection):
4389 Corrected reference to the font-family-override.ly example.
4391 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4393 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4394 stem-tremolo object in the stem (or else the stem might not be
4397 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4399 * lily/ttf.cc (print_trailer): only print existing glyphs.
4401 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4403 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4404 position the tremolo based on the position of the notehead.
4406 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4407 notes and update the texidoc line with the new positioning rules.
4409 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4411 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4413 * scripts/lilypond-book.py (Module): set default for linewidth if
4416 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4418 * VERSION (PACKAGE_NAME): release 2.9.0.
4420 * input/regression/stem-tremolo-position.ly: new file.
4422 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4424 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4426 * lily/stem-tremolo.cc (print): position
4427 the tremolo depending only on the end of the stem
4428 and not on the notehead
4429 (raw_stencil): center, on the middle staff line, the
4430 flag that is closest to the end of the stem (previously
4432 (calc_width): add this callback to shorten a tremolo when
4433 it is beamed or it is stemup with a flag
4434 (style): add this callback to make a tremolo rectangular when
4435 it is beamed or it is stemup with a flag
4436 (rotated_box): this is like Lookup::beam but makes a rotated
4437 rectangle instead of a parallelogram
4439 * lily/stem.cc (calc_stem_info): make sure the stem
4440 is long enough to fit the tremolo
4441 (calc-length): reduce the length of tremolo stems since the
4442 tremolo code is now capable of better positioning
4444 * scm/define-grobs.scm: make calc_width the default beam-width
4445 callback for stem-tremolo and add the style callback
4447 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4449 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4452 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4454 * lily/ttf.cc (make_index_to_charcode_map): restore old
4457 2006-03-28 Werner Lemberg <wl@gnu.org>
4459 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4461 2006-03-28 Graham Percival <gpermus@gmail.com>
4463 * THANKS: update for 2.9, add section for Documentation helpers.
4465 * Documentation/topdocs/NEWS.tely: compile fix.
4467 * Documentation/user/ basic-notation, global, advanced-notation,
4468 examples.itely: minor fixes from mailist.
4470 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4472 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4475 * lily/ttf.cc (print_trailer): use it.
4477 * lily/pango-font.cc (get_unicode_name): new function.
4479 * lily/ttf.cc (make_index_to_charcode_map): move function from
4481 (print_trailer): substitute uniXXXX name if applicable.
4483 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4484 (pango_item_string_stencil): use it to generate uniXXXX names.
4486 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4487 note heads, for uniform widths in shape note output.
4488 (overdone_heads): hmm. remove them again.
4490 * scripts/lilypond-book.py (output): add links to filenames.
4492 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4494 * lily/note-collision.cc (get_clash_groups): only consider when
4495 Note_column::dir <> CENTER.
4497 * scripts/lilypond-book.py (get_option_parser): init output_name
4500 2006-03-24 Graham Percival <gpermus@gmail.com>
4502 * Documentation/topdocs/NEWS.tely: add @end itemize
4504 * Documentation/user/ global, advanced-notation: minor
4507 2006-03-23 Graham Percival <gpermus@gmail.com>
4509 * Documentation/user/ lilypond.tely, music-glossary,
4510 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4512 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4514 * mf/GNUmakefile: don't install .enc files.
4516 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4518 * VERSION (PATCH_LEVEL): bump to 2.9.0
4520 2006-03-22 Graham Percival <gpermus@gmail.com>
4522 * Documentation/user/advanced-notation.itely: minor fixes
4525 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4527 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4529 * branch lilypond_2_8
4531 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4533 * scripts/lilypond-book.py (samefile): new function, for windoze
4536 2006-03-21 Graham Percival <gpermus@gmail.com>
4538 * ly/engraver-init.ly: add info about StaffGroup.
4540 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4542 * input/regression/stem-direction-context.ly: idem.
4544 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4548 * input/regression/page-layout-twopass.ly: comment out \markup so
4551 * lily/instrument-name-engraver.cc (finalize): add to instrument
4552 name global System. This also fixes chopped instrument names, but
4553 doesn't crash when there are slurs/beams.
4555 * lily/slur-configuration.cc (add_score): disallow negative slur
4558 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4560 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4562 * lily/instrument-name-engraver.cc (process_music): kludge: add
4563 InstrumentName spanner to axis group of left bound. Fixes chopped
4564 off instrument names in EPS images.
4566 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4568 * scripts/abc2ly.py (option_parser): update to 2.7.40
4570 2006-03-20 Graham Percival <gpermus@gmail.com>
4572 * THANKS: move small doc contributors to SUGGESTIONS.
4574 * Documentation/user/ basic-notation, advanced-notation,
4575 global: small changes from mailist.
4577 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4579 * Documentation/user/advanced-notation.itely (Text marks): update
4580 for new rehearsalMarkAlignSymbol convention.
4582 * VERSION (PATCH_LEVEL): bump version.
4584 * input/test/instrument-name-align.ly: new file.
4586 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4588 * input/test/instrument-name-align.ly: new file. Document how to
4589 align instrument names.
4591 * lily/mark-engraver.cc: remove properties.
4593 * scm/define-context-properties.scm
4594 (all-user-translation-properties): remove align symbol properties
4595 for barnumber/reh. mark.
4597 * lily/break-align-interface.cc (self_align_callback): new
4598 interface, new function. Look at complete alignment. This handles
4599 tunable break alignments in case break-align-symbols are missing.
4601 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4603 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4605 * python/convertrules.py (conv): mark/bar number alignment rule.
4607 * lily/break-align-interface.cc (calc_positioning_done): also
4608 store offset from last visible break-alignment to its
4609 neighbor. This makes alignment on non-visible objects more reliable.
4611 * po/lilypond.pot (Module): ran po-replace.
4613 * input/regression/tie-single-manual.ly (Module): new file.
4615 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4616 look at has_manual_position_.
4617 (from_ties): set has_manual_position_ if tie has staff-position set.
4619 * lily/tuplet-bracket.cc (calc_positions): idem.
4621 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4624 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4626 * scm/define-markup-commands.scm (smallCaps): new markup command
4627 for turning a text to small caps using smaller font size and upper
4630 2006-03-17 Graham Percival <gpermus@gmail.com>
4632 * Documentation/user/ examples, instrument-notation,
4633 advnaced-notation: minor fixes from mailist.
4635 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4637 * Documentation/user/tutorial.itely (First steps): change example
4640 2006-03-17 Graham Percival <gpermus@gmail.com>
4642 * Documentation/user/ examples, advanced: minor changes from mailist.
4644 * THANKS: add Geoff Horton, for documentation stuff.
4646 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4648 * python/lilylib.py (system): revert have_select kludge.
4650 * Documentation/user/tutorial.itely (Commenting input files):
4651 update version numbers in doc.
4653 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4654 bound-padding to multi-measure-interface
4656 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4658 * input/test/engraver-example.ily: update version number.
4660 * VERSION (PACKAGE_NAME): release 2.7.39
4662 * lily/note-spacing.cc (get_spacing): heighten threshold where
4663 accidentals/arpeggios influence previous spacing fully.
4665 * lily/rest.cc (y_offset_callback): only use direction if
4666 staff-position wasn't set before.
4668 * lily/bar-number-engraver.cc: add support for
4669 barNumberAlignSymbol.
4670 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4672 * lily/pointer-group-interface.cc (set_ordered): new function.
4673 (add_unordered_grob): new function.
4675 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4676 to ordered, unless the opposite has been proved. This fixes
4677 random reordering of large object groups across linebreaks,
4680 * lily/main.cc (do_chroot_jail): printf format fix.
4682 * lily/tie-formatting-problem.cc (generate_configuration):
4683 multiply y-shift for dot with direction.
4685 * scm/define-markup-commands.scm (note-by-number): put (magstep
4686 size) in y-attach too.
4688 * Documentation/topdocs/NEWS.tely (Top): show override.
4690 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4691 direction for stems.
4693 2006-03-15 Graham Percival <gpermus@gmail.com>
4695 * Documentation/user/ changing-defaults, global: minor
4698 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4700 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4702 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4703 breakable items after uniformly stretched notes.
4705 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4706 outline with outer edge of note heads. This prevents infinity
4707 problems with tied whole notes.
4709 * scripts/lilypond-book.py (do_file): use os.popen
4711 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4713 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4715 * Documentation/user/invoking.itely: Add ragged-right to bug report
4718 2006-03-14 Graham Percival <gpermus@gmail.com>
4720 * Documentation/user/global.itely: small fix from mailist.
4722 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4724 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4725 file descriptor returned by tempfile.mkstemp() when writing
4726 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4729 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4731 * po/fi.po: newline bugfix.
4733 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4735 * scm/paper.scm (paper-alist): Rounding fixes.
4737 2006-03-13 Graham Percival <gpermus@gmail.com>
4739 * Documentation/user/ changing-defaults, instrument-notation,
4740 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4742 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4746 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4748 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4751 * python/lilylib.py (print_environment): move ps_page_count to
4754 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4756 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4758 * scm/framework-ps.scm (embed-document): new function. Use to
4761 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4763 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4765 * Documentation/user/instrument-notation.itely (Setting simple
4766 songs): Added \book{...} around the full example, so the separate
4767 markups are included in the printed example.
4769 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4771 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4774 * python/lilylib.py (system): rewrite system() using
4775 subprocess. Remove >& redirection trickery.
4777 2006-03-11 Graham Percival <gpermus@gmail.com>
4779 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4780 notation-appendices.itely: minor fixes from mailist.
4782 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4784 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4785 unsplit man also needs images.
4787 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4789 * VERSION (PACKAGE_NAME): 2.7.38 released.
4791 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4793 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4796 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4798 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4799 respects the Score.skipTypesetting property.
4801 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4803 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4804 Prolog. No %%EOF after CFF file.
4806 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4808 * lily/constrained-breaking.cc (get_max_systems): used to return a
4810 (combine_demerits): use pointers to reduce copying data
4811 (calc_subproblem): idem
4812 (get_page_penalty): add page turn penalties
4814 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4816 * Documentation/user/invoking.itely (Invoking lilypond): better
4817 explanation of -e usage.
4819 * lily/main.cc (main_with_guile): don't append to
4820 init_scheme_code_string
4822 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4824 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4826 * scripts/convert-ly.py (do_options): don't print help for
4829 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4830 @code and @example. Update from texinfo.tex from CVS.
4832 2006-03-08 Graham Percival <gpermus@gmail.com>
4834 * Documentation/user/scheme-tutorial.itely: clarifies distances
4835 measured in staff-spaces.
4837 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4839 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4840 consider[k] is true.
4842 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4844 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4845 consider columns that have originals. Unifies spacing for mm
4846 rests around line breaks.
4848 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4849 (set_text_rods): idem.
4850 (calculate_spacing_rods): new function: share code between
4851 set_text_rods and set_spacing_rods.
4852 (set_text_rods): take extents of bounds into account.
4854 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4856 * Documentation/user/basic-notation.itely (Writing music in
4857 parallel): don't use relative.
4859 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4861 * ly/music-functions-init.ly (Module): add shiftDurations
4863 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4865 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4867 * ly/engraver-init.ly: init vocalName to nil.
4869 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4871 * scm/music-functions.scm (music->make-music): bugfix,
4872 KeyChangeEvents are now handled correctly.
4874 * scripts/lilypond-book.py: Add --debug option.
4876 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4878 * python/lilylib.py: add tempfile.
4880 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4882 * VERSION (PACKAGE_NAME): release 2.7.37
4884 * python/lilylib.py (ps_page_count): remove make_ps_images().
4885 (ps_page_count): remove mkdir_p
4886 (system): remove cleanup_temp.
4887 (exit): remove lilypond_version_(check)
4888 (error_log): remove pseudo_filter_p
4893 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4896 * lily/accidental-engraver.cc (make_standard_accidental): only add
4897 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4899 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4900 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4901 Make incompatibilities.
4903 * scm/output-ps.scm (grob-cause): replace backslashes by /
4904 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4906 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4908 * cygwin/GNUmakefile: Install fixes.
4910 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4912 * lily/note-head.cc (head::get_balltype): Compile fix.
4914 * flower/file-name.cc (dos_to_posix): Flower string fix.
4916 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4918 * python/lilylib.py: pychecker cleanups.
4920 * scripts/lilypond-book.py
4921 (Lilypond_snippet.output_print_filename): pychecker cleanups
4923 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4925 * python/lilylib.py (underscore): remove identify() , warranty()
4927 * ps/music-drawing-routines.ps: change Border routine for GSView
4930 * lily/stem.cc (height): use quantize-positions. This triggers
4931 set_stem_lengths, so scripts on beamed stems are handled correctly.
4933 * lily/side-position-interface.cc (aligned_side): check if edges
4934 of script are inside staff. Fixes accent of edge of the staff.
4936 * input/regression/staccato-pos.ly: more examples.
4938 * stepmake/aclocal.m4 (depth): fix bashism.
4940 * lily/lyric-combine-music-iterator.cc: move from
4941 new-lyric-combine-iterator.cc
4942 (process): add pending_grace_lyric_ member to delay lyrics on
4945 * lily/system-start-text.cc (print): suicide if we don't have any
4946 elements. Fixes hara kiri'd instrument names.
4948 * scripts/mup2ly.py (Module): remove.
4950 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4952 * Documentation/user/global.itely (A single music expression):
4953 close @lilypond properly
4955 * lily/volta-bracket.cc (modify_edge_height): change from
4956 after_line_breaking_callback. Suicide last bracket if appropriate.
4958 * python/lilylib.py: strip getopt support
4960 * scripts/etf2ly.py (do_options): use optparse
4962 * scripts/midi2ly.py: optparse, strip lilylib copy.
4964 * scripts/abc2ly.py (voices): use optparse.
4966 * stepmake/stepmake/generic-vars.make: new function absdir.
4968 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4970 * scripts/lilypond-book.py (find_file): use global_options for
4973 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4976 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4978 * python/lilylib.py (get_global_option): ughness for extracting
4979 global options from lilylib.
4980 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4982 * scripts/lilypond-book.py (get_option_parser): use optparse for
4983 option handling. Put options in global_options variable.
4985 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4987 * Documentation/index.html.in: clarify.
4989 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4991 * scm/layout-page-layout.scm (write-page-breaks): add a
4992 music-system-heights property to the page layout output.
4994 * scm/page.scm (make-page-stencil): take footer into account when
4995 computing the 'space-left page property
4996 (annotate-space-left): take footer into account when annonating
4999 2006-02-28 Graham Percival <gpermus@gmail.com>
5001 * Documentation/user/ advanced-notation, global: more (final)
5002 docs for music expressions, removed special fermatas.
5004 2006-02-27 Graham Percival <gpermus@gmail.com>
5006 * Documentation/user/ basic-notation, global: minor changes
5009 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5011 * scm/framework-ps.scm:
5012 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5013 layer for inf? and nan? from framework-ps to lily-library.
5015 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5017 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5018 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5020 * buildscripts/substitute-encoding.py (Module): remove file.
5022 * mf/GNUmakefile: more PFA strippage.
5024 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5026 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5029 * scm/framework-ps.scm: remove font name munging.
5031 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5033 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5035 * scm/markup.scm (define-markup-command): change
5036 def-markup-command to define-markup-command
5038 * scm/music-functions.scm (define-music-function): change
5039 def-music-function to define-music-function.
5041 * python/convertrules.py (conv): rules for def-music-function
5042 and def-markup-commands
5044 * Documentation/user/programming-interface.itely,
5045 input/no-notation/display-lily-tests.ly,
5046 input/regression/lily-in-scheme.ly,
5047 input/regression/markup-user.ly,
5048 input/regression/music-function.ly, input/regression/tie-chord.ly,
5049 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5050 ly/gregorian-init.ly: use new macro names (define-music-function,
5051 define-markup-command).
5053 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5055 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5056 (output): add comments to lp-book latex output.
5058 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5061 2006-02-23 Graham Percival <gpermus@gmail.com>
5063 * Documentation/user/ tutorial, global: minor changes.
5065 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5067 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5068 blocks (for make 3.80)
5070 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5071 \notemode so that user should not have to explicitely type it.
5073 * scm/define-music-display-methods.scm: various
5074 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5077 * input/no-notation/display-lily-tests.ly: new tests for
5078 \applyOutput and \applyContext
5080 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5082 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5083 changed it slightly so that the number of systems returned by
5084 solve () will be the same as the last value passed to resize
5085 (). I've also added more documentation, removed casts, fixed style
5086 problems and put in some recovery if constraints aren't satisfied."
5088 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5090 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5091 for emacs < 22 compatibility.
5092 (count-rexp): Use it.
5093 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5094 substring juggling (Milan Zamazal).
5096 2006-02-23 Graham Percival <gpermus@gmail.com>
5098 * Documentation/user/ basic-notation, advanced-notation,
5099 global.itely, invoking.itely, tutorial,itely:
5100 minor fixes from mailist.
5102 * scm/define-markup-commands.scm: improve docs of \filled-box.
5104 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5106 * Documentation/index.html.in: changes concern the previous release.
5108 * input/regression/+.ly: cultivate typographical terminology.
5110 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5112 * scm/define-grob-interfaces.scm (parentheses-interface): add
5113 padding to parentheses-interface.
5115 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5116 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5118 * VERSION (PATCH_LEVEL): release 2.7.36
5120 * lily/slur.cc: add avoid-slur (ugh.)
5122 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5123 intersection gets smaller. This fixes slurs over extreme points.
5125 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5126 stems with neutral-direction set.
5128 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5130 * lily/open-type-font.cc (load_table): format error.
5132 * lily/change-iterator.cc (process): format fix.
5134 * flower/include/international.hh (_f): idem.
5136 * flower/include/std-string.hh: add format printf attribute.
5138 * scm/define-grobs.scm (all-grob-descriptions): height of all
5139 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5141 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5144 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5146 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5148 * input/regression/: upgraded syntax for some files.
5150 * THANKS: Add bughunters.
5152 2006-02-22 Graham Percival <gpermus@gmail.com>
5154 * Documentation/user/ invoking.itely, advanced-notation.itely,
5155 global.itely: long-awaited "let's make chapter 10 not suck"
5156 update. Rearrange chapter 10; now called "global issues",
5157 addresses file structure, etc. Some info from other files
5158 moved into global.itely.
5160 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5162 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5163 catch trill-span-event notes.
5165 * Documentation/user/examples.itely (Ancient notation templates): typo.
5168 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5170 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5172 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5174 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5176 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5177 froum Laissez_vibrer_engraver.
5179 * ly/declarations-init.ly (repeatTie): add \repeatTie
5181 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5183 * scm/define-grob-properties.scm (all-user-grob-properties): add
5184 head-direction property.
5186 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5187 from_lv_ties. Take head direction argument.
5189 * lily/semi-tie-column.cc: rename from
5190 laissez-vibrer-tie-column.cc. Rename class too.
5192 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5195 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5197 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5199 (find_breaks): idem.
5201 2006-02-21 Graham Percival <gpermus@gmail.com>
5203 * Documentation/user/advanced-notation.itely: fixed make-moment]
5206 * Documentation/user/basic-notation.itely: more clarification to
5209 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5211 * lily/include/constrained-breaking.hh (class
5212 Constrained_breaking): new file.
5214 * lily/constrained-breaking.cc (resize): new file.
5216 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5218 * Documentation/user/advanced-notation.itely (Clusters): insert
5221 * lily/tie-column.cc (calc_positioning_done): support for
5224 * lily/tie-formatting-problem.cc
5225 (generate_extremal_tie_variations): factor out.
5226 (score_ties_configuration): annotate all tie
5227 (print_ties_configuration): new routine.
5228 (generate_configuration): nudge extremal ties outside of the head
5230 (score_ties_configuration): oops. convert to staff-space before
5231 determining position symmetry.
5233 2006-02-20 Graham Percival <gpermus@gmail.com>
5235 * Documentation/user/*-notation.itely: misc minor editing,
5236 shifting doc sections around.
5238 * Documentation/user/*-notation-itely, global.itely,
5239 changing-defaults.itely: added new stuff from NEWS.
5241 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5245 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5247 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5248 lilypond --verbose for lp-book.
5250 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5251 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5253 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5254 $(buildscript-dir) iso. absolute depth.
5256 * buildscripts/genicon.py (dir): thinko.
5258 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5260 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5262 * scm/output-lib.scm: swap darkcyan/darkyellow
5264 * THANKS: Add bughunters.
5266 2006-02-19 Graham Percival <gpermus@gmail.com>
5268 * Documentation/user/programming-interfaces.itely: fixed example.
5270 * Documentation/user/instrument-notation.itely: fix @{ @}.
5272 * scm/script.scm: add avoid-slur for \open.
5274 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5276 * lily/tie-formatting-problem.cc (score_configuration): use
5277 sliding score for min-length.
5279 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5280 spaghetti for icons.
5282 * buildscripts/genicon.py (program_name): new file.
5284 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5286 (generate_configuration): for small ties, also look for collisions
5287 at Y + DIR*h + DELTA_Y.
5288 (get_variations): consider variation for dot positions too.
5290 * lily/side-position-interface.cc (aligned_side): take abs for
5291 quantized rounded position. Fixes tenuto below staff.
5293 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5294 markers when necessary.
5296 * lily/program-option.cc (internal_set_option): add
5297 strict_infinity_checking option.
5299 * scm/output-lib.scm (cyan): swap yellow and cyan.
5301 2006-02-19 Graham Percival <gpermus@gmail.com>
5303 * darwin.patch: trivial linenumber update.
5305 * Documentation/user/ {various}: `\context foo = named' changed
5306 to `\new foo = "name"' in docs.
5308 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5310 * scm/stencil.scm (annotate-y-interval): use it.
5312 * scm/lily-library.scm (interval-sane?): new function.
5314 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5317 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5320 * flower/include/std-vector.hh (iterof): add iterof macro.
5322 * lily/enclosing-bracket.cc (width): new function.
5324 * lily/align-interface.cc (align_elements_to_extents): reinstate
5327 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5329 * Documentation/index.html.in: fix spelling: thankyous.
5331 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5333 * lily/lyric-hyphen.cc: typo.
5335 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5337 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5338 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5341 * VERSION: release 2.7.35
5343 * lily/beam.cc (get_default_dir): oops. Take abs () for
5345 (get_default_dir): use extreme position criterion only in absence
5346 of forced stem directions.
5348 * VERSION (PATCH_LEVEL): bump VERSION.
5350 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5351 dependencies. Necessary for -jX builds.
5353 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5355 * lily/relocate.cc (setup_paths): Yet another const fix.
5357 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5359 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5361 * lily/relocate.cc (setup_paths): oops.
5363 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5365 * Documentation/index.html.in: order links: html before PDF.
5367 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5369 * lily/tie-column-format.cc (Module): remove.
5371 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5373 * lily/text-spanner.cc (print): idem.
5375 * lily/dynamic-text-spanner.cc (print): only print line if longer
5378 * lily/auto-change-iterator.cc (change_to): formatting.
5380 * lily/beam.cc (get_default_dir): take extreme note head as input
5383 * lily/tie.cc (get_default_dir): only look directions for visible
5386 * lily/side-position-interface.cc (aligned_side): oops. Don't
5387 mutiply with direction. This fixes quantized (staccato, tenuto)
5388 scripts below notes.
5390 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5391 direction. Fixes c-lyrics-center-align.ly
5393 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5395 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5398 * lily/std-string.cc:
5399 * lily/include/std-vector.hh (split_string): Move and rename from
5400 lily/include/misc.hh, lily/misc.cc. Update callers.
5402 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5404 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5406 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5408 * flower/test-file.cc: New file.
5410 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5413 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5415 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5417 * flower/include/file-storage.hh: remove file.
5419 * lily/include/midi-item.hh (class Midi_track): idem.
5421 * lily/include/source.hh (class Sources): idem.
5423 * lily/include/performance.hh (class Performance): use vector
5426 * flower/include/cons.hh (class Cons): remove file.
5428 * flower/include/flower-proto.hh: remove template cruft.
5430 * lily/include/font-metric.hh: use size_t not vsize for indices.
5432 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5435 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5437 * lily/include/paper-book.hh (class Paper_book):
5438 make get_system_specs() public.
5440 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5441 the force=10000 case if we don't have a current-best.
5443 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5446 * flower/include/flower-proto.hh: remove outdated templates.
5448 * scm/page.scm: use annotate-spacing
5450 2006-02-15 Graham Percival <gpermus@gmail.com>
5452 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5454 * THANKS: moved Erlend Aasland to contributors.
5456 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5458 * config.hh.in: remove HAVE_PANGO_16
5460 * lily/tuplet-bracket.cc (calc_positions): multiply with
5461 staff-space for beam case. This fixes tuplets+beams on scaled
5464 * config.hh.in: remove all Kpathsea related defines.
5466 * lily/dot-column.cc (side_position): reach stem via dots->
5467 head->stem. Inspect all stems for dot collisions.
5469 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5472 * lily/bar-number-engraver.cc (process_music): document function
5475 * lily/score.cc (default_rendering): add pscore, not systems
5478 * lily/paper-book.cc (get_system_specs): separate generation of
5481 * flower/include/std-vector.hh: don't include config.hh
5483 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5485 * flower/include/std-vector.hh: Better wrapper compatibility with
5488 * flower/include/flower-proto.hh: Remove cheap forward declaration
5491 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5493 2006-02-14 Graham Percival <gpermus@gmail.com>
5495 * Documentation/user/invoking.itely: add warning about command line.
5497 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5499 * lily/include/lily-proto.hh: add Prob, rm Page.
5501 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5503 * VERSION: release 2.7.34
5505 * lily/relocate.cc (framework_relocation): show canary if
5506 GHOSTSCRIPT_VERSION undefined.
5508 * GNUmakefile.in: remove $(VERSION) symlink.
5510 * lily/relocate.cc (setup_paths): add +
5512 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5514 * Documentation/index.html.in: specify sizes for all big HTML pages.
5516 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5518 * config.hh.in: remove @FRAMEWORKDIR@
5520 * lily/system-start-text.cc (get_stencil): new file: separate out
5521 system-start-delimiter text support.
5523 * input/**ly: replace \context with \new where appropriate.
5527 * lily/slur-scoring.cc (get_base_attachments): use
5528 robust_relative_extent. This fixes problems with empty paper-columns.
5530 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5532 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5534 * scm/define-music-properties.scm (all-music-properties):
5535 create-new property.
5537 * lily/context-specced-music-iterator.cc (construct_children):
5538 inspect 'create-new property iso. magical $uniqueContextId context
5541 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5543 * lily/context-key-manager.cc (Module): new file. Encapsulate
5544 object key generation.
5546 * lily/include/context-key-manager.hh (Module): new file.
5548 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5550 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5553 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5555 (reloc_b): excise --enable-framework-dir
5557 * lily/relocate.cc (framework_relocation): use getenv
5558 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5560 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5562 * flower/include/std-string.hh:
5563 * flower/include/std-vector.hh: Finish std:: conversion; move
5564 flower extensions from std:: namespace. Update users.
5566 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5567 their expansion to vector<*>. Update users.
5569 2006-02-10 Graham Percival <gpermus@gmail.com>
5571 * Documentation/user/invoking.itely: add example to File structure.
5573 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5574 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5576 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5578 * ly/paper-defaults.ly: typo.
5580 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5581 set_parent() for parentheses. This will make it show up in bbox
5584 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5585 ly:grob-common* functions.
5587 * lily/grob-scheme.cc (LY_DEFINE):
5588 ly:grob-common-refpoint-of-array: new function
5589 ly:grob-common-refpoint: new function
5590 ly:grob-relative-coordinate: new function
5592 * lily/instrument-name-engraver.cc (process_music): use
5593 Text_interface::is_markup(). This fixes \markup on instrument names.
5595 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5598 * lily/slur.cc (print): idem.
5600 * lily/tie.cc: add line-thickness for ties.
5602 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5604 * scm/output-svg.scm: Document diversion from GNU coding standards
5605 as a workaround for a bug in Microsoft Internet Explorer.
5607 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5609 * lily/instrument-name-engraver.cc (process_music): use
5610 is_markup() iso. is_string()
5612 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5614 * lily/percent-repeat-engraver.cc (process_music): only look at
5615 main_part_ for % repeats.
5617 * lily/stem-tremolo.cc (get_beam_translation): new function.
5618 (calc_slope): new function.
5619 (height): don't use real slope.
5621 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5623 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5624 new connect-to-neighbor, control-points and staff-padding
5625 properties to make ligature brackets showing up again.
5627 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5629 * VERSION: release 2.7.33
5631 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5634 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5635 remove applyOutput example.
5636 (Objects connected to the input): document \tweak, \parenthesize
5638 * lily/relocate.cc (prefix_relocation): allow "current"
5639 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5640 changing VERSION in a lily tree less painful.
5642 * input/regression/parenthesize.ly: new file.
5644 * scm/output-lib.scm (parenthesize-element): new function.
5646 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5648 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5650 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5651 cause: accidentals are caused by note heads, not note events.
5653 2006-02-08 Graham Percival <gpermus@gmail.com>
5655 * darwin.patch: small patch from Erlend, thanks!
5657 * Documentation/user/basic-notation.itely: add stem-neutral example.
5659 * Documentation/user/putting.itely: clarifications.
5661 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5663 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5664 note, add more guidelines to what should go into NEWS.
5666 * input/sakura-sakura.ly: document how to override font.
5668 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5670 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5672 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5674 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5676 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5677 convertrules. Add explicit grouping, needed for python2.2.
5679 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5681 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5683 2006-02-07 Graham Percival <gpermus@gmail.com>
5685 * Documentation/user/global.itely: fix line-width in (text) docs.
5687 * Documentation/user/lilypond-book.itely: same.
5689 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5691 * VERSION (PACKAGE_NAME): release 2.7.32
5693 * Documentation/topdocs/NEWS.tely (Top): document new variable
5696 * flower/include/array.icc (Message): remove file.
5698 * flower/include/std-vector.hh: make sure vsize and VPOS are
5699 defined for binary_search_bounds().
5701 * flower/std-string.cc (std): add to_string(long unsigned).
5703 * configure.in (gui_b): excise std_string option.
5704 (gui_b): excise std_vector option.
5706 * flower/string.cc (Module): excise flower array & string
5708 * flower/include/std-string.hh: excise flower string.
5710 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5712 * python/convertrules.py (lilypond_version_re_str): require
5713 only numbers and dots in \version string.
5715 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5717 * lily/system-start-delimiter.cc (print): allow style = text too.
5719 * lily/system-start-delimiter-engraver.cc
5720 (acknowledge_system_start_text): new function, also add add to
5721 support of system-start-text (instrument names). This fixes
5722 instrument names on piano staves.
5724 * lily/instrument-name-engraver.cc: rewrite. Use
5725 system-start-delimiter approach. This save memory and cpu.
5727 * scm/define-grobs.scm (all-grob-descriptions): remove
5728 instrument-name from break-alignment.
5730 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5732 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5734 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5737 * configure.in (std_vector): On by default.
5739 * lily/include/font-metric.hh:
5740 * lily/include/tfm-reader.hh:
5741 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5744 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5746 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5748 * VERSION (PACKAGE_NAME): 2.7.31
5750 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5751 EPS edge at 0, but take minimum with left-overshoot. This fixes
5752 cut off system start delims.
5754 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5755 hack: add to axis group if not added yet. This fixes hara kiri'd
5758 * lily/hara-kiri-group-spanner.cc
5759 (force_hara_kiri_in_y_parent_callback): fix signatures.
5761 * lily/hairpin.cc (print): check next hairpin to see whether or
5762 not to be continuing.
5764 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5766 * Remove trailing whitespace from makefiles.
5768 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5771 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5773 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5775 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5777 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5779 * configure.in: Use it.
5781 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5783 * scm/music-functions.scm (pitch-of-note): new function.
5785 * ly/music-functions-init.ly: add \octave and \addquote
5787 * lily/parser.yy (music_function_chord_body): softcode \octave.
5788 (lilypond_header): softcode \addquote
5790 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5792 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5793 array.hh, parray.hh at all. Getting ready to flip the
5796 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5798 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5801 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5803 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5805 * flower/include/array.hh: typo.
5807 2006-02-02 Graham Percival <gpermus@gmail.com>
5809 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5811 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5813 * flower/include/pqueue.hh: Derive from std::vector.
5815 * flower/include/parray.hh: Conform to std::vector interface.
5818 2006-02-02 Graham Percival <gpermus@gmail.com>
5820 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5822 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5824 * flower/file-path.cc (is_file): remove if 0 section.
5826 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5827 selecting afii61352.
5829 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5831 * flower/include/std-vector.hh (boundary): Oops, reverse.
5833 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5834 remove superfluous `d'.
5836 * flower/include/std-vector.hh (boundary, top): Detach from class.
5837 Remove empty vector shell.
5839 * flower/include/array.hh (reverse, swap): Detach from class.
5842 * flower/include/std-vector.hh
5843 * flower/include/array.hh (concat): Globally change to insert ().
5846 * flower/include/std-vector.hh
5847 * flower/include/parray.hh
5848 * flower/include/array.hh (elem, elem_ref): Globally replace by
5851 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5853 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5855 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5856 anticipate on identifier substitutions.
5858 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5860 * flower/include/std-vector.hh (insert): Remove, replace by
5861 std::vector interface. Update callers.
5863 * flower/include/array.icc (insert): Change signature to
5864 match std::vector interface.
5866 * flower/include/array.icc (vector_sort): Bugfix.
5868 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5870 * lily/parser.yy (output_def_head_with_mode_switch): new
5871 production. Result: dashes and underscores may be used in the
5874 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5876 * python/convertrules.py (conv): oops. One slash too much.
5878 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5880 * flower/include/std-vector.hh (sort): Remove, replace by
5881 ::vector_sort. Update callers.
5883 * flower/include/std-vector.hh (slice): Remove. Update callers.
5886 * flower/test-std.cc (vector_sort): New test.
5888 2006-02-01 Graham Percival <gpermus@gmail.com>
5890 * Documentation/user/putting.itely: fixes from Erik.
5892 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5894 * flower/test-std.cc: Add simple unit test for vector migration.
5896 * stepmake/stepmake/test*: Unit test support.
5898 * flower/include/std-vector.hh (del): Remove. Use erase (),
5901 * flower/include/array.hh (begin, end): Add.
5904 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5906 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5907 std::string not String.
5909 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5912 * lily/prob.cc (Prob): copy type_ too.
5914 * lily/lily-guile.cc (mangle_cxx_identifier): new
5915 function. Class_bla::foo_bar_[px] ->
5916 ly:class-bla::foo-bar[?!]. Changes throughout
5918 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5920 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5922 * lily/beam.cc (calc_direction): take dir from visible stem in
5925 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5927 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5928 Fix -1, >=0 boundary checks for unsigned vsize.
5930 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5931 loop for unsigned vsize.
5933 * configure.in (--enable-std-vector): New option.
5934 (--enable-std-string): On by default.
5936 * flower/include/std-vector.hh: New file. Enable switch to
5937 std::vector, update client code.
5939 2006-01-30 Graham Percival <gpermus@gmail.com>
5941 * scm/document-translation.scm: clarify "this context is also
5942 known as". Thanks, Werner!
5944 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5946 * Documentation/user/invoking.itely: small fix from Don.
5948 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5950 * scm/lily.scm (define-scheme-options): rename option
5951 preview-include-book-title to book-title-preview
5952 (define-scheme-options): move force-eps-font-include (from paper
5953 block) to eps-font-include -d option.
5955 * VERSION (PATCH_LEVEL): release 2.7.30
5957 * input/bach-schenker.ly (staffPiano): new file.
5959 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5961 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5964 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5966 * ps/lilyponddefs.ps: remove start-system, stop-system,
5967 start-page fluff. This saves putting { } code on the stack, fixing
5968 stack overflows when including EPS files.
5970 2006-01-29 Graham Percival <gpermus@gmail.com>
5972 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5974 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5976 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5978 2006-01-28 Graham Percival <gpermus@gmail.com>
5980 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5982 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5984 * input/mutopia/claop.py: Update.
5986 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5988 * input/regression/completion-heads.ly (texidoc): fix.
5990 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5992 * lily/tie-formatting-problem.cc
5993 (set_ties_config_standard_directions): use abs iso fabs for ints.
5995 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5997 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5998 little less than noteheight, to prevent overlaps in chords.
6000 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6001 head, and fudge stem-attachment.
6003 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6005 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6007 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6009 * lily/main.cc (main): Debugging aid: catch exceptions.
6011 * flower/std-string.cc (to_string): Robustification. Fixes midi
6012 output with std::string.
6014 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6016 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6018 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6020 * Fix -DSTRING_UTILS_INLINED.
6022 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6024 * VERSION (PATCH_LEVEL): release 2.7.29
6026 * lily/relocate.cc (setup_paths): mingw uses std string too.
6028 * lily/*.cc: various fixes for substr(ARG).
6030 * lily/sustain-pedal.cc (print):
6032 * flower/file-name.cc (slashify): use std strings.
6034 * flower/string-convert.cc: remove publib.h
6036 * scm/define-markup-commands.scm (verbatim-file): new markup
6037 command \verbatim-file
6039 * Documentation/topdocs/NEWS.tely: fixup URLs
6041 * input/regression/alignment-vertical-manual-setting.ly (Module):
6044 * lily/align-interface.cc (align_elements_to_extents): overwrite
6045 translations with numbers in alignment-offsets from left bound
6047 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6048 (page-translate-systems): new function: take into account Y-offset.
6050 * Documentation/topdocs/NEWS.tely (Top): document new features.
6052 * input/regression/page-layout-manual-position.ly (Module): new
6055 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6057 * flower/file-path.cc (path::parse_path): Oops.
6059 * Finish std::string interface. For now, use std:: marker
6060 throughout for easy s/r.
6062 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6064 * Documentation/user/putting.itely (Score is a single musical
6066 (Score is a single musical expression): more typos.
6068 * scm/page.scm (annotate-space-left): thinko.
6069 (annotate-page): more thinkos.
6071 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6073 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6074 for different \score blocks separately.
6075 (post-process-pages): put write-page-layout into paper block.
6077 * lily/output-def.cc (get_parser): new file.
6079 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6082 * lily/include/output-def.hh (class Output_def): add parser_ member.
6084 * input/regression/page-layout-twopass.ly (Module): new file.
6086 * scm/lily.scm: remove cpp hack.
6088 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6090 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6092 * GNUmakefile.in (c-clean): New target.
6094 * flower/include/std-string.hh: String/std::string compatibility:
6095 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6098 * flower/rational.cc:
6099 * flower/include/rational.hh:
6102 * flower/include/offset.hh:
6104 * flower/interval.cc:
6105 * flower/include/interval.hh:
6107 * flower/string-convert.cc:
6108 * flower/include/string-convert.hh: Use std::string [interface].
6111 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6113 * Documentation/index.html.in: clean up.
6115 2006-01-25 Graham Percival <gpermus@gmail.com>
6117 * Documentation/user/putting.itely: another new untested doc section.
6119 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6121 * scm/layout-page-layout.scm (write-page-breaks): write
6122 \spacingTweaks #ALIST. Handle grace timing.
6124 * scm/: more imports.
6126 * scm/page.scm (make-page): add footer/header.
6127 (annotate-space-left): revise: only take page argument.
6128 (layout->page-init): new function.
6130 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6131 version of the system/spacing/linebreak hack writing to the output
6133 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6136 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6139 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6141 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6143 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6145 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6146 handling to page.scm
6148 * lily/prob-scheme.cc (LY_DEFINE): new file.
6149 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6151 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6154 * lily/music.cc (derived_mark): derive Music from Prob.
6156 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6158 * lily/prob.cc (Module): Implement Prob (Property Object), object
6159 with shared and r/w property alists.
6161 * lily/include/prob.hh (Module): new file. Declare Prob.
6163 * flower/string.cc: remove is_empty().
6165 * flower/include/string.hh (class String): remove String:: qualifier.
6167 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6168 substitute appropriate functions.
6170 * flower/include/string.hh (class String): remove to_str0 and
6171 is_empty(). S&R everywhere.
6173 2006-01-23 Graham Percival <gpermus@gmail.com>
6175 * Documentation/user/basic-notation.itely: add hairpin
6176 after-linebreak tweak to commonprop.
6178 * Documentation/user/putting.itely: added two new sections.
6180 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6182 * flower/international.cc:
6183 * flower/include/international.hh:
6185 * flower/getopt-long.cc:
6186 * flower/include/getopt-long.hh: Use std::string [interface].
6189 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6191 * stepmake/stepmake/executable-rules.make: Add dependency on
6194 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6196 * flower/file-path.cc:
6197 * flower/include/file-path.hh: Use std::string [interface].
6200 * flower/direction.cc:
6201 * flower/axis.cc: Unused. Remove.
6203 * configure.in (--enable-std-string): New option.
6205 * flower/std-string.cc:
6206 * flower/include/std-string.hh: New file.
6208 * flower/file-name.cc[STD_STRING]:
6209 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6211 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6213 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6215 * scm/define-markup-commands.scm (with-dimensions):
6216 with-dimensions markup command.
6218 * input/test/font-table.ly: use it.
6220 * lily/open-type-font.cc (glyph_list): new function.
6222 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6224 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6226 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6228 * ly/music-functions-init.ly (parallelMusic): new music function
6229 for parallel music entry.
6231 * scm/define-music-properties.scm (all-music-properties): new
6232 'void music property
6234 * scm/music-functions.scm (ly:music-message): make public, to be
6235 used in music function definitions
6237 * scm/lily-library.scm (collect-music-for-book): discard music
6238 when the 'void property is set.
6240 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6242 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6244 * mf/GNUmakefile: idem.
6246 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6248 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6250 * Documentation/user/notation-appendices.itely (The Feta font):
6253 * input/test/font-table.ly: new file. Generate font table within lily.
6255 * Documentation/user/notation-appendices.itely (The Feta font):
6256 use new font-table.ly file.
6258 * stepmake/stepmake/install-out-targets.make
6259 (local-install-outfiles): only create directory if
6260 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6262 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6264 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6266 * VERSION (PACKAGE_NAME): release 2.7.28
6268 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6269 the right font from a Mac dfont.
6270 (write-preamble): don't forget directory, only look at files.
6272 This fixes problems with TTF files in dfonts that don't match
6273 their PostScript names.
6275 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6276 PS name from TTF font.
6278 * input/regression/tie-manual.ly: document new feature.
6280 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6282 * VERSION (MY_PATCH_LEVEL): bump to .28
6284 * Documentation/user/basic-notation.itely (Ties): add tie examples
6287 * lily/tie-formatting-problem.cc (score_ties_configuration):
6288 symmetry penalties for outer ties.
6290 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6292 * lily/tie-formatting-problem.cc (generate_configuration)
6293 (set_manual_tie_configuration): skip non-pair manual
6294 tie-configuration, so you can set individual ties as
6296 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6298 * input/regression/tie-chord.ly: use generateTiePattern to
6301 * lily/tie-formatting-problem.cc (peak_around): new function.
6302 (score_configuration): use sliding criterion for staff line collisions.
6303 (score_configuration): idem for dot collisions.
6304 (generate_configuration): use separate stem_gap for gap to stem.
6306 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6307 separate penalty factors for x and y distance.
6308 (struct Tie_details): separate penalties for tip and center line collisions.
6310 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6312 * lily/tie-formatting-problem.cc (generate_configuration): make
6313 large ties avoid stafflines in the horizontal section.
6314 (score_configuration): use softcoded penalties
6315 (score_aptitude): idem.
6317 * lily/tie-helper.cc (from_grob): softcode tie details
6319 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6321 * lily/staff-symbol-referencer.cc (on_line): rename from
6324 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6326 * ly/music-functions-init.ly: remove duplicate tag.
6328 * lily/include/*.hh: GCC 4.1 fixes.
6330 006-01-16 Erlend Aasland <erlenda@gmail.com>
6332 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6334 * scm/define-music-types.scm: fix bug in desc. string
6335 for OverrideProperty
6337 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6339 * scripts/lilypond-book.py: bugfix
6341 * scm/define-music-types.scm: fix typos.
6343 2006-01-14 Graham Percival <gpermus@gmail.com>
6345 * Documentation/user/ basic-notation.itely, global.itely,
6346 advanced-notation.itely, instrument-notation.itely: small
6347 additions (bugs and commonly tweaked properties).
6349 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6351 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6352 detection of mingw build.
6353 (MINGW_BUILD): opps.
6355 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6357 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6360 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6362 * scm/music-functions.scm (skip->rest): add skip->rest
6364 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6366 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6369 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6370 config dirs. Aids debugging.
6371 (display_config): also display config files.
6373 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6375 * VERSION: release 2.7.27
6377 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6378 for determining bar size.
6380 * lily/staff-symbol.cc (print): place lines at distance line-positions
6382 * scm/define-grob-properties.scm (all-user-grob-properties): add
6385 * lily/staff-symbol.cc (height): new function.
6387 * input/regression/staff-line-positions.ly: new file.
6389 2006-01-06 Graham Percival <gpermus@gmail.com>
6391 * input/test/add-staccato.ly: remove reference to old file.
6393 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6395 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6396 lilypond binary too.
6398 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6400 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6402 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6404 * scripts/midi2ly.py: Bugfix: Declare datadir.
6406 * make/ly-rules.make:
6407 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6408 that seems to be gone). Fixes make web.
6410 * The grand 2005-2006 replace.
6412 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6414 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6416 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6417 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6418 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6419 like -dgs-font-load.
6421 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6422 remove absolute path to lilypond binary.
6424 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6426 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6428 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6430 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6432 * mf/GNUmakefile: remove broken dvips map symlink.
6434 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6437 * configure.in: Cosmetic fixes.
6439 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6441 * Documentation/user/music-glossary.tely (Pitch names): Added
6442 Spanish pitch names and durations, thanks to Ernesto Gancedo
6444 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6446 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6447 init. Fixes verbose printing of .scm files.
6449 * stepmake/aclocal.m4: add spaces before - options.
6451 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6453 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6454 of path search in local block variable.
6456 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6458 * configure.in (NCSB_DIR): --enable-ncsb-dir
6459 (LINK_GXX_STATICALLY): denko.
6461 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6463 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6464 use locate to find c059033l.pfb.
6466 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6468 * lily/tie-formatting-problem.cc
6469 (problem::generate_base_chord_configuration): Use my_round (was
6472 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6473 do not invoke mbrtowc.
6475 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6477 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6479 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6481 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6483 * Documentation/user/invoking.itely (svg): revise.
6485 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6487 * lily/lexer.ll: use sourcefilename iso. renameinput.
6489 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6491 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6492 <PostScriptName>.ttf instead of c059XXXttf.
6494 * lily/program-option.cc (LY_DEFINE): special support for
6495 --verbose, so it works before option init too.
6497 * mf/GNUmakefile (local-install): oops.
6499 * lily/lyric-hyphen.cc (print): oops.
6501 * buildscripts/pfx2ttf.fontforge: new file.
6503 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6504 ($(outdir)/%.ttf): new rule.
6506 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6509 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6512 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6514 * VERSION: release 2.7.26
6516 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6518 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6520 * lily/font-config.cc (init_fontconfig): verbosity.
6522 * THANKS: add Muziekacademie Lede.
6524 * scripts/musicxml2ly.py (print_voice_definitions): new function
6525 (print_score_setup): new function
6526 (convert): read part definition to output staves properly.
6528 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6531 * python/musicexp.py (Output_printer.__init__): use _ in data
6533 (Output_printer.unformatted_output): new function: no formatting,
6535 (Duration.get_length): remove isinstance() checks for
6536 Output_printer everywhere.
6538 * input/regression/lyrics-bar.ly (texidoc): add
6539 Separating_line_group_engraver.
6541 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6543 * lily/relocate.cc (framework_relocation): New function,
6544 factored from set_relocation ().
6545 (prefix_relocation): Rename from set_relocation ().
6546 (setup_paths): Use it.
6548 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6550 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6551 numbers. Patch by Erlend Aasland.
6553 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6555 * lily/font-config.cc (init_fontconfig): print warning if cache
6556 file is not existant.
6558 * lily/main.cc: don't use #ifdef but #if
6560 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6562 * lily/grob-property.cc (internal_set_property): don't abort on
6563 calculation-in-progress.
6565 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6567 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6568 connect-to-neighbor property not connect-to-other
6570 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6571 (LY_DEFINE): oops. don't forget protection.
6573 * flower/parse-afm.cc (Module): strip AFM handling completely.
6575 * lily/stencil-expression.cc: idem.
6577 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6579 * lily/function-documentation.cc (ly_add_function_documentation):
6580 use static member iso. Protected_scm
6582 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6584 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6586 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6588 * lily/relocate.cc (set_env_dir): New function.
6589 (set_relocation): Use it to fix setting PANGO_PREFIX.
6591 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6593 * input/regression/stem-direction-context.ly: remove rest.
6595 * lily/melody-engraver.cc (process_music): restart for bar lines.
6596 (acknowledge_slur): restart for slurs.
6598 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6600 * Documentation/user/invoking.itely: describe how to view SVG
6601 output using Inkscape which replace embedded fonts with OTF fonts.
6603 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6605 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6607 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6609 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6612 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6614 * VERSION (PACKAGE_NAME): release 2.7.25
6616 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6618 * input/regression/stem-direction-context.ly: new file.
6620 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6622 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6625 * ly/engraver-init.ly: add Melody_engraver
6627 * lily/beam.cc (calc_direction): use default-direction
6628 iso. get_default_direction()
6630 * scm/define-grob-properties.scm (all-user-grob-properties): add
6631 default-direction property.
6633 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6635 * lily/stem.cc (calc_default_direction): remove
6636 Stem::get_default_direction, use default-direction with callback
6639 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6641 * lily/melody-engraver.cc: new file. Acknowledge stems for
6642 interpolated stem directions.
6644 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6646 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6648 * lily/slur-configuration.cc (fit_factor): more robust check for
6649 point in curve X-extent.
6651 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6652 (outside_slur_callback): check for 'outside avoidance.
6654 * lily/slur-configuration.cc (score_extra_encompass): don't use
6655 bound->column() == avoid->column() for checking extents, as this
6656 doesn't work for accidentals.
6658 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6659 DynamicText hardcoding.
6661 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6662 crash if bound stem is NULL
6664 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6667 2005-12-22 Graham Percival <gpermus@gmail.com>
6669 * scm/define-markup-commands.scm: typo. @code{\raise}
6672 * darwin.patch: now used again, includes a
6673 required patch from fink.
6675 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6677 * po/TODO: mention gtranslator along with kbabel.
6678 * po/fi.po: update translations.
6680 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6682 * lily/relocate.cc (setup_paths): Bugfix.
6684 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6686 * lily/slur-configuration.cc (score_extra_encompass): don't use
6687 "avoid" choice for avoid-slur.
6689 * stepmake/bin/install.py (dest): don't create existing dir.
6691 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6693 * stepmake/bin/install.py: Remove file before copying.
6696 * stepmake/aclocal.m4: Do not substitute INSTALL.
6698 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6700 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6701 depend on link-tree.
6703 * lily/relocate.cc (setup_paths): only check path for non-absolute
6704 dir without directory part.
6706 * flower/file-name.cc (is_absolute): new method.
6707 (is_absolute): check root_ too.
6709 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6711 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6712 relocation code. Oops, don't comment out too much.
6714 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6717 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6720 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6722 * .cvsignore: Add install-sh.
6724 * autogen.sh (srcdir): Typo.
6726 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6728 * autogen.sh (srcdir): urg. Touch install-sh.
6730 * stepmake/bin/install-sh (Module): remove.
6732 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6734 * lily/include/relocate.hh: new file.
6736 * lily/relocate.cc: new file. Contain relocation logic.
6738 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6739 (main): read LILYPOND_VERBOSE as the first thing.
6741 * stepmake/aclocal.m4: remove INSTALL variable.
6743 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6744 separate target for making font symlinks.
6745 (documentation-dir): use $(if $(findstring )) for switching off
6748 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6749 something if DOCUMENTATION is no.
6751 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6753 * VERSION: release 2.7.24
6755 * lily/script-column-engraver.cc (stop_translation_timestep):
6756 delay adding to script-column.
6758 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6760 * python/convertrules.py (conv): rule for number-visibility
6762 * lily/slur-configuration.cc (score_extra_encompass): different
6763 distance measure for avoid and inside avoidance.
6764 (score_extra_encompass): use 1/(distance+eps) as penalty.
6766 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6767 encompass objects for generating slur curves.
6769 * lily/slur.cc: use details iso. slur-details property.
6771 * input/regression/slur-tuplet.ly: new file.
6773 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6775 * flower/include/offset.hh (class Offset): new operator /=
6777 * lily/tuplet-number.cc (print): new file, new interface.
6779 * scm/define-grob-properties.scm (all-user-grob-properties):
6780 remove number-visibility property.
6782 * lily/tuplet-bracket.cc (calc_control_points): new function
6783 (calc_connect_to_neighbors): new function.
6784 (print): remove text handling for tuplet numberdef.
6786 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6789 * lily/lily-guile.cc (robust_scm2booldrul): new function
6791 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6793 * lily/tuplet-bracket.cc (calc_position_and_height): use
6794 staff-padding to control whether tuplet brackets are over staves.
6796 * lily/grob.cc (suicide): clear dim_caches_.
6798 * lily/dimension-cache.cc (clear): new function.
6800 * lily/grob.cc (extent): swap order of min-extent and extent
6801 calculations. This fixes hara kiri staves.
6803 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6805 * lily/main.cc: Nitpick: relocation is not based on path, but on
6806 directory (location).
6808 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6810 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6812 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6814 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6816 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6818 * stepmake/stepmake/generic-vars.make (Module): idem.
6820 * stepmake/stepmake/executable-targets.make (default): use it.
6822 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6824 * make/GNUmakefile: don't install make rules.
6826 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6828 (prepend_env_path): more verbosity.
6830 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6832 * GNUmakefile.in: add dir argument for find command.
6834 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6835 fixes weird line numbers for point & click.
6837 * lily/source-file.cc (get_counts): init line/column/char counts.
6839 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6841 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6843 2005-12-16 Graham Percival <gpermus@gmail.com>
6845 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6846 minor fixes from Fredric. Thanks!
6848 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6850 * ly/music-functions-init.ly: add \bar and \clef music function
6852 * lily/lily-lexer.cc: idem.
6854 * lily/parser.yy (FIXME): remove BAR and CLEF.
6856 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6858 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6860 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6861 function arguments too
6863 * lily/main.cc (set_relocation): new function.
6865 * scripts/musicxml2ly.py (convert): add \version
6867 * lily/tie.cc: remove get_default_attachments()
6869 * VERSION (PACKAGE_NAME): release 2.7.23
6871 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6872 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6874 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6876 * lily/tie-formatting-problem.cc (score_ties): new function
6877 (get_variations): new function. Try flipping dirs for collisions.
6878 (generate_optimal_chord_configuration): new function. 1-opt search
6879 for better configuration.
6881 * lily/tie-configuration.cc: new file.
6883 * lily/tie.cc: junk Tie::get_configuration()
6885 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6886 (score_ties_configuration): new function.
6887 (generate_ties_configuration): new function.
6888 (generate_base_chord_configuration): new function.
6889 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6890 (set_manual_tie_configuration): Move body from tie-column-format.cc
6892 * input/regression/tie-dot.ly: new file.
6894 * lily/tie-formatting-problem.cc (score_configuration): score
6897 * lily/tie-helper.cc (get_transformed_bezier): new function
6899 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6901 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6902 -undefined suppress iso. -framework Python
6904 * scm/define-grobs.scm (all-grob-descriptions): set
6905 springs-and-rods (thanks Joe Neeman!)
6907 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6909 * input/no-notation/display-lily-tests.ly (test):
6910 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6911 changed from \tag #'(a b) to \tag #'a \tag #'b
6913 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6915 * Documentation/topdocs/NEWS.tely: strip out-www.
6917 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6919 * config.make.in (AR): add AR and RANLIB
6921 * flower/libc-extension.cc: include cassert
6923 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6926 2005-12-11 Graham Percival <gpermus@gmail.com>
6928 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6930 * stepmake/stepmake/python-modules-vars.make: define
6931 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6933 * THANKS: added Johannes Schindelin.
6935 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6937 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6939 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6940 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6942 * lily/parser.yy: reorganize file layout.
6944 * ly/music-functions-init.ly: add tweak music function.
6946 * lily/grob-info.cc (ultimate_music_cause): new function:
6947 recursively lookup causes.
6949 * lily/parser.yy (chord_body_element): allow music functions for
6950 post-events, allow music functions for chord elements.
6952 * lily/font-config-scheme.cc (display_fontset): add cast.
6954 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6955 #'(a b) -> \tag #'a \tag #'b rule.
6957 * python/musicexp.py (Output_printer.dump_version): new function
6959 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6961 * lily/parser.yy (FIXME): remove \tag
6962 (FIXME): remove tag_music() function.
6964 * lily/lily-lexer.cc: remove \tag
6966 * ly/music-functions-init.ly: define music-function "tag"
6968 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6970 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6972 * VERSION (PATCH_LEVEL): release 2.7.22
6974 * input/regression/lyric-hyphen-retain.ly: renew.
6976 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6979 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6980 iso. minimum-length property for rods.
6982 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6983 LyricSpace item to keep lyrics spaced apart.
6985 * ly/engraver-init.ly: remove Separating_line_group_engraver
6987 * Documentation/user/music-glossary.tely: do setfilename before
6990 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6992 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6993 See xref documentation, for example.
6995 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6997 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6998 pending_skip iso. ly_voice[-1]
6999 (main): add if __main__ for debugging.
7001 * python/musicxml.py (Accidental.__init__): new class.
7003 * scripts/musicxml2ly.py (progress): new function
7004 (musicxml_key_to_lily): don't barf on modeless keys.
7005 (create_skip_music): new function.
7006 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7007 (musicxml_note_to_lily_main_event): new function.
7009 * python/musicexp.py (Music.__init__): add comment field.
7010 (NestedMusic.append): new routine.
7011 (SequentialMusic.print_ly): print comment.
7012 (ArpeggioEvent.ly_expression): new class
7013 (BeamEvent.ly_expression): new class
7014 (NoteEvent.__init__): support for cautionary/forced accs.
7016 * lily/lookup.cc (slur): normal order for array loop.
7018 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7021 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7024 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7026 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7028 * scripts/lilypond-book.py: Introduce option
7029 --preserve-line-breaks, for usage with srcltx
7031 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7033 * scm/output-lib.scm (print-circled-text-callback): draw circle
7034 around text using make-circle-markup.
7036 * Documentation/user/*: strip out-www from file names.
7038 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7040 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7041 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7043 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7045 * Documentation/user/GNUmakefile: idem.
7047 * Documentation/user/macros.itexi: strip out-www
7049 * python/rational.py: python 2.3 compat.
7051 * VERSION (PATCH_LEVEL): release 2.7.21
7053 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7054 option formatting, lilypond style.
7056 * python/musicexp.py: grab from Ikebana: a library for composing
7057 ly music expressions.
7058 (Output_printer): class for advanced .ly printing.
7061 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7062 convert to pythonesque structure.
7064 * python/rational.py: PD rational number class.
7066 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7068 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7070 * lily/part-combine-iterator.cc: Minor bugfix
7072 * THANKS: Update bughunters
7074 2005-12-02 Werner Lemberg <wl@gnu.org>
7076 * mf/README: Document process for proper mf2pt1 conversion.
7078 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7081 * mf/feta-harmonica.mf: Removed. Unused.
7083 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7085 * scripts/lilypond-book.py (do_file): fix thinkos.
7087 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7089 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7090 ($(outdir)/parser.cc):
7091 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7093 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7095 * ly/titling-init.ly (tagline): it should be a space between
7096 "Music engraving by LilyPond" and the version number.
7098 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7100 * VERSION (PACKAGE_NAME): release 2.7.20
7102 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7104 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7106 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7108 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7110 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7112 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7114 * kpath-guile/: remove directory
7116 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7117 file. Encapsulate kpathsea using commandline tools.
7119 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7122 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7124 * Documentation/user/advanced-notation.itely (Setting automatic
7125 beam behavior): Correct a few typos. Thanks to David Bobroff.
7127 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7128 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7130 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7132 * scripts/*.py: gmane address for bugs.
7134 2005-11-28 Pal Benko <benkop@freestart.hu>
7136 * make/ly-rules.make: add -f switch to mv
7138 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7140 * lily/bar-line.cc: interpret it
7142 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7144 * configure.in (--disable-documentation): New switch.
7146 * GNUmakefile.in: Use it.
7148 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7150 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7152 * scripts/lilypond-book.py (do_file): search chunks for
7155 * GNUmakefile.in: add copy step in between so we can lose the
7156 out-www directories.
7158 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7160 * lily/pango-font.cc (pango_item_string_stencil): put
7161 geometry.width into glyph-string too.
7163 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7165 * scm/define-music-display-methods.scm (RevertProperty):
7166 (OverrideProperty): Use grob-property-path property, a list of
7167 symbols, instead of grob-property, which used to be a single
7169 (BassFigureEvent): a figure can be a plain number, not necessarily a
7172 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7174 * VERSION: release 2.7.19
7176 * lily/figured-bass-engraver.cc (process_music): check
7177 figuredBassCenterContinuations first.
7179 * scm/translation-functions.scm (format-bass-figure): make double
7182 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7185 * lily/system-start-delimiter-engraver.cc: move from
7186 Nested_system_start_delimiter_engraver, rename
7187 Nested_system_start_delimiter_engraver ->
7188 System_start_delimiter_engraver.
7190 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7191 bracket type from hierarchy.
7193 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7195 * lily/rest.cc (y_offset_callback): read staff-position.
7197 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7198 mark after-line-breaking-callback as internal.
7200 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7202 2005-11-25 Werner Lemberg <wl@gnu.org>
7204 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7206 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7208 * stepmake/bin/add-html-footer.py (do_file): add google
7210 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7211 staff if first_start_ is true.
7213 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7215 * scripts/midi2ly.py (split_track): add __repr__ members.
7216 (track_first_item): only return Item if not None. This fixes a
7217 problem when dumping a track that starts with an empty channel.
7219 * python/midi.c: doc module.
7221 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7223 * Documentation/user/global.itely (Creating MIDI files): Fix
7224 compilation problem.
7226 2005-11-22 Graham Percival <gpermus@gmail.com>
7228 * Documentation/user/basic-notation.itely: clarify dynamic
7231 * Documentation/user/advanced-notation.itely: add unicode
7232 escape control example, whatever that is. :)
7234 * Documentation/user/global.itely: added "removing dynamics
7237 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7239 * VERSION (PATCH_LEVEL): release 2.7.18
7241 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7242 System_start_delimiter_engraver by
7243 Nested_system_start_delimiter_engraver.
7245 * lily/nested-system-start-delimiter-engraver.cc (struct
7246 Bracket_nesting_node): new class.
7247 (struct Bracket_nesting_group): new class
7248 (struct Bracket_nesting_staff): new class.
7249 (process_music): create hierarchy of grobs. This allows separate
7250 tuning of different SSDs.
7252 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7253 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7255 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7257 * lily/side-position-interface.cc (aligned_side): multiply
7260 * lily/script-engraver.cc (make_script_from_event): allow setting
7263 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7265 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7267 * scm/define-grobs.scm (all-grob-descriptions): new grob
7268 NestedSystemStartDelimiter.
7270 * input/regression/system-start-heavy-bar.ly: new file.
7272 * lily/nested-system-start-delimiter-engraver.cc: new file.
7274 * lily/nested-system-start-delimiter.cc: new file.
7276 * input/regression/system-start-nesting.ly: new file.
7278 * scm/define-grobs.scm (all-grob-descriptions): use X side
7279 positioning for positioning braces for nested contexts.
7281 * lily/system-start-delimiter.cc (print): don't divide extent by
7283 (print): use style iso. glyph.
7284 (staff_bracket): translate glyph inside routine already.
7286 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7288 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7291 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7293 * scm/define-context-properties.scm
7294 (all-user-translation-properties): rename figuredBassFormatter
7295 from newFiguredBassFormatter.
7297 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7299 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7301 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7303 * lily/beam.cc (calc_beaming): new function.
7304 (calc_shorten): new function.
7306 * THANKS: add Edward Neeman.
7308 * input/regression/accidental-clef-change.ly: new file.
7310 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7312 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7314 * lily/clef-engraver.cc (inspect_clef_properties): reset
7315 localKeySignature for clef changes.
7317 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7319 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7320 add dummy definition that works in Linux and add information in
7321 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7323 * Documentation/user/changing-defaults.itely (Modifying context
7324 plug-ins): Add index for \with.
7326 * Documentation/user/music-glossary.tely (dal segno): Updated
7327 example to version >=2.6.
7329 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7331 * Documentation/user/instrument-notation.itely (Printing chord
7332 names): Reorder \chordmode and \repeat in one example.
7334 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7336 * VERSION: release 2.7.17
7338 * Documentation/topdocs/NEWS.tely (Top): add note about
7341 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7342 new function. Search region of 3 positions for best tie.
7343 (score_configuration): new function.
7344 (score_aptitude): new function.
7345 (generate_configuration): new function.
7346 (get_configuration): new function.
7347 (Tie_formatting_problem): new function
7349 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7351 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7353 * THANKS: add Eduardo Vieira & Ralph Little
7355 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7358 * lily/include/tie-formatting-problem.hh (class
7359 Tie_formatting_problem): add Tie_details to
7360 Tie_formatting_problem. Update calling conventions.
7362 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7365 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7367 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7369 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7370 scm/define-context-properties.scm: Maintenance bugfix: make
7371 ligature brackets work again by removing obsolete ligature
7372 primitive callback push/pop.
7374 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7375 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7378 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7380 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7381 used and do not call it a path.
7382 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7384 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7386 * lily/include/tie-formatting-problem.hh (class
7387 Tie_formatting_problem): new file.
7389 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7391 * Documentation/misc/ChangeLog-2.3: new file.
7393 * lily/audio-staff.cc (output): degarianize.
7395 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7397 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7398 Unset PYTHONOPTIMIZE. Fixes install if set.
7400 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7402 * python/convertrules.py (conv): add warning about drums.
7404 * make/stepmake.make: include toplevel-version.make after config.make.
7406 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7407 also allow python2.4
7409 * config.make.in (configure-srcdir): remove GXX GCC vars.
7411 * stepmake/aclocal.m4: don't do non-srcdir build with
7412 symlinks. Use inclusion, so the src directory name can be changed.
7414 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7416 * make/mutopia-vars.make:
7417 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7420 2005-11-13 Werner Lemberg <wl@gnu.org>
7422 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7423 but the affected path. This ensures that the (overlapping) outlines
7424 have the same direction, which is a necessary prerequisite for
7425 FontForge's algorithm to remove overlaps.
7428 * mf/feta-haak.mf: Formatting.
7429 (draw_bracket): Slightly modify outline to avoid an unnecessary
7431 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7432 them from the affected paths.
7434 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7436 * mf/README: remove xpm / accordion notes.
7438 * lily/tie-column-format.cc (set_chord_outline): add dots into
7439 skyline extents. This fixes tie formatting if the left head has dots.
7441 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7442 space inside the staff.
7443 (get_configuration): shift another position if necessary in case
7446 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7448 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7449 buildscript-dir iso. $(depth)/buildscripts.
7451 * tex/GNUmakefile (local-uninstall): remove
7452 music-drawing-routines.ps juggling.
7454 * stepmake/stepmake/install-targets.make (local-install-files):
7455 prepend src-dir to install targets.
7457 * lily/system-start-delimiter-engraver.cc
7458 (acknowledge_system_start_delimiter): use
7459 add_offset_callback(). This fixes translation of nested
7462 * lily/grob-closure.cc (add_offset_callback): only encaps in
7463 simple_closure if it's a procedure.
7465 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7468 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7469 remove-empty where pertinent.
7471 2005-11-12 Graham Percival <gpermus@gmail.com>
7473 * Documentation/user/instrument-notation.itely: added
7474 Cameron Horsburgh's multiple stanzas docs. Thanks!
7476 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7479 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7480 make picture in builddir, not srcdir.
7482 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7484 * VERSION: release 2.7.16
7486 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7489 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7491 * Documentation/user/examples.itely (Piano templates): Minor
7492 modification to the Piano centered lyrics example.
7494 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7496 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7499 * Documentation/user/point-and-click.itely: simplify p&c
7500 instruction: don't configure firefox. Put lilypond-invoke-editor
7501 in front of the browser.
7503 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7504 (run-browser): new function.
7506 * lily/parser.yy (Lily_lexer): recognize Book
7508 * lily/book.cc (clone): new function
7510 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7512 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7514 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7515 Maintenance bugfix: reduce number of font related warnings by
7516 updating naming conventions for glyph-name.
7518 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7520 * scm/define-grobs.scm (all-grob-descriptions): add
7521 rhythmic-grob-interface to TabNoteHead.
7523 * scm/layout-beam.scm (check-quant-callbacks): remove
7526 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7528 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7529 alignment of centered divisiones.
7531 * scm/scripts.scm (articulations): Maintenance bugfix:
7532 follow-into-staff -> quantize-position.
7534 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7535 plica head in porrectus deminutus.
7537 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7539 * make/lilypond.fedora.spec.in (Group): add %clean section.
7541 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7542 less then 1/5th of total length.
7543 (print): use gap too. Fixes tupletUp-single-bracket.ly
7545 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7546 events into EventChord. This fixes textspanners on mm rests. Fixes
7549 * lily/side-position-interface.cc (get_axis): read side-axis
7550 (set_axis): set side-axis.
7552 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7553 properties everywhere.
7555 * lily/spacing-spanner.cc (breakable_column_spacing): add
7556 average-spacing-wishes. Take maximum if not set.
7557 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7559 * scm/define-grobs.scm (all-grob-descriptions): add
7560 average-spacing-wishes.
7562 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7563 offset callbacks. This fixes alignment for Fingering objects.
7565 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7566 space for key - timesig combination.
7568 * input/regression/script-stem-tremolo.ly (Module): new file.
7570 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7573 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7574 Fixes: c-tremolo-script.ly.
7576 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7578 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7580 * scm/define-grobs.scm (all-grob-descriptions): remove
7581 self-X-offset. Fixes alignment of octavate-8.
7583 * scripts/lilypond-book.py (datadir): look in
7584 LILYPONDPREFIX/share/lilypond/current/
7586 * GNUmakefile.in: symlink current to <VERSION>.
7588 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7590 * lily/main.cc: eps listed as a backend.
7592 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7594 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7596 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7598 * lily/include/score.hh (class Score): remove texts_ member.
7600 * lily/beam.cc (set_stem_lengths): force direction callback.
7601 (print): read quantized-positions, so we can force
7602 Beam::set_stem_lengths to occur.
7603 (rest_collision_callback): use common X parent.
7605 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7607 * flower/file-path.cc (find): Bugfix: Return name of file found.
7609 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7610 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7611 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7613 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7615 * flower/offset.cc: idem.
7617 * mf/*.mf: update email address.
7619 * lily/font-config-scheme.cc: new file.
7621 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7623 * lily/*: cs.uu.nl -> xs4all.nl
7625 * VERSION (PATCH_LEVEL): release 2.7.15
7627 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7630 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7632 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7634 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7636 * lily/staff-performer.cc (process_music): add audio
7637 elements. This makes MIDI instrument changes work once again.
7639 * lily/main.cc (LY_DEFINE): add gmane address.
7641 * lily/beam.cc: remove calc_positions()
7643 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7644 original_ in private scope.
7645 (class Grob): drop pscore_ pointer, change to output_def pointer.
7646 (class Grob): cleanup class definition.
7648 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7650 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7652 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7653 absolute. Better diagnostics.
7655 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7656 This makes lilypond run from the build directory using argv0
7657 relocation (without any --prefix or LILYPONDPREFIX setting).
7659 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7661 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7663 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7664 with simple-closure.
7666 * lily/self-aligment-interface.cc (set_align_self): new function
7667 (set_center_parent): new function.
7669 * lily/side-position-interface.cc (set_axis): new function.
7671 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7674 * scm/define-grob-properties.scm (all-user-grob-properties):
7675 remove [XY]-offset-callbacks add [YX]-offset
7677 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7679 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7680 entry for time signatures after breathing signs. Bug report by
7683 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7685 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7686 not absolute, make it absolute using PATH.
7688 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7690 * python/midi.c (initmidi): Fix type for mingw.
7692 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7694 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7696 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7699 * stepmake/aclocal.m4: Support python cross compiling.
7701 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7704 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7706 * scm/output-lib.scm (chain-grob-member-functions): replace
7709 * lily/chained-callback.cc (Module): remove file.
7711 * lily/rest-collision.cc (force_shift_callback_rest): change to
7714 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7716 * lily/grob.cc (y_parent_positioning): remove axis argument from
7717 parent_positioning callbacks.
7718 (Grob): junk init code
7719 (get_offset): use generic property callbacks for
7720 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7721 (axis_parent_positioning): new function
7722 (axis_offset_symbol): new function
7723 (chain_offset_callback): new function
7724 (add_offset_callback): new function
7726 * lily/beam.cc (rest_collision_callback): change signature; this
7727 is now a chained callback.
7729 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7730 callback administration.
7732 * lily/simple-closure.cc: new file. Smob type that allows "grob
7735 (ly:make-simple-closure FUNC A B)
7737 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7740 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7743 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7745 * lily/rest.cc (polyphonic_offset_callback): remove.
7747 * lily/script-engraver.cc (try_music): remove bool* argument.
7749 * scm/script.scm (default-script-alist): set quantize-position
7752 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7754 * lily/side-position-interface.cc (aligned_side): move staff
7755 position quantization from
7756 Side_position_interface::quantised_position().
7757 (quantised_position): remove
7759 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7761 * input/regression/beam-quant-standard.ly: reindent, set
7762 debug-beam-quanting to #t.
7764 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7765 10000 if this is a "hard" concave beam.
7767 * lily/beam.cc (calc_least_squares_positions): change from
7768 calc_least_squares_dy
7769 (set_stem_lengths): this is now a chained callback.
7771 * lily/context-property.cc (execute_general_pushpop_property):
7772 bugfix override with procedure should have effect.
7774 * scm/define-grob-properties.scm (all-internal-grob-properties):
7775 remove position-callbacks.
7777 * scm/define-grobs.scm (all-grob-descriptions): use
7778 ly:make-callback-chain for positions property.
7780 * scm/layout-beam.scm (check-quant-callbacks): return list of
7783 * scm/lily.scm (type-p-name-alist): add callback-chain
7785 * lily/lily-guile.cc (type_check_assignment): type check failure
7786 is warning not message.
7788 * lily/grob-property.cc (try_callback): walk callback chain if
7791 * lily/chained-callback.cc: new file. new smob type.
7793 * lily/lily-guile.cc (procedure_arity): new function.
7795 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7797 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7799 2005-10-25 John Mandereau <john.mandereau@free.fr>
7801 * Documentation/user/instrument-notation.itely (Figured bass):
7802 describe new features
7804 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7806 * lily/beam.cc (calc_least_squares_dy): use property callback.
7808 * lily/beam-concave.cc (calc_concaveness): use property callback.
7810 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7812 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7816 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7818 * scm/layout-page-layout.scm (page-headfoot): annotate
7821 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7823 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7824 doesn't take y-space.
7826 * scm/paper.scm (paper-alist): fix A7 dimensions.
7828 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7830 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7831 src-wildcard, remove $(wildcard).
7833 * po/GNUmakefile (PO_FILES):
7834 * ps/GNUmakefile (PS_FILES):
7835 * tex/GNUmakefile (TEX_FILES):
7836 * cygwin/GNUmakefile (POSTINSTALLS):
7837 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7838 some wildcard calls.
7840 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7842 * THANKS: add Thomas Bushnell.
7844 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7846 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7847 (lilypond-main): Redirect to gui-main if 'gui is set.
7849 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7850 for alternative installations kludging s/share/lib/g
7853 * SConstruct (libdir_package_version): Define.
7855 * python/SConscript:
7856 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7859 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7861 * lily/main.cc: clarify --safe.
7863 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7865 * VERSION: release 2.7.14
7867 * Documentation/user/*.itely: remove minimumVerticalExtent.
7869 * scm/define-grobs.scm (all-grob-descriptions): remove
7870 RemoveEmptyVerticalGroup
7872 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7874 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7877 * python/convertrules.py (conv): add rules.
7879 * lily/grob.cc: remove is_empty()
7881 * lily/grob-property.cc: remove add_to_list_property().
7883 * scripts/convert-ly.py (datadir): add prefix switching hack to
7886 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7887 space-function tweak.
7889 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7891 * scm/define-grob-properties.scm (all-user-grob-properties):
7892 remove callback property.
7894 * lily/include/grob.hh (class Grob): remove property_callbacks_
7895 member. Properties of procedure type are assumed to be callbacks.
7897 * lily/ligature-engraver.cc (override_stencil_callback):
7898 rewrite. Use noteHeadLigaturePrimitive as source.
7900 * scm/define-grob-properties.scm (all-internal-grob-properties):
7901 remove ligature-primitive-callback
7903 * lily/include/dimension-cache.hh (class Dimension_cache): make
7904 class, with Grob as friend.
7906 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7907 has_extent_callback()
7909 * scm/translation-functions.scm (format-new-bass-figure): read
7910 figuredBassPlusDirection
7912 * scm/define-context-properties.scm
7913 (all-user-translation-properties): add figuredBassPlusDirection.
7915 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7917 * lily/align-interface.cc (set_ordered): new function.
7919 * lily/grob.cc (flush_extent_cache): rewrite.
7921 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7922 Interval pointer directly.
7924 * lily/main.cc (setup_paths): insert extra / .
7925 (setup_paths): junk cff entry.
7927 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7930 * lily/axis-group-engraver.cc (finalize): remove
7931 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7933 * lily/grob.cc (Grob): don't set extent from ctor.
7934 (extent): use property callbacks.
7936 * lily/axis-group-interface.cc: remove set_axes() function.
7938 * lily/grob-property.cc (del_property): new function.
7940 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7942 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7944 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7946 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7948 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7950 * mf/SConscript: Updates.
7952 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7954 * stepmake/stepmake/*:
7958 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7959 from any directory in build-dir. Cleanups.
7961 * make/srcdir.make.in: Remove.
7963 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7965 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7968 * lily/SConscript: Remove ttftools.
7970 * SConstruct: Resurrect.
7972 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7974 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7977 * lily/paper-book.cc (add_score_title): put Paper_score title into
7980 * scm/translation-functions.scm (format-new-bass-figure): also
7981 allow plus in combination with _
7983 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7985 * VERSION: 2.7.13 released.
7987 * lily/note-collision.cc (check_meshing_chords): don't wipe
7988 stencil, merely set transparent.
7990 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7991 (Top): document #'callbacks.
7992 (Top): document nested \override.
7994 * input/regression/figured-bass.ly: update for slash and pluses.
7996 * input/regression/figured-bass-continuation-forbid.ly (Module):
7999 * scm/translation-functions.scm (format-new-bass-figure): use
8000 slashed-digit if diminished is set.
8001 (format-new-bass-figure): add + if 'augmented is set.
8003 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8005 * input/test/piano-staff-distance.ly: remove file.
8007 * Documentation/user/advanced-notation.itely (Formatting cue
8008 notes): use length-fraction for making stems/beams smaller.
8010 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8013 * lily/new-figured-bass-engraver.cc: new property
8014 centerFiguredBassContinuations
8016 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8019 * lily/context-property.cc (execute_general_pushpop_property):
8022 * input/regression/override-nest.ly: new file.
8024 * python/convertrules.py (FatalConversionError.subber): conversion
8025 rule for #'callbacks
8027 * input/regression/override-nest.ly: new function.
8029 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8032 * lily/context-property.cc (lookup_nested_property): new function.
8033 (evict_from_alist): new function.
8034 (general_pushpop_property): new function.
8035 (execute_general_pushpop_property): rewrite. Support nested
8038 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8040 * lily/beam.cc: use length-fraction too.
8042 * scm/define-grob-properties.scm (all-user-grob-properties):
8043 remove property flag-width-function
8044 (all-user-grob-properties): remove space-function.
8046 * scm/layout-beam.scm: remove flag-width-function.
8048 * lily/beam.cc: remove flag-width-function
8050 * scm/layout-beam.scm: remove beam dir functions.
8052 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8054 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8055 for easier grace tweaks.
8057 * lily/beam.cc: remove dir-function.
8059 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8061 * lily/grob.cc: remove spacing-procedure.
8063 * lily/note-head.cc (calc_stem_attachment): new function.
8064 (internal_print): use callback to get glyph-name.
8066 * lily/grob-property.cc (get_interfaces): new function.
8068 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8070 * lily/stem.cc (calc_stem_end_position): new function.
8071 (calc_length): new function.
8072 document details for stem.
8073 remove Stem::get_direction()
8075 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8077 * lily/grob-property.cc (set_callback): new function.
8079 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8081 * lily/item-scheme.cc: new file.
8083 * lily/bar-line.cc (before_line_breaking): remove function.
8084 remove bar-size-procedure, break-glyph-function
8086 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8088 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8090 * lily/system-start-delimiter.cc (print): suicide from
8091 here. Remove after_line_breaking_callback.
8093 * lily/script-interface.cc (calc_direction): use callback for direction.
8095 * lily/side-position-interface.cc (aligned_side): don't use
8096 Side_position_interface::get_direction directly. Use callback.
8098 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8100 (get_print_stencil): rename from get_stencil: create stencil with
8101 transparency, color and cause.
8103 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8105 * python/convertrules.py (conv): insert temporary warning rule.
8107 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8109 * lily/grob-property.cc (try_callback): remove marker if applicable.
8111 * lily/grob.cc: elucidate doc about after/before-line-breaking
8113 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8115 * lily/stem.cc (height): idem.
8117 * lily/stem-tremolo.cc: idem.
8119 * lily/slur.cc (height): don't use get_uncached_stencil()
8121 * lily/rest.cc (y_offset_callback): use offset callback
8122 iso. after-line-breaking callback.
8124 * lily/grob.cc: change after/before-line-breaking-callback to
8125 after/before-line-breaking dummy properties.
8127 * lily/include/grob.hh: remove Grob_status.
8129 * scm/define-context-properties.scm
8130 (all-user-translation-properties): remove verticalAlignmentChildCallback
8132 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8133 (calc_direction): use callback
8134 (calc_positions): use callback.
8136 * lily/tie.cc (calc_direction): use callback. Only call parent
8137 positioning for more than one tie.
8139 * lily/tie-column.cc (calc_positioning_done): use callback
8141 * lily/slur-scoring.cc (calc_control_points): use callback
8143 * lily/slur.cc (calc_direction): use callback.
8145 * lily/note-collision.cc (force_shift_callback): remove.
8147 * lily/dot-column.cc (force_shift_callback): remove. Use
8148 other_axis_parent_positioning.
8150 * lily/grob.cc (other_axis_parent_positioning): new function.
8151 (same_axis_parent_positioning): new function
8153 * lily/align-interface.cc (alignment_callback): remove function.
8155 * lily/note-collision.cc (calc_positioning_done): use callback.
8157 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8158 (calc_direction): idem.
8159 remove print function.
8161 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8163 * lily/dot-column.cc (calc_positioning_done): use callback.
8165 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8167 * lily/beam.cc (calc_direction): use pseudo-property for beam
8169 (calc_positions): use callback
8171 * lily/align-interface.cc (calc_positioning_done): use
8172 callback. Fold fixed distance and normal alignment in one function.
8174 * lily/stem.cc (calc_stem_end_position): use callback.
8175 (calc_positioning_done): idem.
8176 (calc_direction): idem.
8177 (calc_stem_end_position): idem
8178 (calc_stem_info): idem.
8180 * lily/grob-property.cc (get_property_data): new function:
8181 (try_callback): new function.
8183 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8186 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8188 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8190 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8194 * lily/include/*.hh (Module): compile fixes.
8196 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8198 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8199 as an argument for char-syntax: use (char-syntax (or nil 0))
8200 instead of (char-syntax nil), thanks to Milan Zamazal.
8202 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8204 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8207 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8210 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8212 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8213 add class_name() method.
8215 * lily/music-scheme.cc: remove ly:music-name.
8217 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8219 * cygwin/postinstall-lilypond.sh: Remove cruft.
8221 * cygwin/postremove-lilypond.sh: Remove.
8223 * cygwin/GNUmakefile (default): Remove postremove rules.
8225 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8227 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8230 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8233 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8234 consider break index for broken spanner.
8236 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8237 characters from string before splitting.
8239 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8241 * scm/framework-ps.scm (output-preview-framework): use
8242 is-book-title to determine whether to chop off the booktitle.
8244 * lily/paper-book.cc (systems): init from book-title-properties
8245 (add_score_title): init score-title-properties.
8247 * ly/paper-defaults.ly: add {score,book}-title-properties.
8249 * scm/document-backend.scm (lookup-interface): error message if
8250 using unknown interface.
8252 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8255 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8257 (make_bracket): new function.
8259 * scm/lily.scm (define-scheme-options): add paper-size option.
8261 * ly/declarations-init.ly (laissezVibrer): get paper size from
8264 * scm/translation-functions.scm: use \fontsize for changing the
8267 * scm/define-grobs.scm (all-grob-descriptions): set
8268 between-length-limit to 1.0
8270 * lily/tie-helper.cc: add between_length_limit_ detail property.
8272 * mf/feta-bolletjes.mf: typos.
8274 * lily/note-head.cc (internal_print): don't shadow idx
8275 parameter. This fixes wrong attachment for do shape heads.
8277 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8279 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8281 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8283 * scm/layout-slur.scm: rename from slur.scm
8285 * scm/layout-page-layout.scm: rename from page-layout.scm
8287 * scm/layout-beam.scm: rename from beam.scm
8289 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8290 bass-figure-interface
8292 * lily/new-figured-bass-engraver.cc (process_music): add
8293 implicitBassFigures property.
8295 * scm/define-markup-commands.scm (pad-x): new markup.
8297 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8298 minimumVerticalExtent on FiguredBass context.
8300 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8301 case the continuation crosses a line break.
8303 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8305 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8306 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8307 absolute file name bug.
8309 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8311 * VERSION (PACKAGE_NAME): release 2.7.12
8313 * input/regression/figured-bass-continuation-center.ly: new file.
8315 * input/regression/beam-outside-beamlets.ly: new file.
8317 * lily/beam.cc (set_beaming): don't clip edges.
8318 (connect_beams): don't clip edges.
8320 * lily/beaming-info.cc (clip_edges): new function.
8322 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8324 * Documentation/user/instrument-notation.itely (Figured bass):
8325 demonstrate extenders, update seealso links.
8327 * scm/titling.scm (marked-up-headfoot): change tagline
8328 handling. tagline = ##f will blank the tagline as well.
8330 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8332 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8334 * lily/new-figured-bass-engraver.cc (struct
8335 New_figured_bass_engraver): add new_music_found_ member.
8337 * lily/lilypond-version.cc (Lilypond_version): deal with
8338 incorrectly formatted version strings.
8340 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8341 New_figured_bass_engraver by default.
8343 * lily/ttf.cc (print_trailer): only define glyph names when
8344 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8346 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8348 * lily/horizontal-bracket.cc (make_bracket): new function.
8350 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8351 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8352 BassFigureLine, BassFigureAlignment
8354 * lily/new-figured-bass-engraver.cc (process_music): new file.
8356 * lily/figured-bass-continuation.cc: new file.
8358 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8361 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8363 * scripts/lilypond-book.py: Bug fix, put the quote around the
8364 actual score for LaTeX documents.
8366 * scm/define-grobs.scm (all-grob-descriptions): Change
8367 collapse-height of the SystemStartBracket grob to 5.0,
8368 so the bracket disappears for single stave score lines (similarly
8369 to SystemStartBraces).
8371 * Documentation/user/advanced-notation.itely (Polymetric
8372 notation): Clarify the use of compressMusic.
8374 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8375 that the grace spacer note in other staves need the same duration
8376 and document the stroke-style property.
8378 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8380 * Documentation/user/global.itely (Vertical spacing): document
8381 alignment-extra-space and fixed-alignment-extra-space.
8383 * Documentation/topdocs/NEWS.tely (Top): add entry.
8385 * input/regression/alignment-vertical-spacing.ly: new file.
8387 * python/convertrules.py (conv): add rule.
8389 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8391 * lily/align-interface.cc (stretch_after_break): new
8392 function. Read fixed-alignment-extra-space property.
8393 (align_elements_to_extents): read alignment-extra-space property.
8395 * lily/lily-guile.cc (robust_scm2dir): new function.
8397 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8398 (annotate-space-left): new function. Annotate space left on page.
8399 (annotate-y-interval): new function.
8400 (paper-system-annotate-last): new function. Annotate bottom-space.
8402 * mf/feta-beugel.mf (y):
8404 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8406 * VERSION (PACKAGE_NAME): release 2.7.11
8408 * scm/lily-library.scm (interval-translate): new function
8409 (interval-center): new function.
8411 * scm/page-layout.scm (paper-system-annotate): new function. Add
8412 arrows for dimensions.
8414 * scm/stencil.scm (dimension-arrows): new function.
8416 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8418 * input/regression/page-spacing.ly: add annotatespacing
8420 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8421 (LY_DEFINE): new function ly:paper-system-set-property!
8423 * Documentation/user/global.itely (Paper size): explain how to add
8426 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8427 correspond to GS's definition.
8429 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8431 (print): only connect to next bracket if the next one is alive.
8432 (print): set padding to 0.0 if the bound is a breakable
8433 column. This makes tupletFullLength brackets reach up to the staff
8434 line if it doesn't connect to the next line.
8436 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8438 * lily/bar-number-engraver.cc: correct docs.
8440 * scm/output-lib.scm (first-bar-number-invisible): rename from
8441 default-bar-number-visibility
8443 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8445 * scm/define-music-properties.scm (all-music-properties): remove
8448 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8450 * po/fi.po: refresh.
8452 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8454 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8456 (disappear): bugfix.
8458 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8460 * lily/include/paper-system.hh (class Paper_system): remove
8461 staff_extents_ member.
8463 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8465 * lily/include/paper-system.hh (class Paper_system): remove
8466 number_ variable. Remove is_title_. Remove break_before_penalty_
8468 * lily/paper-book.cc (systems): use 'number property iso. number_
8471 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8472 remove ly:paper-system-number.
8474 * scm/lily-library.scm (paper-system-title?): new function.
8476 * lily/book.cc (process): bugfix: flip ?: cases.
8478 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8481 * ly/music-functions-init.ly: add outputProperty music function.
8483 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8485 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8487 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8489 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8491 * lily/paper-system.cc (internal_get_property): new function.
8493 * Documentation/user/global.itely (Vertical spacing): refer to
8496 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8499 * input/regression/page-spacing.ly: new file.
8501 * input/regression/page-top-space.ly: new file.
8503 * lily/spacing-spanner.cc: cmath -> math.h
8505 * lily/paper-system.cc (read_left_bound): new function. Read
8506 line-break-system-details from left bound to determine extents.
8508 * Documentation/user/programming-interface.itely (Using LilyPond
8509 syntax inside Scheme): change applyxxx -> applyXxx.
8511 * ly/music-functions-init.ly: add outputProperty music function.
8513 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8515 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8517 * python/convertrules.py (conv): rule
8519 * ly/music-functions-init.ly: applyxxx -> applyXxx
8521 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8524 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8526 * flower/include/real.hh: include <math.h> iso. <cmath>
8528 * flower/include/offset.hh: include real.hh
8530 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8532 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8533 fix example, now that 'interfaces is no longer directly available.
8535 * lily/book.cc (process): don't crash if paper == NULL.
8539 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8541 * scm/define-music-types.scm (music-descriptions): set length and
8542 start-callback for QuoteMusic
8544 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8546 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8547 arguments. Fixes compilation error with gcc 3.3.
8549 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8551 * VERSION: release 2.7.10
8553 * stepmake/stepmake/python-module-rules.make
8554 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8556 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8559 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8561 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8562 -Werror. Otherwise GCC barfs over various optimizations.
8564 * scm/define-grob-properties.scm (all-internal-grob-properties):
8565 add note-head property
8567 * Documentation/user/instrument-notation.itely (Laissez vibrer
8570 * input/regression/laissez-vibrer-ties.ly: new file.
8572 * lily/laissez-vibrer-engraver.cc: new file.
8574 * lily/include/tie-column-format.hh: new file.
8576 * lily/tie-column-format.cc: new file.
8578 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8580 * lily/laissez-vibrer-tie.cc: new file.
8582 * lily/include/laissez-vibrer-tie.hh: new file.
8584 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8586 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8588 * scm/define-grobs.scm (all-grob-descriptions): add
8589 LaissezVibrerTie, LaissezVibrerTieColumn
8591 * lily/tie-column.cc (set_tie_config_directions): new function
8592 (final_shape_adjustment): new function.
8593 (shift_small_ties): new function.
8595 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8597 * lily/include/tie.hh (struct Tie_details): add x_gap_
8598 (struct Tie_configuration): add head_position_
8600 * lily/tie-column.cc (set_chord_outline): new function.
8602 * mf/cmr.enc.in: remove file.
8604 2005-09-11 Graham Percival <gpermus@gmail.com>
8606 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8608 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8610 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8611 reduce aliasing effects.
8613 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8616 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8618 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8620 * flower/include/real.hh: std::fabs too.
8622 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8624 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8626 * lily, flower: Include C++ iso C headers. Import namespace std
8629 * lily/side-position-interface.cc:
8631 * lily/note-head.cc:
8632 * lily/include/includable-lexer.hh:
8633 * flower/include/string-data.icc: Remove using std::*.
8635 * lily, flower: Include C++ iso C headers. Import namespace std
8638 * lily/side-position-interface.cc:
8640 * lily/note-head.cc:
8641 * lily/include/includable-lexer.hh:
8642 * flower/include/string-data.icc: Remove using std::*.
8644 * Documentation/user/instrument-notation.itely (Entering lyrics):
8645 Multiple latin-1->utf-8 conversion fix.
8647 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8649 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8651 * lily/tie.cc (get_configuration): also avoid dots for non-space
8654 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8656 * Documentation/user/instrument-notation.itely: Bugfix.
8658 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8660 * tex/GNUmakefile: don't install texinfo.tex
8662 * tex/ : cleanup: remove unused files.
8664 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8666 * flower/include/real.hh: using std::{isnan,isinf}
8668 * VERSION (PATCH_LEVEL): release 2.7.9
8670 2005-09-05 Graham Percival <gpermus@gmail.com>
8672 * Documentation/user/ instrument-notation.itely,
8673 advanced-notation.itely: minor tweaks.
8675 * input/test/script-chart.ly: add item padding.
8677 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8679 * flower/offset.cc: use math.h iso. <cmath>
8681 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8684 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8685 (widen-left-stencil-edges): new function. Fix alignment problems
8686 with LaTeX includegraphics.
8688 * lily/text-interface.cc (interpret_markup): use abort().
8690 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8692 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8694 * lily/tie.cc (get_configuration): update bezier shape as we
8696 (get_configuration): don't move large ties if we're outside of the
8699 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8701 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8703 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8705 * .cvsignore: Add auto-generated configure files and then some.
8707 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8709 * scm/define-grobs.scm (DynamicLineSpanner): Add
8710 X-extent-callback. Fixes hairpin-slur collision.
8712 2005-08-31 Graham Percival <gpermus@gmail.com>
8714 * Documentation/user/advanced-notation.itely,
8715 basic-notation.itely: minor changes.
8717 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8719 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8720 \linebreak between each .eps file if \betweenLilyPondSystem is
8723 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8724 music): Document the \linebreak
8726 * Documentation/user/lilypond-book.itely,
8727 input/tutorial/lbook-latex-test.tex,
8728 Documentation/user/examples.itely: Remove \usepackage{graphics}
8730 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8732 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8734 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8737 * scripts/lilypond-book.py (PREAMBLE_LY): define
8738 inside-lilypond-book
8739 (modify_preamble): new function. Insert \RequirePackage{graphics}
8740 when no {graphics found in preamble.
8742 2005-08030 Graham Percival <gpermus@gmail.com>
8744 * Documentation/user/basic-notation.itely, global.itely,
8745 tutorial.itely: misc small changes.
8747 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8749 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8752 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8754 * lily/tie-column.cc (new_directions): put Tie down on center
8757 * lily/script-interface.cc (before_line_breaking): use
8758 Grob::programming_error
8760 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8762 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8765 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8767 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8769 2005-08-29 Werner Lemberg <wl@gnu.org>
8771 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8772 the `*.scale.pfa' files to avoid warnings.
8774 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8776 * lily/tempo-performer.cc (process_music): idem.
8778 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8780 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8782 * Documentation/user/advanced-notation.itely (Text markup): not a
8785 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8787 * lily/staff-performer.cc (initialize): add tempo/name to
8791 2005-08-26 Graham Percival <gpermus@gmail.com>
8793 * Documentation/user/advanced.itely: add text-only example.
8795 * Documentation/user/invoking.itely: add index entries for
8798 * Documentation/user/ tutorial.itely, basic-notation.itely:
8799 small fixes suggested by Steve D. Thanks!
8801 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8803 * input/regression/markup-bidi-pango.ly: new file.
8805 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8806 standard. Remove #ifdef. Remove memleak.
8807 (text_stencil): use text_dir to decide how to composite items.
8808 (text_stencil): determine uniform text direction for the entire
8811 * scripts/lilypond-book.py (output_name): remove
8812 latex_filter_cmd. Non-portable to non-Unix systems.
8813 (get_latex_textwidth): use File.write and os.unlink() instead.
8815 * THANKS: add Vicente & Trevor.
8817 * lily/grob.cc (discretionary_processing): look up origin for
8818 programming_error too.
8820 * input/regression/tie-broken.ly: new file.
8822 * lily/tie-column.cc (set_chord_outlines): set outline for line
8825 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8827 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8828 unscaled transform, just translate stencils.
8830 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8833 * scm/define-markup-commands.scm (wordwrap-string): use
8835 (wordwrap-stencils): idem.
8838 (wordwrap-stencils): translate last line to right for
8839 text-direction = LEFT.
8841 * scm/define-grob-properties.scm (all-user-grob-properties): add
8844 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8846 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8847 when copying a Lily_parser object.
8849 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8851 * scm/define-markup-commands.scm (null): add null markup.
8853 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8855 * lily/item.cc: Add documentation of center-invisible
8857 2005-08-24 Graham Percival <gpermus@gmail.com>
8859 * Documentation/user/advanced-notation.itely: add info about
8862 * Documentation/user/programming-interface.itely: fix example
8863 involving raised text.
8865 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8867 * lily/beam.cc (print): fix X start/end points of isolated
8870 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8872 * lily/multi-measure-rest.cc (set_text_rods): new function.
8874 * lily/vertical-align-engraver.cc (process_music): call
8875 Align_interface::set_axis(). This forces #'elements to be ordered,
8876 preventing random vertical reordering of staves.
8878 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8879 add avoid-slur property.
8881 * Documentation/user/basic-notation.itely (Measure repeats): add
8882 countPercentRepeats example.
8884 * Documentation/user/advanced-notation.itely (Other text markup
8885 issues): remove remark about normal-font. We have \normal-text
8887 * input/regression/tie-chord.ly: add note about remaining bugs.
8889 * lily/tie.cc (print): try Tie_column::set_directions () if
8890 control-points not yet defined.
8892 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8894 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8895 extent. This fixes braces falling out of the EPS bbox.
8897 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8900 2005-08-23 Graham Percival <gpermus@gmail.com>
8902 * {various} : change #up->#UP and #down->#DOWN.
8904 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8906 * Documentation/user/advanced-notation.itely: clarify
8907 what objects handles text on a multimeasure rest.
8909 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8911 * VERSION (PATCH_LEVEL): release 2.7.7
8913 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8915 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8917 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8919 * input/regression/*.ly: formatting clean-up. Default layout
8920 before music expression.
8922 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8923 romanze28-2 example.
8925 * scm/ps-to-png.scm: remove dir-re function.
8926 (make-ps-images): generate page names, instead of globbing them.
8927 This brings down LilyPond memory usage for make web by a factor
8930 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8931 don't use glob. With 3000 files, globbing
8932 Documentation/user/out-www/ can take too much time.
8934 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8936 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8938 * input/regression/tie-manual.ly: new file
8940 * input/regression/tie-chord.ly: update.
8942 * flower/include/interval.hh (struct Interval_t):
8944 * lily/tie.cc (distance): new function
8945 (height): new function.
8946 (init): new function
8947 (Tie_details): new struct.
8949 * lily/skyline.cc (skyline_height): new function.
8951 * lily/tie-column.cc (set_chord_outlines): new function.
8952 (new_directions): read tie-configuration
8954 * lily/skyline.cc: fix ASCII art.
8956 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8958 * python/convertrules.py (string_or_scheme): Fix spelling error
8960 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8962 * lily/tie-column.cc (set_directions): set directions only once.
8963 (add_configuration): new function.
8965 * lily/tie.cc (set_control_points): new function
8967 * lily/tie-column.cc (new_directions): new function.
8969 * ly/music-functions-init.ly: set 'pitch property
8970 iso. trill-pitch. This makes \relative work with \pitchedTrill
8972 * lily/tie.cc (get_configuration): new function. Don't generate
8973 control points, rather, generate configuration.
8974 remove head-pair property.
8976 * lily/include/tie.hh (struct Tie_configuration): new struct.
8978 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8980 * Documentation/topdocs/NEWS.tely: clarify.
8982 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8984 * lily/tie.cc: remove minimum-length
8986 * scm/define-grob-properties.scm (all-user-grob-properties):
8987 remove staffline-clearance, y-offset
8989 * input/regression/tie-dots.ly (Module): remove.
8991 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8992 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8994 * input/regression/tie-single.ly: new file.
8996 2005-08-21 Graham Percival <gpermus@gmail.com>
8998 * ly/bagpipe.ly: fix compile problem.
9000 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9002 * lily/midi-item.cc (name): new method.
9004 * lily/staff-performer.cc (acknowledge_audio_element): use
9005 signature of baseclass.
9007 * lily/engraver-group.cc (do_announces): move recursion call out
9010 * lily/drum-note-performer.cc (class Drum_note_performer): use
9011 process_music everywhere.
9013 * ly/performer-init.ly: add default children everywhere.
9015 * lily/paper-book.cc (output): call paper-book-write-midis
9016 directly: always write MIDI, even if no \layout {} block.
9018 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9020 * VERSION (PACKAGE_NAME): release 2.7.6
9022 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9023 about not being able to handle repeat.
9025 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9027 * Documentation/user/examples.itely (Piano templates):
9028 * lily/include/performer-group.hh: Remove last traces of
9029 Performer_group_performer. Fixes make web.
9031 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9033 * Documentation/user/examples.itely (Piano templates): change
9034 Engraver_group_engraver -> Engraver_group
9036 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9037 scm_stand_in_procs is not weak_any.
9039 * lily/volta-bracket.cc (print): don't use strcmp().
9041 * lily/volta-engraver.cc (process_music): use
9042 Text_interface::is_markup() for setting the 'text property of the
9045 * input/mutopia/claop.py (accents): update syntax to 2.6
9047 * scm/define-context-properties.scm
9048 (all-user-translation-properties): add countPercentRepeats.
9050 * Documentation/user/basic-notation.itely (Measure repeats): add
9051 isolated percent example.
9053 2005-08-18 Graham Percival <gpermus@gmail.com>
9055 * input/ {various}: change direction #1, #-1 to
9056 #up/#down or \fooUp, \fooDown.
9058 * Documentation/user/music-glossary.tely: #-1 to #down.
9060 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9061 to #up, #-1 to #down.
9063 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9065 * lily/include/engraver-group.hh: rename.
9067 * lily/include/performer-group.hh: rename.
9069 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9071 * input/test/script-abbreviations.ly: Removed some old LaTeX
9074 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9076 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9077 Remove functions. Remove if 1: constructs, reindent.
9079 * scripts/convert-ly.py (add_version): Add functions from
9082 * scm/script.scm (default-script-alist):
9083 s/priority/script-priority. Fixes script stacking. Backportme.
9084 (Fermata): Very low priority.
9086 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9088 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9090 * input/regression/slur-script.ly: remove padding tweaks. Add
9093 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9094 time sigs and related stuff.
9096 * scm/define-grob-properties.scm (all-user-grob-properties): add