1 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * stepmake/bin/add-html-footer.py (compose): remove setgcos
5 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
7 * GNUmakefile.in (install-help2man): install-help2man target.
9 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
11 * SConstruct (configure): Do not check for /bin/sh.
13 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
15 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
18 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
20 * input/regression/fret-boards.ly: new file.
22 * po/de.po: new po courtesy translation team.
24 * scripts/lilypond-book.py (get_option_parser): add newline to doc
27 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
29 * ly/gregorian-init.ly (neumeDemoLayout): update
30 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
32 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
33 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
35 2006-10-27 Erlend Aasland <erlenda@gmail.com>
37 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
38 Yet another build fix.
40 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
42 * SConstruct (lilypondprefix): use sorted() for list_sort()
45 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
47 * flower/SConscript: Unit test rules.
49 * flower/test-std.cc: Compile fix.
51 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
53 * python/midi.c (pymidi_parse_track): warning fixes.
55 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
58 2006-10-26 Graham Percival <gpermus@gmail.com>
60 * Documentation/user/ {basic-, global}: minor changes from mailist.
62 2006-10-26 Erlend Aasland <erlenda@gmail.com>
64 * scm/define-grobs.scm: trivial beautification
66 * lily/tie-performer.cc: no need to #include "pqueue.hh"
68 * lily/source-file.cc: put multibyte var inside #if clause
70 * scm/define-grob-interfaces.scm:
71 * scm/define-grob-properties.scm:
72 Build fix (string-fret-finger-combinations)
74 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
77 * Documentation/user/lilypond-book.itely: Build fix.
79 2006-10-26 Joe Neeman <joeneeman@gmail.com>
81 * lily/system.cc (get_paper_system):
82 * lily/paper-book.cc (systems):
83 move most of the backwards compatibility stuff into
86 * Documentation/topdocs/NEWS.tely: add 2 entries for the
89 * Documentation/user/page.itely: remove time-scaled-music
90 bug for the Page_turn_engraver
92 * lily/paper-book.cc (set_system_penalty): backwards
93 compatibility (breakbefore) for the old page breaker
95 2006-10-25 Graham Percival <gpermus@gmail.com>
97 * Diocumentation/user/instrument-notation.itely: added more
98 info about stanzas; thanks Geoff!
100 * Documentation/user/ {basic, advanced}: small fixes from
103 * THANKS: add some bug reporters.
105 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
107 * scm/define-context-properties.scm (all-user-translation-properties):
108 noteToFretFunction: Add.
110 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
111 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
113 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
115 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
118 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
119 Remove bashism in delete.
121 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
123 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
125 * scm/translation-functions.scm (determine-frets-mf): flatten let*
127 * scm/define-context-properties.scm
128 (all-user-translation-properties): add maximumFretStretch property.
130 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
132 * lily/source-file.cc (get_counts): use multibyte variable.
134 * scm/translation-functions.scm (determine-frets-mf): new
135 function: compute fret numbers.
137 * scm/output-lib.scm (string-frets->description) new function.
138 (fret-board::calc-stencil): new function
140 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
142 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
144 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
146 * lily/tab-note-heads-engraver.cc: cleanups.
148 * lily/fretboard-engraver.cc: new file
150 * ly/engraver-init.ly: add FretBoards context
152 2006-10-24 Joe Neeman <joeneeman@gmail.com>
154 * lily/grob.cc (pure_relative_y_coordinate)
155 (pure_height): use the new call_pure_function stuff
157 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
160 * lily/side-position-interface.cc (pure_y_aligned_side): add an
163 * lily/simple-closure.cc (ly_eval_simple_closure): make
164 simple-closure evaluatable from scheme
165 (evaluate_with_simple_closure): make simple-closures pure-
168 * lily/slur.cc (pure_outside_slur_callback): new function
170 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
171 fits in with previous changes that made the page forces much
174 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
175 and pure-Y-extent into this new function.
176 (pure-conversions-alist): add outside-slur-callback
178 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
180 * Documentation/user/advanced-notation.itely (Instrument names):
181 Remove obsolete bug workaround for instrument names on piano
184 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
186 * Documentation/user/lilypond-book.itely (Integrating DocBook and
187 music): patch by Bertalan Fodor for docbook.
189 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
190 of $(LILYPOND). Prevents lilypond run for .txt files.
192 * INSTALL.txt: gitness.
194 * .cvsignore: update to force gitness.
196 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
198 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
199 detect suicide in nested tuplets.
201 2006-10-23 Werner Lemberg <wl@gnu.org>
203 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
204 typo in argument to FT_Get_X11_Font_Format.
206 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
208 * stepmake/stepmake/po-vars.make: more gitness.
210 * flower/polynomial.cc (check_sol): no empty if bodies.
212 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
214 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
216 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
218 * Documentation/user/examples.itely (Transcription of mensural
219 music): Added more comments in .ly source. Suggest to remove
220 Forbid_line_break_engraver to allow line breaking at all bars.
222 * Documentation/user/instrument-notation.itely (Ancient
223 articulations): Updated @refbugs regarding episem.
225 * Documentation/user/instrument-notation.itely (Gregorian square
226 neumes ligatures): Added \augmentum dots. Updated @refbugs
227 regarding \augmentum.
229 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
231 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
234 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
237 * ly/gregorian-init.ly: Added \augmentum macro.
239 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
241 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
243 * lily/pango-font.cc (pango_item_string_stencil): use
244 FT_Get_X11_Font_Format()
246 2006-10-22 John Mandereau <john.mandereau@free.fr>
248 * po/fr.po: update translation.
250 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
252 * VERSION (PATCH_LEVEL): bump version
254 * input/regression/horizontal-bracket-break.ly: new file.
256 * scm/define-grobs.scm (all-grob-descriptions): calc
259 * lily/horizontal-bracket.cc (make_bracket): support
260 connect-to-neighbor. Fix #118
262 * VERSION: release 2.9.26-2
264 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
266 * VERSION (PACKAGE_NAME): release 2.9.26
268 * buildscripts/output-distance.py (test_basic_compare): add
270 (FileLink.multi_img_cell): new function, glob multi-page png
273 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
275 * po/lilypond.pot: update.
277 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
279 * Documentation/user/global.itely (File structure): remove
282 * lily/parser.yy (FIXME): remove ADDQUOTE
284 * Documentation/user/global.itely (Extracting fragments of
285 notation): new node, about clip systems.
287 * Documentation/user/lilypond-book.itely (Many quotes of a large
288 score): ref to clip systems.
290 * Documentation/user/instrument-notation.itely (Entering lyrics):
291 add note about lyric ties and required font.
293 * lily/open-type-font.cc (glyph_list): format errors.
295 * Documentation/user/programming-interface.itely (Scheme
296 procedures as properties): more doco on simple-closure and scheme
298 (Input variables and Scheme): use lilypond[verbatim], document
301 * Documentation/user/page.itely (Displaying spacing): use \book
302 explicitly, so arrows show .
303 (Line breaking): add note about Forbid_line_break_engraver
305 * Documentation/user/tweaks.itely (Common tweaks): also set length
306 to prevent tie squeezing.
307 (Default files): use @var{}
309 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
310 (Generating LilyPond files): add FOMUS.
312 2006-10-20 Joe Neeman <joeneeman@gmail.com>
314 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
315 Y-offset for TextScript and Script
317 * lily/text-engraver.cc (make_item):
318 * lily/script-engraver.cc (make_script_from_event):
319 remove call to Side_position_interface::set_axis since all scripts
320 now have this set by default
323 * lily/prob.cc: use variables
325 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
327 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
328 at typography, rather analyse stream event duration.
330 * Documentation/user/page.itely (Page formatting): set a6 paper
331 for system separator example.
333 * lily/arpeggio.cc (Module): idem.
335 * lily/accidental-placement.cc: add script-priority property.
337 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
339 * lily/ttf.cc (print_trailer): if all else fails: use
340 glyphIndexXXXX as glyph name. Fixes #117.
342 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
343 entry if cmap contains glyph.
344 (get_index_to_charcode_map): remove from Pango_font class, use
345 global filename -> font mapping.
346 (get_glyph_index_name): new function.
347 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
350 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
352 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
355 * scm/define-grob-properties.scm (all-user-grob-properties):
356 remove outdated doc. Fixes #116
358 * lily/completion-note-heads-engraver.cc (process_music): always
359 clone input events; otherwise we may overwrite input 'duration
360 property. Fixes #115.
362 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
365 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
368 * VERSION (PATCH_LEVEL): bump version.
370 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
372 * lily/engraver.cc (internal_make_grob): use variables.
374 * flower/string-convert.cc (dec2double): clean-up warnings.
376 * configure.in (CXXFLAGS): add -Werror.
378 * VERSION (PACKAGE_NAME): release 2.9.25
380 2006-10-18 Joe Neeman <joeneeman@gmail.com>
382 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
383 line even if we precede a forced break.
385 * lily/optimal-page-breaking.cc (try_page_spacing): square line
386 forces too. Make page-spacing weight default to 10 because the
387 changes to vertical springs decreased the page force/line force
388 proportions. Also, take the average of line force and page force
389 instead of just the sum.
391 * lily/constrained-breaking.cc (initialize): make the stiffness
392 of the vertical springs depend on the height of the system. This
393 prevents pages with only a few large systems from getting huge
396 * Documentation/user/page.itely (Page formatting): document the
397 change in default page-spacing-weight
399 * lily/include/constrained-breaking.hh: initialise bottom_padding_
401 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
403 * input/typography-demo.ly (melody): remove superfluous slur.
405 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
406 add piano-pedal-script-interface
408 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
410 * scripts/lilypond-book.py: DocBook support.
412 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
414 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
416 (stop_translation_timestep): set bound to currentMusicalColumn if
417 not set yet. Fixes #102
419 * lily/piano-pedal-bracket.cc: formatting.
421 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
423 * lily/piano-pedal-align-engraver.cc: new class
424 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
427 2006-10-18 Heikki Junes <hjunes@gmail.com>
429 * po/fi.po: Update Finnish translation (before the next release).
431 2006-10-17 Joe Neeman <joeneeman@gmail.com>
433 * lily/system.cc (get_paper_system): reinstate the backwards-
434 compatible page breaking for the old page breaker.
436 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
438 * lily/recording-group-engraver.cc: removed
440 * lily/context.cc, lily/translator-group.cc: Don't touch
441 Context::implementation_ if it's null
443 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
445 * scm/paper.scm: only use left-margin if defined.
447 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
449 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
451 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
452 strokeFingerOrientations
454 * lily/script-column.cc (row_before_line_breaking): also handle
455 accidentals and arpeggios in horizontal script stacking.
457 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
460 * input/regression/script-stack-horizontal.ly: trim.
462 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
464 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
467 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
468 'text if string argument.
470 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
472 * scm/define-context-properties.scm
473 (all-user-translation-properties): change to strokeFingerOrientations
475 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
477 * lily/parser.yy: remove debug output
479 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
481 * ly/paper-defaults.ly: set left/right margin.
483 * scm/paper.scm (set-paper-dimensions): use left-margin and
484 right-margin for computing linewidth.
486 * Documentation/topdocs/NEWS.tely (Top): idem.
488 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
491 * scm/define-markup-commands.scm (tied-lyric): increase negative
492 space: space syllables tighter.
494 * VERSION (PATCH_LEVEL): bump version.
496 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
499 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
501 * COPYING: further clarification
503 * VERSION: release 2.9.24
505 * input/regression/script-stack-horizontal.ly: add version.
507 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
509 * input/regression/lyric-tie.ly (texidoc): use different words.
511 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
513 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
515 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
516 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
518 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
520 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
522 * Doxyfile: remove file.
524 * scm/define-grob-interfaces.scm (string-finger-interface): add
525 string-finger-interface
527 * lily/general-scheme.cc (LY_DEFINE): move
528 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
530 * Documentation/topdocs/NEWS.tely (Top): add note for
531 string-finger feature.
533 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
536 * scm/output-lib.scm (string-finger::calc-text): read 'digit
539 * input/regression/script-stack-horizontal.ly: new file.
541 * ly/engraver-init.ly: add Script_row_engraver.
543 * lily/script-column.cc (order_grobs): refactor: separate axis
545 (row_before_line_breaking): new function.
547 * lily/script-row-engraver.cc (Script_row_engraver): new file.
549 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
551 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
553 * Documentation/user/instrument-notation.itely: Cleanup: Remove
554 annoying skip notes from mensural ligature example. Update
555 @refbugs for ligatures and mensural ligatures.
557 * lily/coherent-ligature-engraver.cc,
558 lily/include/coherent-ligature-engraver.hh,
559 lily/mensural-ligature-engraver.cc,
560 lily/vaticana-ligature-engraver.cc: Revise code for item
561 reparentizing. There should now be less programming_error
564 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
566 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
567 Maintenance bugfix: Don't create empty Stencil (), but empty box
568 instead. This fix should eliminate some programming_error
571 * ly/engraver-init.ly (MensuralStaff): Set default accidental
574 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
575 \layout block _before_ score.
577 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
579 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
581 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
583 2006-10-13 Erlend Aasland <erlenda@gmail.com>
585 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
587 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
589 * VERSION (PATCH_LEVEL): bump version.
591 * COPYING: clarify exception note.
593 * lily/main.cc: remove remark about "COPYING".
595 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
596 system-count starts at 0 for each clip-region. Change name to
597 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
598 layout block, per score.
600 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
602 * lily/input-smob.cc: add equal_p for Input
604 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
607 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
609 * lily/prob.cc: Add equal_p predicate for Prob
611 * lily/translator.cc: small cleanup
613 * scm/document-music.cc: use data from translator listener
614 registration to generate documentation for event classes
616 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
618 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
620 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
622 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
624 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
626 * Documentation/topdocs/INSTALL.texi: Thinko.
628 * .cvsignore: Update.
630 * lexer-gcc-3.1.sh: Remove.
632 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
633 Update anonymous cvs access. Remove comment about gcc 3.0.4.
635 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
637 * VERSION: release 2.9.23
639 * lily/paper-column-engraver.cc (stop_translation_timestep): also
642 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
644 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
646 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
648 * input/regression/clip-systems.ly (Notes): new file.
650 * scm/lily.scm (define-scheme-options): add clip-systems option.
652 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
654 (dump-stencil-as-EPS): move bbox calculation from previous
656 (output-framework): use -dclip-systems
658 * scm/lily-library.scm (filtered-map): new function
660 * scm/framework-ps.scm (clip-system-EPS): new function.
661 (clip-system-EPSes): new function.
663 * lily/paper-column.cc: add rhythmic-location to interface
665 * scm/define-grob-properties.scm (all-user-grob-properties): add
666 rhythmic-location property.
668 * scm/clip-region.scm: new file: rhythmic-location data type and
669 system-clipped-x-extent function.
671 * ly/init.ly: use (scm clip-region)
673 * lily/paper-column-engraver.cc (stop_translation_timestep): set
674 rhythmic-location for paper column grobs.
676 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
678 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
680 * ly/engraver-init.ly: Remove obsolete comment on
683 * Documentation/user/instrument-notation.itely: Tune Ancient
684 Articulations figure, such that the episem actually shows.
686 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
687 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
689 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
692 2006-10-12 Graham Percival <gpermus@gmail.com>
694 * Documentation/user/ {some}: minor edits that were lost somehow.
696 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
698 * VERSION (PACKAGE_NAME): bump version.
700 * input/regression/lyric-tie.ly (texidoc): new file.
702 * Documentation/topdocs/NEWS.tely (Top): add new feature.
704 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
706 * scm/define-markup-commands.scm (tied-lyric): new function: split
707 string along ~ and reattach with U+203F (tie character) and
710 * scm/output-lib.scm (lyric-text::calc-text): new function.
712 * lily/lyric-engraver.cc (process_music): don't set 'text.
714 * scm/output-lib.scm (string-finger::calc-text): new function
715 (lyric-text::print): new function.
717 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
718 generic for fingering & string number. Use for string-finger.
720 * scm/define-music-types.scm (music-descriptions): add
723 * lily/fingering-engraver.cc (listen_string_finger): new function
725 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
727 * scm/define-context-properties.scm
728 (all-user-translation-properties): add stringFingerOrientations
730 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
732 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
733 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
735 * lily/dots.cc: Added style property for dots.
737 * mf/parmesan-heads.mf: Fix typo in comment.
739 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
740 adding longa head to feta font and removing obsolete default
743 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
745 * scm/output-lib.scm (fingering::calc-text): use origin
746 event-property, not music-property.
748 * lily/lilypond.rc.in: spell my name correctly.
750 2006-10-10 Joe Neeman <joeneeman@gmail.com>
752 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
753 already have a non-empty extent. Fixes estimation for Hara-kiri
756 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
758 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
761 * lily/ligature-engraver.cc: Remove unused #include.
763 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
764 Bugfix: remove method check_for_prefix_loss(Item *) from global
765 namespace to avoid namespace pollution.
767 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
769 * VERSION: release 2.9.22
771 * ly/generate-documentation.ly: update option name.
773 * lily/dynamic-text-spanner.cc (print): revert fix.
775 * scm/define-grob-interfaces.scm
776 (trill-pitch-accidental-interface):
777 add trill-pitch-accidental-interface
779 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
780 dereference if it's really a duration.
782 * lily/figured-bass-engraver.cc (process_music): clear spanner if
783 useBassFigureExtenders is not set.
784 (listen_bass_figure): record as new event if
785 useBassFigureExtenders not set. Fixes #103.
787 * scm/stencil.scm (circle-stencil): don't center stencil argument,
788 instead: move circle. Fixes #107.
790 * scm/define-grobs.scm (all-grob-descriptions): set
791 allow-loose-spacing for PaperColumn and
792 NonMusicalPaperColumn. Kludge for #110.
794 * lily/spaceable-grob.cc: add allow-loose-spacing property.
796 * lily/spacing-determine-loose-columns.cc (is_loose_column):
797 allow-loose-spacing property.
799 * scm/define-markup-commands.scm (postscript): gsave & grestore
800 around embedded PS. Do setlinewidth too. Fixes #109.
802 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
804 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
805 code. This patch fixes ligature brackets that were not at all
808 2006-10-08 Graham Percival <gpermus@gmail.com>
810 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
812 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
814 * scm/define-context-properties.scm: clarified docs (bug 91).
816 * Documentation/user/basic-notation.itely: document volta brackets
817 not aligning (bug 63).
819 * Documentation/user/ global.itely invoking.itely: ignore or
820 add warnings about texstr.
822 2006-10-08 John Mandereau <john.mandereau@free.fr>
824 * po/fr.po: update translation.
826 * po/: update msgids.
828 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
830 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
832 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
834 * Documentation/user/page.itely (Two-pass vertical spacing): add
835 documentation for two-pass spacing technique.
837 2006-10-06 Graham Percival <gpermus@gmail.com>
839 * Documentation/user/convert-ly.txt: new file; new
840 storage place for this file (moved from bugs/ CVS).
842 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
844 * lily/note-head.cc: Fixed programming_error message.
846 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
848 * scm/define-grobs.scm (pure-conversion): move pure-callback
851 * scm/script.scm (default-script-alist): set avoid-slur for turn,
852 marcato, stopped, thumb.
854 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
856 * lily/completion-note-heads-engraver.cc (process_music): don't
857 skimp on memory usage.
859 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
862 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
863 parenthesis item. This fixes premature Y-extent triggering. Fixes
866 * VERSION (PATCH_LEVEL): bump version.
868 2006-10-04 Graham Percival <gpermus@gmail.com>
870 * Documentation/user/advanced-notation.itely: added
871 info about instrument names for piano or other contexts,
874 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
876 * mf/feta-bolletjes.mf (solfa_quarter_width): use
877 solfa_base_notewidth as unit for non-DO-notes too.
879 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
881 * VERSION: release 2.9.21
883 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
886 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
888 * python/lilylib.py (progress): Minor fix.
890 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
892 * lily/note-name-engraver.cc: doc engraver.
894 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
896 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
898 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
901 * lily/stem-engraver.cc (make_stem): don't set duration-log
903 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
904 write snippet-names binary.
906 * python/lilylib.py (system): use os.system for mingw32
908 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
911 * scm/backend-library.scm: update email address.
913 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
916 * scm/define-grobs.scm (all-grob-descriptions): use callback to
919 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
920 handle dot creation separately.
922 * lily/tab-note-heads-engraver.cc (process_music): idem.
924 * lily/drum-note-engraver.cc (process_music): idem.
926 * lily/note-heads-engraver.cc (process_music): idem.
928 * lily/rest-engraver.cc: don't set duration-log.
930 * scm/output-lib.scm (string-number::calc-text): new function.
931 (note-head::calc-duration-log): new function.
933 * lily/fingering-engraver.cc (make_script): remove 'text setting.
935 * scm/output-lib.scm (fingering::calc-text): new function.
937 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
939 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
940 and include-eps-font -> include-eps-fonts
942 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
944 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
946 * lily/timing-translator.cc: list properties.
947 (start_translation_timestep): update internalBarNumber too.
949 * scm/define-context-properties.scm
950 (all-user-translation-properties): add internalBarNumber.
952 * input/regression/spacing-no-note.ly: new file.
954 * buildscripts/output-distance.py (link_file): verbosity for OSError.
956 * lily/book.cc: #include cleanup.
958 * lily/include/lily-guile-macros.hh: add assert to
959 scm_or_str2symbol(SCM).
961 * VERSION (PATCH_LEVEL): bump version.
963 * lily/spacing-spanner.cc (musical_column_spacing): handle
964 musical->nonmusical spacing case, where there is no spacing
965 wish. Fixes issue #61.
967 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
968 (pango_item_string_stencil): use logical rect horizontally (to
969 preserve spaces), ink_rect vertically (for time signatures).
971 * lily/font-metric.cc (word_stencil): new interface function
973 * input/regression/utf-8-mixed-text.ly: new file.
975 * lily/percent-repeat-engraver.cc (listen_percent): remove
978 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
979 non-dynamic scripts. Fixes #30.
981 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
983 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
985 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
986 SCM_UNDEFINED for non-existent data.
988 * lily/side-position-interface.cc (general_side_position): allow
989 optional current_offset argument for chaining, so combinations of side-position
990 and outside slur callback don't add up. Fixes issue #92.
992 * lily/pango-font.cc (pango_item_string_stencil): use
993 logical_rect. This prevents spaces after words from disappearing,
996 * VERSION: release 2.9.20
998 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1000 * scm/define-grob-properties.scm (all-user-grob-properties):
1001 mention stencil as user settable.
1003 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1005 * Documentation/user/page.itely (Page formatting):
1006 document auto-first-page-number
1008 * lily/page-breaking.cc (find_chunks_and_breaks):
1009 * lily/paper-score.cc (calc_breaking): Follow changes to the
1010 Constrained_breaking interface
1012 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1013 here backwards, as an optimisation
1014 (initialize): new function; move most of the code in resize () here
1015 (combine_demerits): cache ragged_right_
1016 (Constrained_breaking): constructor now takes the Paper_score
1018 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1020 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1021 avoid parser lookahead for 0-ary functions.
1023 * lily/translator.cc: Extract event classes from
1024 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1026 2006-10-02 Heikki Junes <hjunes@gmail.com>
1028 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1031 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1033 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1034 function. Call the page breaking function selected in the
1035 `page-breaking' \paper variable, then the post processing function
1036 chosen using the `page-post-process' \paper variable.
1037 (line-height): new function. Return the height of a system.
1038 (line-minimum-position-on-page): new function. Return the position
1039 of a system on page (using the previous line position), only
1040 considering between system padding.
1041 (stretchable-line?): new function. Says whether a line can be
1042 stretched (ie. is not a title nor a single staff system).
1043 (page-maximum-space-left): new function. Computes space left on a
1044 page, when all systems are separated by their padding.
1046 * lily/page-breaking.cc (breaking::make_pages): Move page post
1047 processing function call to page breaking wrapper (common to all
1050 * lily/paper-book.cc (book::pages): call the page breaking
1051 wrapper, instead of the page breaker directly
1053 * ly/paper-defaults.ly: Add \paper variables for page breaking
1054 wrapper and page post processing function. Make
1055 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1056 `system-maximum-stretch-procedure' variable for holding a function
1057 computing the maximum stretch a system allows.
1059 * scm/layout-page-dump.scm (write-page-breaks): computes the
1060 stretch to apply to systems on a page to minimize left
1061 space. Dump this stretch length.
1063 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1064 the system-stretch property of the tweak data to stretch the
1066 (includePageLayoutFile): Void function which includes the
1067 generated page-layout file if it exists and if the page layout
1068 dumping is not asked.
1069 (scoreTweak): if the score tweak named by the argument exists,
1072 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1074 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1075 handle correctly the case where there are multiple \noPageBreaks
1078 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1080 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1082 * abc2ly.py fix so that entering " -- " will translate to a -- in
1083 the lilypond instead of a " - - "
1085 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1087 * lily/align-interface.cc: fix typo
1089 * lily/dynamic-text-spanner.cc (print): Add a special case for
1090 trill spanner right sides.
1092 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1094 * lily/align-interface.cc (get_extents_aligned_translates): add
1095 support for padding variable.
1097 * lily/break-align-interface.cc (self_align_callback): oops: use
1098 loop variable in guard.
1100 * input/regression/repeat-percent-grace.ly: new file.
1102 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1103 remember first currentCommandColumn of a grace run. Fixes issue 70.
1105 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1106 move class definition to CC file.
1108 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1110 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1111 measure-long repeats.
1113 * flower/include/international.hh: include stdarg.h
1115 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1117 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1118 put_systems_on_pages to return an empty result, we need to assign
1119 demerits properly in that case.
1120 (put_systems_on_pages): Make the number of pages depend on the
1121 evenness of page_number. Add auto-first-page-number.
1122 (calc_subproblem): ensure that the page-number is even for the
1123 left-hand page. Warn if the first page-turn doesn't fit onto the
1124 first (right-hand) page.
1126 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1127 (min_page_count): make this publicly accessible
1128 (min_page_count): fix a bug when there are forced page breaks that
1129 was introduced when I made this loop run backwards
1130 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1131 replace space_systems_on_min_pages with these two. The logic in
1132 space_systems_on_min_pages was getting too convoluted and is better
1133 contained in page-turn-page-breaking.
1135 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1137 (breakable_column): typo
1139 * lily/source-file.cc (get_line): fix off-by-one error
1140 and clean up some of the logic
1142 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1144 * lily/page-breaking.cc (make_pages): honour the first-page-number
1147 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1149 * VERSION (PACKAGE_NAME): bump version.
1151 2006-09-26 Pal Benko <benko.pal@gmail.com>
1153 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1154 (the latter is the same as petrucci-f which is kept for compatibility)
1156 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1158 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1160 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1162 * lily/global-context.cc (run_iterator_on_me): break out of loop
1163 if moment doesn't increase.
1165 * scm/define-grob-properties.scm (all-user-grob-properties): add
1168 * lily/accidental.cc (after_line_breaking): read forced property.
1170 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1173 * input/regression/accidental-forced-tie.ly: new file.
1175 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1177 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1179 * lily/figured-bass-engraver.cc: only listen to rest events if
1180 ignoreFiguredBassRest is not set.
1182 * scm/define-context-properties.scm
1183 (all-user-translation-properties): add ignoreFiguredBassRest property
1185 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1187 * lily/paper-book.cc (get_system_specs):
1188 (set_system_penalty): fix breakbefore.
1189 We used to set a penalty on the system after the break, now we
1190 set a permission on the system before the break
1192 * lily/grob-property.cc: add scm debugging hooks into
1193 property modification
1195 * lily/context-property.cc:
1197 rename make_foo_from_properties to internal_make_foo and
1198 move it from context-property.cc to a member function of
1201 * lily/include/lily-guile-macros.hh:
1202 overload ly_symbol2scm macro so that there is no more need
1205 * lily/volta-repeat-iterator.cc:
1206 * lily/tweak-engraver.cc:
1207 * lily/tuplet-bracket.cc:
1208 * lily/span-bar-engraver.cc:
1209 * lily/script-engraver.cc:
1210 * lily/prob-scheme.cc:
1211 * lily/pointer-group-interface.cc:
1213 * lily/grob-scheme.cc:
1214 * lily/grob-property.cc:
1216 * lily/context-property.cc:
1217 * lily/break-substitution.cc:
1218 * lily/break-align-engraver.cc:
1219 * lily/axis-group-interface.cc:
1220 * lily/align-interface.cc:
1221 remove calls to internal_FOO
1223 * lily/system-start-delimiter-engraver.cc:
1224 * lily/parenthesis-engraver.cc:
1225 * lily/accidental-engraver.cc:
1226 remove calls to make_foo_from_properties
1228 2006-09-23 Graham Percival <gpermus@gmail.com>
1230 * Documentation/user/programming-iterfaces.itely: fix
1231 def-music-function -> define-music... leftover.
1233 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1235 * lily/page-spacing.cc (min_page_count): by running the loop
1236 backwards, we can calculate ragged_last properly.
1238 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1240 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1241 printfirst-page-number -> print-first-page-number
1243 * python/convertrules.py: corresponding rule.
1245 * Documentation/user/page.itely (Page formatting): Document the
1246 default values of all page layout parameters.
1248 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1250 * lily/lexer.ll: remove limitation on music function arity. New
1251 mode extratoken, which inserts extra EXPECT_* tokens after
1252 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1254 * lily/parser.yy: Change grammar for music function accordingly.
1256 * lily/include/lily-parser.hh: New method get_state, new member
1257 hidden_state. Works around a problem when parser fetches
1258 MUSIC_FUNCTION token but not the following EXPECT_* token.
1260 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1263 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1264 references to Music; use ASSIGN_EVENT_ONCE everywhere
1266 * lily/grob-info.cc: junk *music_cause
1268 * lily/music.cc: copy eventified articulations to stream event
1270 * lily/part-combine-iterator.cc: Cleanup using enums
1272 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1275 * lily/include/engraver.hh: Junk music.hh include
1277 * lily/stream-event.cc: Changed constructors
1279 2006-09-21 Graham Percival <gpermus@gmail.com>
1281 * Documentation/user/tweaks.itely (Fitting music onto fewer
1282 pages): change settings to avoid warning messages.
1284 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1286 * Documentation/user/tweaks.itely (Fitting music onto fewer
1287 pages): Add between-system-space setting.
1289 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1291 * lily/accidental-placement.cc (calc_positioning_done): don't
1292 trigger Y-extent calculation too early. Use pure_height instead.
1294 * lily/scale.cc (LY_DEFINE): new file.
1296 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1298 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1299 that happen at the start of a score: having a zero-length
1300 chunk was messing up min_system_count calculations.
1302 * lily/source-file.cc (get_line): lower_bound, not
1303 binary_search. Fixes problem where point-and-click would
1304 always point to the first line.
1306 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1308 * lily/accidental-placement.cc (calc_positioning_done): also put
1309 stems into accidental support.
1311 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1314 * scm/script.scm (default-script-alist): avoid-slur and
1315 slur-padding for portato script.
1317 * lily/stem-tremolo.cc (translated_stencil): new function.
1318 (height): use new function. Fixes tremolos on whole notes.
1320 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1323 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1325 * scripts/abc2ly.py (try_parse_comment): idem.
1327 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1328 bar_string iso. string.find()
1332 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1335 2006-09-18 Graham Percival <gpermus@gmail.com>
1337 * Documentation/user/basic-notation.itely: add bug
1338 warning about ties and octavation/clef.
1340 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1342 * VERSION (PACKAGE_NAME): release 2.9.18
1344 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1346 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1347 figure out midi file names right here.
1349 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1351 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1353 * scm/backend-library.scm: option naming: gs-font-load*s*
1355 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1358 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1360 * scm/define-music-types.scm (music-descriptions): remove
1361 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1362 Music::to_event doesn't complain.
1364 * lily/accidental-placement.cc (ape_compare):
1365 * lily/semi-tie.cc (compare):
1366 * lily/note-column.cc (shift_compare): replace by XXX_less
1368 * lily/tie-formatting-problem.cc (set_chord_outline):
1369 * lily/tie-column.cc (calc_positioning_done):
1370 * lily/system.cc (post_processing)
1372 * lily/stem.cc (note_head_positions)
1373 (calc_positioning_done):
1374 * lily/spanner.cc (do_break_processing)
1375 (find_broken_piece):
1376 * lily/span-bar.cc (print):
1377 * lily/semi-tie-column.cc (calc_positioning_done):
1378 * lily/rest-collision.cc (calc_positioning_done):
1379 * lily/program-option.cc (get_help_string):
1380 * lily/note-collision.cc (get_clash_groups):
1381 * lily/new-fingering-engraver.cc (position_scripts):
1382 * lily/keyword.cc (Keyword_table):
1383 * lily/hara-kiri-group-spanner.cc (request_suicide):
1384 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1385 * lily/accidental-placement.cc (calc_positioning_done):
1387 * lily/beam.cc (get_beam_segments):
1388 * lily/grob-array.cc (remove_duplicates):
1391 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1392 ragged-last-bottom = ##f (test the new page breaker)
1394 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1396 * scm/define-context-properties.scm
1397 (all-internal-translation-properties): remove properties that
1398 were used to communicate page-turn stuff to the paper-column
1401 * lily/lily-guile.cc (robust_scm2string): new function
1403 * lily/paper-column-engraver.cc: Clean up page turn stuff
1405 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1406 instead of cluttering up paper-column-engraver.cc
1408 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1410 * scm/layout-page-dump.scm (scm): export utility function names,
1411 to allow user writing cutsom dumping functions.
1413 * scm/layout-page-layout.scm: export utility function names to
1414 enable custom page breaking function writing. Tabify.
1415 (line-next-space): use ?-suffix only for predicates
1416 (page-maximum-space-to-fill): new function. Return the space
1417 between first and bottom system of a page, to give to
1419 (space-systems): use a space-to-fill argument (for instance as
1420 computed by page-maximum-space-to-fill) instead of computing
1421 internaly this space with the page height. That way, the caller
1422 can adjust the space to use.
1423 (make-page-from-systems, walk-paths): compute space to fill before
1424 calling space-systems.
1426 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1428 * scm/script.scm (default-script-alist): set paddings for every
1429 type here, increase for portato mark.
1431 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1434 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1436 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1437 use spanner::set-spacing-rods
1439 * lily/note-column.cc: reformat.
1441 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1442 step positioning for note/rest combinations.
1444 * input/regression/rest-note-collision.ly: new file.
1446 * scm/define-grobs.scm (all-grob-descriptions): add
1449 * flower/include/std-vector.hh: switch off again.
1451 * VERSION (PATCH_LEVEL): bump to 2.9.18
1453 * flower/include/std-string.hh: idem.
1455 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1457 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1459 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1462 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1464 * Documentation/user/page.itely: update page breaking documentation
1466 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1468 * lily/note-collision.cc (calc_positioning_done): only access
1469 first head if available.
1471 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1473 * scm/framework-ps.scm (output-preview-framework): use new name.
1475 * lily/program-option.cc (internal_set_option): use new names.
1477 * Documentation/user/SConscript (lilypond_book_flags): update -d
1480 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1481 output into other programs): new variable names.
1483 * scm/lily.scm (define-scheme-options): uniformize var names.
1485 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1486 tuplets_ is non-empty before popping.
1488 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1490 * lily/spanner.cc (find_broken_piece):
1491 * lily/spacing-spanner.cc (get_columns):
1492 * lily/source-file.cc (get_line):
1493 * lily/simple-spacer.cc (get_column_description):
1494 * lily/keyword.cc (lookup):
1495 use the new binary search.
1497 * flower/include/std-vector.hh: replace binary_search with
1498 a more STL-like version
1500 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1502 * lily/tie-performer.cc: remove unused last_event_ property.
1503 (class Tie_performer): add now_tied_heads_ property for
1504 partially-tied heads.
1505 (acknowledge_audio_element): when adding an Audio_note, put the
1506 note in now_tied_heads_ if the audio note is partially tied.
1507 (stop_translation_timestep): always include entries in
1508 now_tied_heads_ in heads_to_tie_.
1510 * lily/drum-note-performer.cc (process_music): look for tie-events
1511 in the articulations; pass to Audio_note constructor.
1513 * lily/note-performer.cc (process_music): look for tie-events in
1514 the articulations; pass to Audio_note constructor.
1516 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1519 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1520 include initializer in constructor.
1522 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1524 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1525 unless they are breakable. This fixes discrepancies between the forces
1526 calculated here and the forces calculated in get_line_configuration.
1528 * lily/grob.cc (pure_relative_y_coordinate): fix some
1529 mis-estimation that was happening with piano staves.
1531 * lily/constrained-breaking.cc (resize): don't choke if we get a
1532 measure that won't fit on a line.
1533 (combine_demerits): don't consider uniformity when ragged
1535 * lily/page-spacing.cc (solve): why the f* were there two of these?
1536 (calc_subproblem): properly handle the case where a system is taller
1539 * lily/system.cc (get_paper_system): ensure that all the permissions
1540 and penalties are passed to the paper systems.
1542 * lily/page-breaking.cc (create_system_list): support system-count.
1544 * scm/define-grobs.scm (pure-print-callbacks): add
1545 ly:script-interface::print
1547 * lily/page-spacing.cc (min_page_count): fix calculation of min
1548 pages if we are ragged and there are non-zero springs.
1550 * scm/layout-page-layout.scm: if the pure-height estimates are under
1551 the real height, allow space-systems to ignore padding if it is
1552 needed in order to fit the systems on one page
1554 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1556 (solve): fix performance problem. Make sure we always get at least
1559 * lily/page-breaking.cc (make_pages): include write-page-breaks
1562 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1564 * scm/define-grobs.scm: add the new slur-callback
1565 fix pure-relevant to not exclude grobs whose extent is already
1568 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1571 * lily/slur.cc (pure_height): new callback to estimate the height
1574 2006-09-02 Graham Percival <gpermus@gmail.com>
1576 * Documentation/user/invoking.itely: small update on
1577 MacOS X notes; thanks Trevor!
1579 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1581 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1583 * lily/lexer.ll: accept EOF in all states.
1585 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1587 * lily/source-file.cc (Source_file): always 0-terminate character
1588 array, to prevent Flex from barfing.
1590 * lily/global-context.cc (get_output): robustness: don't crash if
1591 no Score context found.
1593 * lily/include/book.hh (class Book): idem.
1595 * lily/include/context-def.hh (struct Context_def): idem.
1597 * lily/include/score.hh (class Score): don't derive from Input.
1599 * lily/book.cc (Book): add a copy ctor.
1601 * buildscripts/output-distance.py (FileLink.calc_distance): count
1602 orphans in distance too.
1604 * python/midi.c (midi_parse_track): robustness: don't read past
1607 * ly/performer-init.ly: add Control_track_performer, move
1608 Tempo_performer and Time_signature_performer to Score.
1610 * lily/score-performer.cc (acknowledge_audio_elements): override
1611 from base class: add to audio-columns
1613 * lily/control-track-performer.cc (add_text): new file: generate
1616 * lily/performance.cc: move output_header_track to
1617 Control_track_performer ()
1619 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1621 * lily/include/midi-item.hh (class Midi_channel_item): insert
1622 class into hierarchy, for items that can have a channel setting. Dehungarify.
1624 * lily/include/performer.hh (class Performer): remove
1625 play_element(); move functionality into announce/acknowledge.
1627 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1629 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1630 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1632 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1634 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1637 * lily/all-font-metrics.cc: remove TFM support.
1639 * lily/include/tfm.hh: remove TFM support, TFM reader.
1641 * lily/include/binary-source-file.hh: remove Binary_source_file.
1643 2006-08-27 Graham Percival <gpermus@gmail.com>
1645 * Documentation/topdocs/NEWS.itely: add @c marker for
1646 stuff I've processed.
1648 * Documentation/user/ various: info from NEWS.
1650 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1652 * lily/paper-column-engraver.cc (finalize): Oops, this change
1653 should have gone in on 2006-08-23
1655 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1657 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1658 quotes to quote arguments. Fixes Windows problem.
1660 * python/lilylib.py (progress): idem
1662 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1664 * scripts/musicxml2ly.py: fix for importing
1665 minor key signatures from MusicXML. (Phillip Kirlin)
1667 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1669 * python/musicxml.py:
1670 (Attributes.get_key_signature): now correctly retrieves mode from
1673 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1675 * lily/parser.yy (output_def_body): take ownership of identifier
1678 * Documentation/user/advanced-notation.itely (Metronome marks):
1679 update use of \tempo in \midi.
1681 * VERSION: release 2.9.16
1683 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1685 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1688 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1690 * input/regression/tie-chord-partial.ly: clarify example.
1692 * scm/define-music-properties.scm (all-music-properties): remove
1695 * ly/music-functions-init.ly: remove \untied.
1697 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1698 stream events and music events.
1699 (stop_translation_timestep): search acknowledged heads for
1702 * input/regression/tie-chord-partial.ly: new file.
1704 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1705 for \char markup command.
1707 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1709 * scm/define-music-types.scm (music-descriptions): consistency:
1710 Use solo-{one,two}-event iso. solo-[12]-event.
1712 * lily/part-combine-engraver.cc (process_music):
1713 Use solo-{one,two}-event iso. solo-[12]-event.
1715 * ly/declarations-init.ly (partCombineListener): add Timing as
1718 * flower/std-string.cc (string_copy): use copy ()
1720 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1722 2006-08-24 Graham Percival <gpermus@gmail.com>
1724 * Documentation/user/changing-defaults.itely, global.itely,
1725 lilypond-book.itely, page.itely: minor changes from mailist.
1727 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1729 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1732 * scm/define-context-properties.scm
1733 (translator-property-description): robustness: detect type errors
1734 in property definitions.
1736 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1737 after getting it from SCM.
1739 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1742 * lily/include/performer.hh (class Performer): strip get_tempo()
1745 * lily/midi-def.cc: strip file.
1747 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1749 * lily/include/context-def.hh (struct Context_def): use
1750 VIRTUAL_COPY_CONSTRUCTOR().
1752 * lily/source-file.cc: smobification.
1754 * lily/include/source-file.hh (class Source_file): smobify
1755 Source_file. Trim redundant members.
1757 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1758 clones after creation. This plugs a huge memory leak.
1760 * python/convertrules.py (FatalConversionError.sub_tempo):
1761 complete rule for \midi{ \tempo }
1763 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1765 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1767 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1769 * input/regression/optimal-page-breaking-hstretch.ly: test for
1770 ragged-last-bottom also
1772 * lily/paper-column-engraver.cc (finalize): make the end of a score
1773 breakable by default. This is to balance out a change in behaviour
1774 of the page-turn-breaker which no longer makes the end of a score
1777 * lily/paper-book.cc (pages): set the systems_ once the pages are
1780 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1781 Page_breaking interface.
1783 * lily/page-breaking.cc (class Page_breaking): make the interface
1784 more consistent and provide abstractions for dealing with
1787 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1788 algorithm. Use the new interface to Page_breaking.
1790 * lily/page-spacing.cc: better support for ragged-bottom and
1793 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1795 * python/convertrules.py (conv): warning on \tempo{}
1797 * ly/performer-init.ly: set tempoWholesPerMinute.
1799 * ly/midi-init.ly: remove \midi
1801 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1804 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1805 tempoUnitDuration for determining what to print.
1807 * lily/lyric-extender.cc: typo.
1809 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1811 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1814 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1816 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1817 eps-pad-boxes is set.
1819 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1821 * THANKS: update sponsors.
1823 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1825 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1827 * input/regression/tie-chord-untied.ly: new file.
1829 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1831 * scm/define-music-properties.scm (all-music-properties): add
1834 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1836 (headertext_nopics): sanitize no-examples text.
1838 * scm/page.scm (make-page-stencil): don't rely on extents of
1839 page-stencil. This fixes spurious space around .EPS files produced
1840 with the EPS backend.
1842 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1844 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1846 * lily/hara-kiri-engraver.cc (process_music): remember
1847 keepAliveInterfaces after processing \set
1849 * lily/lyric-extender.cc (print): support left/right-padding for
1852 * scm/documentation-generate.scm (string-append): revert lilypond/
1855 2006-08-20 Graham Percival <gpermus@gmail.com>
1857 * Documentation/user/lilypond.tely: clarification to
1858 license presentation (not to actual license).
1860 * Documentation/user/basic-notation.itely,
1861 instrument-notation.itely: minor changes.
1863 * input/ {regression, test}/+.ly: clarification to
1864 text (you can click on examples). Thanks, Mats!
1866 * input/manual/bar-lines.ly: adds ||: repeats.
1868 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1870 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1872 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1874 * Documentation/user/lilypond.tely: strip lilypond/ from info
1875 links, rename to category LilyPond
1877 * lily/pango-font.cc (description_string): new function.
1879 * VERSION: release 2.9.15
1881 * lily/spacing-engraver.cc (stop_translation_timestep): use
1882 Dscho's fix for spacing spanner.
1884 * scm/define-music-types.scm (music-descriptions): use
1885 apply-output-event for ApplyOutputEvent
1887 * lily/output-property-engraver.cc (listen_apply_output): rename
1888 from listen_layout_instruction.
1890 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1893 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1895 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1896 commandline args with contains, split by \n.
1898 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1899 write snippet-names file, call with -dread-file-list. Fixes
1900 command limitations on 64-bit systems.
1902 * input/regression/stencil-color-rotation.ly: new file.
1904 * lily/include/translator.hh (struct Acknowledge_information):
1905 revert: don't use Protected_scm in global objects, as GUILE can't
1906 handle gc_unprotect from automated destructors on MacOS X.
1908 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1909 color, not the original stencil. Fixes combinations of
1910 color/transparency/rotation.
1912 * scripts/lilypond-book.py (main): add --formats=eps for
1915 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1916 crash if spacing_ is nonexistent.
1918 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1920 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1921 \catcode`\@=12 in the LaTeX output.
1923 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1925 * scm/define-music-types.scm (music-descriptions):
1926 use sustain-event iso. sustain-pedal-event.
1928 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1930 * scripts/convert-ly.py: honour the -n command-line switch
1932 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1934 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1935 break specification.
1937 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1939 * Documentation/user: convert-ly the user manual
1941 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1943 * stepmake/aclocal.m4: version check patch (thanks MWD)
1945 * ly/music-functions-init.ly: robustness. Don't crash if
1946 currentBarNumber is not a number.
1948 * VERSION (PATCH_LEVEL): bump.
1950 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1952 * stepmake/aclocal.m4: better version check; handle fooX.Y
1955 * ly/performer-init.ly: instrument name fixup.
1957 * input/manual/chord-names-jazz.ly (banterProperties):
1958 instrumentName update
1960 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1962 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1964 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1965 function. Use hash tables to check membership.
1967 * lily/general-scheme.cc (LY_DEFINE): new function.
1969 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1971 * lily/include/translator.hh (struct Acknowledge_information): add
1974 * ly/music-functions-init.ly: change name to BreathingEvent
1976 * input/regression/*.ly: apply it.
1978 * python/convertrules.py (conv): better instrumentName conversion
1981 * scm/define-music-types.scm (music-descriptions): add
1982 line-break-event to LineBreakEvent music
1984 * lily/music.cc (to_event): don't crash if music type not set.
1986 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1989 * lily/spacing-engraver.cc (stop_translation_timestep): set
1990 spacing for proportional notation too.
1992 * scm/translation-functions.scm (format-bass-figure): inspect
1995 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1997 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1999 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2001 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2003 * scm/layout-page-layout.scm (make-page-from-systems): new function
2004 (optimal-page-breaks): use the new page-breaking calling convention
2006 * scm/define-context-properties.scm (all-user-translation-properties):
2009 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2010 revokePageTurns functionality. If there is a special barline within
2011 the breakable region, break there instead of at the end of the region.
2013 * lily/paper-book.cc (pages): use the new page-breaking calling
2016 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2018 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2020 * scripts/lilypond-book.py: insert \sourcefileline command in
2021 output, so lilypond error messages refer to the spot in the
2022 original .lytex / .itely sourcefile.
2024 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2026 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2027 space to next column for distance to fixed col.
2029 * VERSION (PACKAGE_NAME): release 2.9.14
2031 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2034 * lily/accidental-engraver.cc (process_acknowledged): don't create
2035 accidental for trill span event. This fixes spurious accidentals
2038 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2040 * scm/define-grob-properties.scm (all-user-grob-properties):
2041 Clarify documentation of side-axis and direction. Thanks to Paul
2042 for the inspiration.
2044 * lily/bar-line.cc: Add documentation for "||:" also in the
2045 interface documentation.
2047 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2049 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2051 * lily/paper-column.cc (set_system): new function.
2053 * lily/spacing-engraver.cc (stop_translation_timestep): store
2054 SpacingSpanner refs in Paper_column.
2056 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2057 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2059 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2061 * lily/beam-engraver.cc (listen_beam): add method for
2062 Grace_beam_engraver too.
2064 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2066 * python/convertrules.py: Fix indentation bug that broke
2067 conversion of files older than 1.3.117.
2068 Fix escape error in the description for 2.9.6.
2070 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2072 * lily/*-engraver.cc: convert all try_music functions to listen_*
2075 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2076 enums to represent pedal types, and calculate more data statically.
2078 * scm/part-combiner.scm (recording-group-emulate): create a
2079 softcoded substitute for recording-group-engraver.cc.
2081 * lily/music.cc: make a common transpose function for events and
2084 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2085 ManualMelismaEvent, and obsoletes Melisma_translator.
2087 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2089 * input/test/instrument-name-align.ly: update version.
2091 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2093 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2094 Doc the --pdf flag to lilypond-book.
2096 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2098 * Documentation/topdocs/NEWS.tely (Top): add description.
2100 * input/regression/tuplet-full-length-note.ly: add file.
2102 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2103 always store axis group.
2105 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2107 * input/regression/instrument-switch.ly: new file.
2109 * lily/instrument-switch-engraver.cc (process_music): new file.
2111 * ly/engraver-init.ly: add Instrument_switch_engraver
2113 * ly/music-functions-init.ly: \instrumentSwitch
2115 * scm/define-context-properties.scm
2116 (all-user-translation-properties): add instrumentCueName
2118 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2120 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2122 * ly/music-functions-init.ly: music function \transposition.
2124 * lily/parser.yy (command_element): softcode \transposition.
2126 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2127 (process_music): oops.
2129 * lily/instrument-name-engraver.cc (start_spanner): new
2130 function. Create spanner when property changes.
2131 (stop_spanner): new function.
2133 * python/convertrules.py (conv): add rule.
2135 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2136 shortInstrumentName iso. instr.
2138 * scm/output-ps.scm (dashed-line): add phase argument to
2141 * lily/bar-line.cc (dashed_bar_line): new function.
2142 (compound_barline): support \bar "dashed".
2144 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2145 --output=DIR to DIR/BASE if it is a dir.
2147 * flower/file-name.cc (file_part): new function
2148 (dir_part): new function
2150 * lily/lily-parser-scheme.cc (LY_DEFINE):
2152 * DEDICATION: update
2154 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2156 * lily/instrument-name-engraver.cc: formatting.
2158 * python/convertrules.py (conv): bugfix for \epsfile.
2160 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2164 * lily/gourlay-breaking.cc: Oops, these should have been included
2167 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2169 * scripts/*.py (program_name): cleanup relocation snippets.
2171 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2173 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2175 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2176 page-breakable by default
2178 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2179 correctly calculated for a single-system page
2181 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2182 bigger than the second number
2184 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2185 acknowledge that we aren't satisfying constraints)
2187 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2190 * lily/grob.cc (pure_height): add minimum-Y-extent
2192 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2195 * lily/constrained-breaking.cc: convert code to use new Matrix class
2196 (get_best_solution): new function
2198 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2199 is a page with no systems
2201 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2203 * VERSION (PACKAGE_NAME): release 2.9.13
2205 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2208 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2210 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2212 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2215 * scm/define-grob-properties.scm (all-user-grob-properties):
2216 remove grace-space-factor.
2218 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2219 grace-spacing-interface
2220 (spacing-options-interface): add.
2222 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2224 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2226 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2227 GraceSpacing object.
2229 * lily/note-spacing.cc: fix prop list formatting
2231 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2232 beaming for grace notes too.
2234 * input/regression/spacing-grace.ly: update.
2236 * lily/grace-spacing-engraver.cc: new file.
2238 * lily/spacing-spanner.cc: add strict-grace-spacing.
2240 2006-07-20 Graham Percival <gpermus@gmail.com>
2242 * lily/parser.yy: compile fix.
2244 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2246 * scm/define-grobs.scm (all-grob-descriptions): typo.
2248 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2249 .eps extension from includegraphics.
2251 * scripts/lilypond-book.py (main): add support for --pdf.
2253 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2254 callback to compute common shortest duration.
2255 (set_springs): typo.
2257 * scm/define-grob-properties.scm (all-user-grob-properties): add
2258 strict-grace-spacing.
2260 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2261 support float_grace_columns_.
2263 * lily/spacing-options.cc (init_from_grob): new file.
2265 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2267 * input/regression/spacing-loose-grace.ly: new file.
2269 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2271 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2272 tupletFullLengthNote too. Choose right bound depending on value.
2274 * input/regression/tuplet-full-length-note.ly: new file.
2276 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2278 * lily/*-performer.cc: Converted try_music to listen_*
2280 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2281 as a stream-event internally. Introduce event_cause (), deprecate
2284 * scm/define-music-types.scm: Removed BusyPlayingEvent
2286 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2288 * Documentation/user/advanced-notation.itely (Font selection):
2289 Document how to get a list of available fonts using 'lilypond
2290 -dshow-available-fonts blabla'.
2292 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2294 * GNUmakefile.in: filter lily-XXX.pdf files.
2296 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2298 * scm/define-grob-properties.scm (all-internal-grob-properties):
2299 remove delta-pitch. Use delta-position everywhere.
2301 * scm/output-lib.scm (fall::print): use new order.
2303 * scm/output-ps.scm (path): reorder arguments.
2305 * scm/output-svg.scm (path): support for path primitive.
2307 * input/regression/bend-after.ly: new file.
2309 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2310 recipe for eps -> pdf conversion.
2312 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2314 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2317 2006-07-19 Graham Percival <gpermus@gmail.com>
2319 * input/manual/screech-boink.ly: moved to here.
2321 * input/screech-boink.ly: deleted.
2323 * scm/define-grob-properties.scm: clarify doc string.
2325 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2327 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2329 * scm/output-ps.scm (path): define path.
2331 * scm/define-stencil-commands.scm
2332 (ly:register-stencil-expression): add path.
2334 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2336 * ly/engraver-init.ly: add Fall_engraver
2338 * lily/parser.yy (music_function_event): allow musicfunction
2339 without music arg as music_function_event.
2341 * lily/grob-scheme.cc (LY_DEFINE):
2342 ly:grob-robust-relative-extent. New function.
2344 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2346 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2348 * scm/output-lib.scm (fall::print): new function
2350 * lily/fall-engraver.cc (stop_fall): new file.
2352 * ly/music-functions-init.ly: alphabetise.
2354 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2357 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2359 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2361 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2364 * lily/translator-group.cc (connect_to_context): non const error message.
2366 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2368 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2371 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2373 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2375 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2378 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2380 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2382 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2384 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2386 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2388 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2390 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2392 * scm/layout-page-layout.scm: Define module, tidy code, use more
2393 functions iso. a single big one.
2395 * scm/layout-page-dump.scm: move page dump functions used in two
2396 pass spacing to this file. Define module.
2398 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2401 * ly/paper-defaults.ly: use module layout-page-layout.
2403 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2405 * lily/music.cc: Revised MusicEvent event class. It now contains
2406 event data directly instead of encapsulating it in music. The
2407 previously used class is renamed to OldMusicEvent.
2409 * lily/stream-event.cc: Stream events are now probs.
2411 * lily/translator-group.cc, lily/translator.cc: Translators can
2412 now listen directly to stream events, by using macros
2413 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2415 * lily/arpeggio-engraver.cc: Converted to use new event system
2417 * THANKS: Corrected spelling mistake.
2419 2006-07-12 Graham Percival <gpermus@gmail.com>
2421 * Documentation/user/SConscript, make/lilypond-vars.make,
2422 input/GNUmakefile: doc build looks in input/manual instead
2425 * input/manual/ GNUmakefile, SConscript: build files for
2428 * input/test/ various: some files moved to input/manual/
2430 * Documentation/user/basic-notation.itely: small updates;
2431 thanks Kieren and Charles!
2433 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2435 * VERSION (PACKAGE_NAME): release 2.9.11
2437 * Documentation/topdocs/NEWS.tely (Top): update prop value
2439 * Documentation/user/basic-notation.itely (Tuplets): new property
2442 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2444 * python/convertrules.py (conv): tweaks.
2446 * VERSION (PATCH_LEVEL): bump version.
2448 * python/convertrules.py (conv): add rule for
2449 tupletNumberFormatFunction.
2451 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2452 tupletNumberFormatFunction.
2454 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2455 text through 'text callback.
2457 * lily/time-scaled-music-iterator.cc (construct_children): copy
2458 tweaks generated events.
2460 * scm/define-context-properties.scm
2461 (all-user-translation-properties): remove tupletNumberFormatFunction
2463 * lily/tuplet-engraver.cc (process_music): don't read
2464 tupletNumberFormatFunction
2466 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2469 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2471 * lily/global-context-scheme.cc: Separated ly:run-translator into
2474 * lily/score-engraver.cc, lily/score-performer.cc,
2475 scm/define-context-properties.scm: Make paper/midi output
2476 accessable as a context property.
2478 * lily/score-translator.cc, lily/score-context.cc: Removed.
2480 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2482 * scm/ps-to-png.scm (Module):
2483 * scm/framework-tex.scm (Module):
2484 * scm/framework-ps.scm (Module):
2485 * scm/backend-library.scm (Module):
2486 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2487 "dDEVICEHEIGHTPOINTS".
2489 2006-07-04 Graham Percival <gpermus@gmail.com>
2491 * Documentation/user/ various: general improvements to
2492 "working with lilypond files" section.
2494 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2496 * lily/sequential-iterator.cc: Change the default get_music_list
2497 to read elements-callback music property
2499 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2500 processing of multimeasure rests. Softcoded
2501 sequential-music-iterator.
2503 * lily/sequential-music-iterator.cc: Removed.
2505 2006-06-28 Graham Percival <gpermus@gmail.com>
2507 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2509 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2511 * lily/parser.yy: Wrap non-post-events in EventChords before
2512 assigning them to identifiers.
2514 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2516 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2517 gives correct vertical placement of \bar ":" in all staff
2518 sizes. Thanks Martial!
2520 2006-06-26 Graham Percival <gpermus@gmail.com>
2522 * Documentation/user/invoking.itely : minor update from mailist.
2524 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2526 * lily/ various: Introduce stream events of types Prepare,
2527 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2528 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2530 * lily/global-context*.cc: Time is now -inf before iteration
2533 * lily/include/context.hh: Removed unique_, init_
2535 * Documentation/topdocs/NEWS: Make the feathered beam example
2536 avoid triggering a bug.
2538 2006-06-24 Graham Percival <gpermus@gmail.com>
2540 * Documentation/user/ various: small additions from mailist.
2542 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2544 * ly/performer-init.ly: Add some missing links in the context
2545 hierarchy for MIDI output. There are probably some more missing!
2547 2006-06-21 Graham Percival <gpermus@gmail.com>
2549 * Documentation/user/ various: minor spelling fixes;
2550 thanks Dave Luttinen!
2552 * Documentation/user/ various: small clarifications;
2553 thanks Anthony Youngman!
2555 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2557 * po/fr.po: add \n appropriately.
2559 * lily/lexer.ll: remove ? from version-seen?
2561 2006-06-19 John Mandereau <john.mandereau@free.fr>
2563 * po/fr.po; update translation, by Jean-Charles Malahieude and
2566 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2568 * THANKS: add Markus Schneider.
2570 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2571 Staff_symbol_engraver
2573 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2574 replace staff_engraver
2576 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2579 * lily/staff-collecting-engraver.cc
2580 (acknowledge_end_staff_symbol): new function
2582 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2584 * lily/staff-collecting-engraver.cc
2585 (acknowledge_end_staff_symbol): new function.
2587 * lily/main.cc: switch on relocation by default.
2589 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2591 * lily/spacing-spanner.cc (musical_column_spacing): set
2592 compound_fixed_note_space to 0.0. Document why.
2594 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2595 range of inverse_hooke_
2596 (Simple_spacer): init completely.
2598 (get_line_configuration): don't use cols.resize(); it introduces
2601 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2603 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2605 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2606 try. Divide by beatlength.
2608 * input/regression/beaming-ternary-metrum.ly: update doc.
2609 add beatLength hack.
2611 * scm/music-functions.scm (make-time-signature-set): add
2612 standard-beat-grouping.
2614 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2616 * input/regression/tie-whole.ly: new file.
2618 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2619 cross center of note head in case of invisible stem.
2621 2006-06-16 Graham Percival <gpermus@gmail.com>
2623 * Documentation/user/ various: small fixes from mailist.
2625 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2627 * lily/breathing-sign.cc (offset_callback): idem.
2629 * lily/align-interface.cc (align_to_fixed_distance): remove
2632 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2635 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2637 * VERSION (PACKAGE_NAME): release 2.9.9
2639 * ly/lilypond-book-preamble.ly: add \version
2641 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2643 * scripts/lilypond-book.py (PREAMBLE_LY): include
2644 lilypond-book-preamble.ly
2646 * lily/stem.cc (get_beaming): return max of 0 and
2647 scm_ilength. Fixes slurring from/to beams.
2649 * ly/lilypond-book-preamble.ly: new file.
2651 * lily/slur.cc: add inspect-index feature.
2653 2006-06-13 Graham Percival <gpermus@gmail.com>
2655 * Documentation/user/tutorial.itely: trivial fix.
2657 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2659 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2660 all non-event music in the parser via MAKE_SYNTAX.
2662 * lily/parser-scheme.cc: Add ly:parser-error function
2664 * scm/paper.scm: fix typo
2666 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2670 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2673 * buildscripts/output-distance.py (test_compare_signatures):
2675 (read_signature_file): use new signature format.
2677 * scm/stencil.scm (write-system-signature): simpler signature
2680 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2683 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2684 stem_end_position, but estimate instead.
2686 * lily/tuplet-bracket.cc (calc_positions): look at
2687 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2688 brackets narrower than beams.
2690 * lily/lexer.ll: set version-seen? even if version is
2693 * lily/rest.cc (y_offset_callback): bugfix: decide position
2694 override based on scm_is_number(). Fixes \rest on center staff
2697 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2698 patterns for 16th triplets.
2700 2006-06-10 Graham Percival <gpermus@gmail.com>
2702 * Documentation/user/ page.itely, global.itely: editing
2705 * Documentation/user/ various: findex -> funindex.
2707 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2709 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2710 insert extra tuplet events.
2712 2006-06-10 Graham Percival <gpermus@gmail.com>
2714 * Documentation/user/programming-interfaces.itely: add
2717 * python/convertrules.py: add annotatefoo -> annotate-foo
2720 * Documentation/user/global.itely: start editing.
2722 * Documentation/user/page.itely: major editing, new spacing
2725 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2727 * scm/define-markup-commands.scm (wordwrap-markups): use
2728 output-def 'line-width if undefined.
2730 * HACKING: trim outdated info.
2732 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2734 * scm/define-grobs.scm (all-grob-descriptions): Add
2735 line-spanner-interface to all grobs that already have
2736 text-spanner-interface or dynamic-text-spanner-interface
2738 * scm/page.scm: Rename annotate{headers,systems,page}->
2741 * input/regression/page-spacing.ly,
2742 input/regression/page-layout-manual-position.ly: idem
2744 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2746 * lily/line-spanner.cc: cleanup property list.
2748 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2749 generator expressions (2.3 compat).
2751 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2753 * lily/vertical-align-engraver.cc: Make sure that the
2754 align{Above,Below}Context properties are included in the automatic
2757 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2759 * scm/paper-system.scm (paper-system-annotate): also annotate the
2760 estimated pure-Y-extent
2762 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2764 * lily/system.cc (break_into_pieces): set the estimated height
2765 of each child system
2767 * lily/stem.cc (pure_height): new pure-Y-extent callback
2769 * lily/staff-symbol-referencer.cc (callback): don't destroy
2770 the staff-position property
2772 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2773 consider_suicide into two functions
2775 * lily/constrained-breaking.cc (resize): use the new pure
2776 callbacks to estimate the height of a system
2778 * lily/axis-group-interface.cc (pure_group_height): new
2779 side-effect-free VerticalAxisGroup height-callback
2781 * lily/align-interface.cc (get_extents_aligned_translates):
2782 split align_elements_to_extents into two functions
2783 (get_pure_child_y_translation): new function
2785 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2787 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2789 * lily/paper-score.cc: cache break_indices and columns
2791 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2793 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2795 * lily/font-config.cc (init_fontconfig): do the init if
2796 cache_file, but don't look at cache_file.
2798 * input/regression/quote-tie.ly: new file.
2800 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2801 to Head_event_tuple, so we deal gracefully with ties on
2804 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2807 2006-06-08 Graham Percival <gpermus@gmail.com>
2809 * input/test/ smart-transpose.ly, reverse-music.ly:
2810 \applyMusic to music functions update, thanks Michael!
2812 2006-06-07 Graham Percival <gpermus@gmail.com>
2814 * input/test/ add-staccato.ly, add-text-script.ly,
2815 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2816 music functions update, thanks to Michael Meixner.
2818 * Documentation/user/music-glossary.tely: small fix
2821 * Documentation/user/ various: minor additions from mailist.
2823 * Documentation/user/lilypond.tely, basic-notation.itely:
2824 small test of @funindex. (works here)
2826 * input/test/font-table.ly: reduce size to partially
2827 de-ugly version in manual.
2829 * Documentation/user/page.itely: new file (split former
2830 "global issues" into "page settings" and "non-musical
2833 * Documentation/user/ various: fix @ref{}s to match
2834 new chapter names (above).
2836 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2838 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2840 2006-06-06 Graham Percival <gpermus@gmail.com>
2842 * Documentation/user/advanced-notation.itely: add example
2843 for segno/coda on barline.
2845 * tex/texinfo.tex: merge from upstream.
2847 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2849 * scripts/lilypond-book.py (process_snippets): Argument fix.
2852 * buildscripts/builder.py:
2855 * Documentation/user/SConscript: More SCons fixes.
2857 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2859 * lily/font-config.cc (init_fontconfig): Only initialize if
2860 global cache_file is found.
2862 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2864 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2867 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2869 * VERSION (PACKAGE_NAME): release 2.9.8
2871 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2872 function. Delay ledger modifying ledgered grobs to
2873 stop_translation_timestep(), to ensure that we're ledgering
2874 according to the new spanner.
2875 (acknowledge_staff_symbol): don't check for non-NULL
2876 staff_sym->get_bound()
2878 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2881 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2884 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2885 directly from srcdir/stepmake/aclocal.m4
2887 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2890 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2892 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2894 * lily/simple-spacer.cc (get_line_configuration): add
2895 keep-inside-line rods
2896 (struct Column_desc): add constructor
2897 (struct Rod_desc): add constructor
2898 (get_line_forces): check for forced page breaks here too
2900 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2901 support/elements cycles between InstrumentNames and AxisGroups
2903 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2905 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2907 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2908 make-txt-files target.
2910 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2911 make-txt-files target.
2913 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2915 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2918 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2920 * Documentation/user/instrument-notation.itely,
2921 input/regression/breathing-sign-ancient.ly,
2922 input/test/divisiones.ly: Removed redundant property settings for
2925 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2926 fix lyrics alignment problems. They are implemented now as scheme
2927 functions that add the appropriate unicode char to the first lyric
2928 event rather than adding a separate lyric event. Minor edit of
2931 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2933 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2934 pollute src dir with built .txt files, but install directly from
2935 Documentation/topdocs/out/
2937 * buildscripts/output-distance.py
2938 (ComparisonData.create_html_result_page): put version/directories
2941 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2944 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2945 Patch by Karl Hammar
2947 * buildscripts/readlink.py: add file.
2948 Patch by Karl Hammar
2950 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2952 * lily/tuplet-number.cc (print): prevent stencil from being
2955 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2957 * scm/stencil.scm (write-system-signature): explicitly
2958 -well, superfluously- close output port.
2960 * buildscripts/output-distance.py (main): oops. Add extra argument.
2962 2006-06-05 Graham Percival <gpermus@gmail.com>
2964 * Documentation/user/music-glossary.tely: clarified example
2965 from Francisco Vila, thanks!
2967 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2969 * input/regression/spacing-section.ly: new file.
2971 * lily/input.cc (programming_error): new function.
2973 * lily/spacing-engraver.cc (try_music): new function. Accept
2974 spacing-section-event
2976 * lily/spacing-spanner.cc (set_springs): take slices of all
2977 columns for spacing.
2979 * lily/include/paper-column.hh (class Paper_column): add
2980 Paper_column::compare.
2982 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2984 * scm/define-music-types.scm (music-descriptions): add
2987 * lily/music-iterator.cc (report_event): use programming_error for
2988 sending non-event error.
2990 * lily/input.cc (programming_error): new function
2992 * buildscripts/output-distance.py (main): use compare-XXX for
2994 (main): --threshold option, default at 0.30
2996 * output-distance.py (main): add --threshold option.
2998 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3000 * scm/paper-system.scm (paper-system-annotate): fix problem when
3001 annotating an empty system
3003 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3005 * GNUmakefile.in: reinstate old web tar/copying.
3007 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3009 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3010 nothing changes. (Erik S)
3012 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3015 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3017 * scm/define-markup-commands.scm (whiteout): do not force
3018 foreground color of argument markup to black.
3020 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3021 the left of the arrow, instead of below the arrow name, so that,
3022 when two little arrows are vertically stacked, their dimensions
3023 and name should not overlap. Add a color key parameter.
3025 * scm/paper-system.scm (paper-system-annotate): Annotate
3026 next-space+next-padding instead of next-space. Annotate space
3027 between next-padding and next-space+padding, respectively, and
3028 following system extent and refpoint-Y-extent. Use colors.
3030 * scm/page.scm (annotate-page): translate annotations slightly to
3033 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3035 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3036 fix for x-staff slurs. Thanks Joe!
3038 * buildscripts/output-distance.py
3039 (SystemLink.output_expression_change_count): keep track of changed
3040 details, and dump in details html page.
3042 * input/regression/figured-bass-staff.ly: add note about setting
3043 properties in Staff context.
3045 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3046 add slurs and ties to support too.
3048 * buildscripts/output-distance.py (main): set dest_dir
3049 argument. Add --max-count option.
3051 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3053 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3054 shortcuts for special unicode chars that are useful in chant
3055 notation. Revised exisiting and added new comments.
3057 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3059 * make/mutopia-rules.make: remove duplicate recipe.
3061 2006-06-02 Werner Lemberg <wl@gnu.org>
3063 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3064 Add support for U+0132 (IJ) and U+0133 (ij).
3066 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3068 * buildscripts/output-distance.py (FileLink): new class. collect
3069 info systems from one .ly file.
3070 (FileLink.link_files_for_html): further tweaks.
3072 2006-06-02 Graham Percival <gpermus@gmail.com>
3074 * tex/texinfo.tex: partial fix for @funindex.
3076 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3079 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3081 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3083 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3084 @example too. Backportme.
3086 2006-06-02 Graham Percival <gpermus@gmail.com>
3088 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3089 from Werner Lemberg.
3091 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3093 * Documentation/user/music-glossary.tely: additional spanish
3094 updates and a lyrics fix in an example.
3096 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3098 * scm/define-grob-properties.scm: Previous patch contained
3099 spurious line from another patch not yet committed. Fixed.
3101 * scm/define-grob-properties.scm: Add missing doc strings for
3104 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3106 * buildscripts/output-distance.py
3107 (ComparisonData.write_text_result_page): separate the scores, sort
3110 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3113 * buildscripts/output-distance.py (me_path): use argv[0] for
3115 (ComparisonData.img_cell): use colored borders.
3117 * scm/stencil.scm (write-system-signature): escape newlines too.
3118 (write-system-signature): use (1,-1) interval for empty interval
3120 2006-01-01 Graham Percival <gpermus@gmail.com>
3122 * Documentation/user/music-glossary.tely: Spanish updates
3123 from Francisco Vila.
3125 * Documentation/user/lilypond-book.itely: addition from
3128 * Documentation/user/ various: edits, small additions
3131 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3133 * GNUmakefile.in (tree-lib-prefix-current):
3134 (tree-share-prefix-current): Use version number in tree, add
3137 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3139 * GNUmakefile.in: write VERSION, again.
3141 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3142 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3144 * stepmake/aclocal.m4: robuster version detection.
3146 * buildscripts/output-distance.py
3147 (ComparisonData.create_html_result_page): copy only if file
3148 exists, fixup src paths.
3150 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3152 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3154 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3155 Another datarootdir reto.
3157 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3158 available. This should be moved to postinstall-lilypond-doc.
3160 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3162 * GNUmakefile.in: simplify local-WWW-post.
3163 remove -type l from find.
3165 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3166 fixes. Don't follow symlinks.
3167 (ComparisonData.create_html_result_page): remove previous results.
3168 insert ../python in path.
3170 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3172 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3174 * config.make.in (datadir): Add datarootdir to silence autoconf.
3176 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3178 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3180 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3182 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3183 slash beams too wide.
3185 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3187 * VERSION: release 2.9.7
3189 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3191 * lily/relocate.cc (read_relocation_dir): Do not blindly
3194 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3196 * lily/parser.yy: replace THIS by PARSER
3198 * Documentation/index.html.in: add link to test-results.html page.
3200 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3202 * scm/translation-functions.scm (format-bass-figure): translate
3203 digits over 10 to the left
3205 * scm/define-markup-commands.scm (translate-scaled): new markup.
3207 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3210 * ly/engraver-init.ly: add Figured_bass_engraver
3212 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3214 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3216 * lily/score-engraver.cc (announce_grob): only note START announces.
3218 * lily/include/engraver-group.hh (Translator_group):
3219 acknowledge_hash_table_ is now drul.
3221 * lily/engraver.cc (announce_end_grob): new method.
3223 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3225 * lily/translator-dispatch-list.cc (create): take start_end argument.
3227 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3228 acknowledge_static_array_ to drul
3230 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3232 * scm/define-grob-interfaces.scm
3233 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3235 * scm/define-grobs.scm (all-grob-descriptions): add
3236 BassFigureAlignmentPositioning
3238 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3239 number stays up to date. Backportme.
3241 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3243 * Documentation/user/basic-notation.itely (Bar lines): Document
3246 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3248 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3250 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3251 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3254 * Resurrect `scons lily' build.
3256 * SConstruct (symlink_tree): Bugfix: link
3257 music-drawing-routines.ps to file iso directory.
3259 * lily/SConscript: Remove kpath-guile from LIBS.
3261 * SConstruct (libdir_package_version): Typo.
3262 (configure): Comment-out fontforge for lack of fontforge.pc .
3263 Also add libdir* to environment.
3265 2006-05-30 Graham Percival <gpermus@gmail.com>
3267 * Documentation/user/ various: minor additions from mailist and
3270 2006-05-30 Paco <fravd@ya.com>
3272 * Documentation/user/music-glossary.tely: numerous corrections and
3273 some new translations.
3275 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3279 * buildscripts/output-distance.py
3280 (ComparisonData.create_html_result_page): new routine: summarise
3281 results in HTML page with images.
3282 (ComparisonData.create_text_result_page): create summary text files too.
3284 * GNUmakefile.in (web-ext): package .signature files too. They
3287 * scm/stencil.scm (write-system-signature): typo.
3289 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3291 * scm/stencil.scm (write-system-signature): better escaping.
3292 only write signature for music systems, not for markup systems.
3294 * scm/framework-ps.scm (output-framework): dump-signatures support
3297 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3299 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3300 for -dno-point-and-click
3302 * lily/grob.cc (get_print_stencil): don't read
3303 point_and_click_global to determine whether to set grob-cause.
3305 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3307 * buildscripts/output-distance.py (main): new function.
3308 (ComparisonData): new class.
3310 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3311 careful with generating new LedgerLineSpanners.
3313 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3315 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3316 context. This fixes double ledger lines in output.
3318 * lily/system.cc (get_paper_system): remove 3 layer limit.
3320 * buildscripts/output-distance.py (SystemLink.distance): new
3321 file. Compare signatures.
3323 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3325 * lily/grob-array.cc (remove_duplicates): rename from
3326 uniq(). Sort before calling uniq() so it actually works.
3328 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3330 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3331 \version from lilypond file snippet.
3332 (Lilypond_file_snippet.ly): oops. typo.
3333 (find_toplevel_snippets): urgh. again.
3335 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3336 prevent duplicated broken items in output.
3338 * scm/framework-eps.scm (output-classic-framework): only dump if
3339 dump-signatures is set.
3341 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3343 * scm/stencil.scm (write-system-signature): new routine: write
3344 python parseable signature of a separate paper system.
3347 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3349 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3353 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3355 * translator-group.cc: send music events to engravers in
3356 non-bottom contexts.
3358 * tuplet-engraver.cc: process tuplet brackets in correct order.
3360 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3362 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3363 arg 2 might point us to a new binary (patch by Karl Hammar)
3365 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3367 * VERSION (PACKAGE_NAME): release 2.9.6
3369 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3371 * Documentation/user/*.itely: 2nd
3372 attempt: replace funindex -> findex globally.
3374 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3376 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3377 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3379 * scm/define-music-display-methods.scm: display methods for
3380 breaks. Fix \applyOutput.
3382 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3384 * Documentation/user/macros.itexi: comment out funindex expansion.
3386 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3389 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3390 Karl Hammar. Backportme.
3392 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3394 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3396 * Documentation/user/programming-interface.itely (Running a
3397 function on all layout objects): idem.
3399 * Documentation/user/introduction.itely (Automated engraving):
3400 update \applyOutput syntax
3402 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3403 remove debugging hook.
3405 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3408 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3410 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3411 TEXI2DVI_FLAGS to texi2dvi invocation.
3413 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3415 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3416 works. More work is done by iterator now, and engraver has been
3417 very much simplified.
3419 * lily/translator-group.cc: try_music is now invoked through a
3422 * lily/*-iterator.cc: Massive cleanups. Junked
3423 try_music_in_children globally. Renamed try_music to report_event,
3424 and made that method descend to a bottom context automatically.
3426 * lily/event-iterator.cc: New file.
3428 * lily/output-property-iterator.cc,
3429 lily/old-lyric-combine-music-iterator.cc: Removed.
3431 * python/convert-rules.py: Modified the syntax for \applyOutput.
3433 2006-05-23 Graham Percival <gpermus@gmail.com>
3435 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3438 * Documentation/user/ various: stuff that might have helped
3439 to fix the pdf creation, plus some minor doc additions.
3441 * Documentation/user/changing-defaults.itely: remove @b from
3442 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3444 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3446 * lily/beaming-pattern.cc (beamify): deal with negative start
3447 moments for beaming patterns.
3449 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3451 * lily/beaming-info.cc (beamify): new function: read beatLength
3452 and beatGrouping from context.
3454 * input/regression/beam-beat-grouping.ly (Module): new file.
3456 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3458 * lily/beam.cc (get_beam_segments): generate events for
3459 max_connect_ case too.
3460 (get_beam_segments): read Stem::max-beam-connect.
3462 * input/regression/beam-single-stem.ly: new file.
3464 * lily/stem.cc (set_beaming): use #f as signaling value for
3467 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3469 * lily/beam.cc (set_beaming): read clip-edges property.
3470 (calc_direction): don't suicide for single stem.
3472 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3473 argument, remove 1<<15 hack. Remove clip_edges()
3475 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3477 2006-05-21 Graham Percival <gpermus@gmail.com>
3479 * Documentation/user/basic-notation.itely: reorg.
3481 * Documentation/user/ various: minor fixes.
3483 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3485 * lily/stencil-expression.cc (register_stencil_head): opps, append
3486 to cdr of static SCM object.
3488 2006-05-19 Graham Percival <gpermus@gmail.com>
3490 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3491 update framework for command index. DOC WRITERS: use @funindex
3492 instead of @cindex @code{}.
3494 * Documentation/user/ various: replace @cindex @code{} => @funindex
3496 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3498 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3499 case positions is set manually.
3501 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3503 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3506 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3508 * Documentation/user/changing-defaults.itely (Contexts explained):
3509 use absolute dimension for @image.
3511 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3512 out image for illustration too.
3513 ($(outdir)/%.png): add more png <-> eps rules.
3515 2006-05-17 Graham Percival <gpermus@gmail.com>
3517 * Documentation/user/ various: remove trailing whitespace, cosmetic
3518 change to reduce changes produced by diff.
3520 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3522 * lily/main.cc (do_chroot_jail): correctness tweak.
3524 * python/lilylib.py (system): import subprocess in system () only.
3526 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3528 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3529 variable. Backportme.
3531 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3533 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3535 2006-05-17 Werner Lemberg <wl@gnu.org>
3537 * lily/lexer.ll (init_signature_has_table): Add
3538 `scm-scm-music-music'.
3540 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3541 (Generic_prefix_music_scm): Add rule for it.
3543 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3544 `quoted-transposition' property.
3546 * ly/music-functions-init.ly (transposedCueDuring): New function.
3548 * scm/define-music-properties.scm (all-music-properties): Updated.
3550 * Documenation/topdocs/NEWS.itely: Document it.
3552 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3554 * python/lilylib.py (system): move import subprocess to system()
3557 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3559 * VERSION (PATCH_LEVEL): release 2.9.5
3561 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3564 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3566 2006-05-16 Graham Percival <gpermus@gmail.com>
3568 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3570 * Documentation/user/ various: minor fixes.
3572 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3574 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3576 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3578 * Documentation/user/advanced-notation.itely (Instrument names):
3579 Modified obsolete instruction on how to move instrument names away
3580 from the staves. Hmm, at second thought the bug probably has been
3581 solved, so the full bug description should probably be removed.
3583 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3585 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3586 currentCommandColumn.
3588 * lily/hairpin.cc (print): also add padding for non-neighbor
3591 * scm/define-context-properties.scm
3592 (all-user-translation-properties): add hairpinToBarline
3594 * input/regression/hairpin-to-barline.ly: new file.
3596 * lily/context.cc (internal_send_stream_event): thinko fix.
3598 * lily/tie.cc (set_default_control_points): robustness fix.
3600 * python/musicxml.py (Part.interpret): don't complain about
3601 incomplete measures.
3603 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3604 new music if last_event_chord() returned None.
3606 * python/musicxml.py (Part.interpret): skip back over chord notes.
3608 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3610 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3611 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3612 lily/slash-repeat-engraver.cc,
3613 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3614 iterator sends PercentEvents
3616 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3617 rework tuplets: send start/stop events to engraver
3619 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3620 dispatchers event-source and events-below to Context
3622 2006-05-15 Graham Percival <gpermus@gmail.com>
3624 * Documentation/user/README.txt: update info for doc writers.
3626 * Documentation/user/programming-interface.itely: integrate
3627 Nicolas' fixes for chapter rewrite.
3629 * Documentation/user/ various: minor fixes.
3631 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3633 * lily/clef-engraver.cc: cleanup.
3635 * Documentation/user/GNUmakefile: dist context-example.eps too.
3637 * lily/key-engraver.cc (create_key): use
3638 explicitKeySignatureVisibility for cancellation too.
3640 * lily/font-config.cc (init_fontconfig): don't close file if
3643 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3645 * Documentation/topdocs/NEWS.tely: niente and rotation news
3647 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3649 * lily/include/stencil.hh
3650 * lily/stencil.cc (rotate): new function. Makes it possible
3651 to rotate a stencil around a given offset.
3653 * lily/grob.cc (get_print_stencil): add rotation support
3655 * lily/stencil-interpret.cc (interpret_stencil_expression):
3656 add rotation support
3658 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3660 * scm/define-grob-properties.scm: add 'rotation property
3662 * scm/define-markup-commands.scm: add rotate markup command
3664 * scm/output-ps.scm: add rotation support in PostScript backend
3666 * scm/output-svg.scm: add rotation support in SVG backend
3668 2006-05-13 Graham Percival <gpermus@gmail.com>
3670 * Documentation/user/music-glossary.itely: French correction.
3672 * Documentation/user/programming-interface.itely: major
3673 new docs, some reorg, some info from Nicolas.
3675 * Documentation/user/ various: small fixes.
3677 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3679 * Documentation/user/programming-interface.itely (Markup
3680 programmer interface): Remove duplicate text.
3682 2006-05-12 Graham Percival <gpermus@gmail.com>
3684 * Documentation/user/context-example.eps: new file.
3686 * Documentation/user/changing-defaults.itely: set up file to
3689 * Documentation/user/programming-interface.itely: changes
3692 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3694 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3696 2006-05-11 Graham Percival <gpermus@gmail.com>
3698 * Documentation/user/programming-interface.itely: first round of
3699 editing and merging emails from Nicolas.
3701 * Documentation/user/scheme-tutorial: minor edit.
3703 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3705 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3707 (Xml_node.message): use it.
3709 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3710 oops. Add duration argument.
3712 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3714 * lily/paper-column-engraver.cc (make_columns):
3715 * scm/define-grobs.scm: Revert my previous change and set the default
3716 in define-grobs.scm instead.
3718 2006-05-09 Graham Percival <gpermus@gmail.com>
3720 * Documentation/user/changing-defaults.itely: general editing,
3721 info about \set and \override.
3723 * Documentation/user/tweaking.itely, advanced-notation.itely:
3724 fixes from Dave Luttinen, thanks!
3726 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3728 * lily/paper-column-engraver.cc (make_columns): By default, a column
3729 needs to be breakable.
3731 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3733 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3735 (musicxml_time_to_lily): idem
3736 (musicxml_key_to_lily): idem
3737 (instrument_drumtype_dict): dict for supported drumtypes.
3738 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3739 moments and pending mm rests
3740 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3741 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3742 (musicxml_voice_to_lily_voice): add mode change.
3743 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3744 speed and less memory usage (factor 5 to 10).
3745 (convert): write -defs.ly and driver file separately so people
3746 can script their own part extraction.
3748 * python/musicxml.py (minidom_demarshal_node): new function:
3749 separate minidom handling.
3750 (lxml_demarshal_node): new function: support lxml.etree too.
3751 (Xml_node.message): new function: verbose error message, with XML
3752 path to offending node.
3753 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3754 (Part_list.generate_id_instrument_dict): new method: collect
3755 instrument names, to be able to set drum_type.
3756 (Part.interpret): handle underfull measures
3757 (Part.interpret): assign instrument names.
3759 * python/musicexp.py (Output_printer.close): new method
3760 (MusicWrapper.print_ly): new class: support other modes,
3762 (BarCheck.print_ly): new class. Support bar checks, with comments
3763 and fancy barchecks.
3764 (NoteEvent.__init__): also set drum_type for drum notes.
3765 (MultiMeasureRest.lisp_expression): dump mm rests.
3767 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3768 line-break-permission if forbidBreak is not set.
3770 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3772 * scm/define-context-properties.scm:
3773 * scm/define-grob-properties.scm:
3774 * scm/define-grobs.scm:
3775 * scm/define-music-display-methods.scm:
3776 * scm/define-music-properties.scm:
3777 * scm/define-music-types.scm:
3778 * scm/music-functions.scm:
3779 * ly/declarations-init.ly:
3780 * lily/include/constrained-breaking.hh:
3782 * lily/spaceable-grob.cc:
3783 * lily/simple-spacer.cc:
3784 * lily/paper-score.cc:
3785 * lily/paper-column.cc:
3786 * lily/paper-column-engraver.cc:
3788 * lily/gourlay-breaking.cc:
3789 * lily/constrained-breaking.cc:
3790 * python/convertrules.py:
3791 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3792 "page-break-penalty" and "line-break-permission".
3793 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3794 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3796 * lily/bar-engraver.cc:
3797 * lily/beam-engraver.cc:
3798 * lily/forbid-break-engraver.cc:
3799 * lily/ligature-engraver.cc:
3800 * lily/paper-column-engraver.cc:
3801 * lily/percent-repeat-engraver.cc:
3802 * lily/score-engraver.cc:
3803 * lily/score-engraver.hh:
3804 * lily/paper-column-engraver.hh:
3805 Inter-engraver communication regarding line breaks is done through context
3806 properties (Score.forbidBreak) instead of function calls.
3808 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3810 * VERSION (PACKAGE_NAME): release 2.9.4
3812 2006-05-08 Graham Percival <gpermus@gmail.com>
3814 * Documentation/user/working.itely: proofreading from Dave
3817 * Doucmentation/user/README.txt: updated with manual style info.
3819 * Documentation/user/ various: trim linewidth to 78 chars.
3821 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3823 * scm/define-grob-properties.scm (all-internal-grob-properties):
3824 remove chord-tremolo property.
3826 * lily/beam.cc (get_beam_segments): don't use stem position as
3827 base for broken ends.
3829 2006-05-06 Graham Percival <gpermus@gmail.com>
3831 * Documentation/user/putting.itely: proofreading from Dave
3834 * Documentation/user/ various: more reorg and clarifications.
3836 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3838 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3840 * ly/music-functions-init.ly: new function featherDurations
3842 * lily/beam.cc: read grow-direction for feathered beaming.
3844 * Documentation/topdocs/NEWS.tely (Top): typo.
3846 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3848 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3851 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3852 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3853 used by music streams.
3855 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3856 lily/stream-event.cc, lily/stream-event-scheme.cc,
3857 lily/listener.cc, lily/scheme-listener.cc,
3858 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3859 lily/include/stream-event.hh, lily/include/listener.hh,
3860 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3861 Created data structures for music streams.
3863 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3865 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3866 construction of a beam.
3869 * flower/include/std-vector.hh (default_compare): use only one comparison.
3871 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3872 (note-by-number): further attachment fixes.
3874 * scm/lily-library.scm (ordered-cons): new function.
3875 (interval-index): new function
3877 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3879 * lily/note-head.cc (get_stem_attachment): new function.
3881 * scm/define-markup-commands.scm (note-by-number): read 'style
3884 * input/regression/markup-note.ly: show note-head style option.
3886 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3889 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3891 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3893 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3895 * lily/include/constrained-breaking.hh: GCC 4 fix.
3897 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3899 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3900 Replace it with functions get_line_forces and get_line_configuration.
3901 (class Simple_spacer): Make data private.
3902 Rewrite compression algorithm to be faster and simpler.
3904 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3905 * lily/gourlay-breaking.cc (solve):
3906 * lily/constrained_breaking.cc (space_line):
3907 Change it to the new simple-spacer code.
3909 * lily/paper-score.cc (get_paper_systems):
3912 Delay breaking the systems until they are requested.
3913 (find_break_indices):
3914 Use vsize for indices.
3916 Move the "Calculating line breaks" message here.
3918 * lily/system.cc (pre_processing):
3919 Move the "Calculating line breaks" message away from here.
3920 (break_into_pieces):
3921 Allow multiple calls to this function in sequence (with touching-but-
3922 not-overlapping breakpoints).
3924 * lily/constrained-breaking.cc:
3925 Replace most of the get_XXXX functions with get_line_details.
3926 Only calculate the force for each line. Calculate configurations only
3927 for the lines we will actually use.
3928 Replace cols_ with lines_.
3930 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3932 * mf/GNUmakefile (depth): remove FC_FIND.
3934 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3936 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3938 * scm/framework-ps.scm (write-preamble): new function.
3939 (write-preamble): load mac fonts via fondu, even if gs-font-load
3942 2006-05-03 Werner Lemberg <wl@gnu.org>
3944 * mf/GNUmakefile (FC_FIND): Fix typo.
3946 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3948 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3950 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3952 * stepmake/aclocal.m4: run python-config for crosscompiling
3955 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3956 -f png for HTML, TEXINFO formats.
3958 * input/tutorial/lbook-html-test.html: new file.
3960 * lily/include/tie-formatting-problem.hh (class
3961 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3962 [column, direction]. This fixes laissez vibrer ties.
3964 * flower/include/tuple.hh (struct Tuple2): new file.
3966 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3967 $(FCMATCH), only if $(NCSB_DIR) not set.
3969 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3971 * config.make.in (DOCUMENTATION): set FCMATCH.
3973 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3975 2006-05-03 Graham Percival <gpermus@gmail.com>
3977 * Documentation/user/ various: final round of reorg.
3979 * Documentation/user/instrument-notation.itely: some more
3980 fixes from Eduardo, thanks!
3982 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3984 * VERSION (PACKAGE_NAME): release 2.9.3
3986 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3988 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3990 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3992 * scm/define-grob-properties.scm (all-user-grob-properties):
3993 Correct typo, thanks to Eduardo.
3995 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3997 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3999 * buildscripts/lilypond-words.py (F): indent fix.
4001 * input/regression/tie-arpeggio-collision.ly: new file.
4003 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4004 function: store outlines per column rank.
4006 * lily/include/tie-configuration.hh (class Tie_configuration): add
4007 column_ranks_ to specification and configuration, to distinguish
4008 between ties for different heads in arpegiated chords.
4010 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4012 * *.py: more 4 space indents.
4014 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4016 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4018 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4020 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4022 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4024 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4026 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4028 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4030 * python/convertrules.py (conv): indent 4 for python files.
4032 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4034 * Documentation/user/changing-defaults.itely (Creating contexts):
4035 Clarify \new semantics.
4037 2006-04-28 Graham Percival <gpermus@gmail.com>
4039 * Documentation/user/ various: major new sections in the
4040 Learning manual, slight reorg elsewhere.
4042 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4044 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4046 * scm/framework-ps.scm (output-framework): remove PageMedia
4048 2006-04-27 Graham Percival <gpermus@gmail.com>
4050 * Documentation/user/ tweaks.itely, working.itely: new
4051 files, being more advanced "learning manual" chapters.
4053 * Documentation/user/ tutorial, putting, lilypond: reorg.
4055 2006-04-26 Graham Percival <gpermus@gmail.com>
4057 * input/regression/lyric-combine-polyphonic.ly: fixed test
4058 (no more "can't find context `one'" error).
4060 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4062 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4064 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4066 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4068 * lily/relocate.cc (read_relocation_dir): new function.
4070 2006-04-26 Graham Percival <gpermus@gmail.com>
4072 * Documentation/user/instrument-notation.itely: a few more fixes
4073 from Eduardo, thanks!
4075 * Documentation/user/README.txt: new file; contains info on
4076 style that used to be in lilypond.tely.
4078 * Documentation/user/ various: first round of doc reorg.
4080 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4081 graphic; this probably causes problems on some pdf
4082 viewers, notably Adobe Acrobat.
4084 2006-04-24 Graham Percival <gpermus@gmail.com>
4086 * Documentation/user/instrument-notation.itely: many alterations
4087 to Vocal music, from Eduardo Viera.
4089 2006-04-23 Graham Percival <gpermus@gmail.com>
4091 * Documentation/user/instrument-notation.itely: fix \new
4092 instead of \context problem.
4094 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4096 * lily/relocate.cc (expand_environment_variables): new function.
4098 (read_relocation_file): id.
4100 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4102 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4104 * ly/engraver-init.ly: remove old comments from TabVoice
4106 2006-04-20 Graham Percival <gpermus@gmail.com>
4108 * Documentation/user/instrument-notation.itely: added Erlend's
4109 latest doc patch, thanks!
4111 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4113 * lily/include/slur.hh:
4115 * lily/phrasing-slur-engraver.cc:
4116 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4117 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4118 Slur_engraver:: and putting it in
4119 Slur::auxiliary_acknowledge_extra_object ().
4121 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4123 * lily/note-collision.cc: fix a comment
4125 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4127 * stepmake/bin/add-html-footer.py: fix footer position in
4128 generated html files: before </body> and </html> tags.
4130 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4132 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4133 Earlier successive `make' commands finally compiled ok.
4135 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4137 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4139 * lily/include/stem-tremolo.hh:
4140 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4144 * lily/include/lookup.hh: add rotated_box ()
4146 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4148 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4149 been generated. Fixes "can't get `--help'" bug after make clean.
4151 * THANKS: alphabetize contributors.
4153 2006-04-17 Graham Percival <gpermus@gmail.com>
4155 * Documentation/user/instrument-notation.itely: added Erlend's
4156 tabs and banjo doc patch. Thanks!
4158 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4160 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4162 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4164 * scm/output-lib.scm: add some more predefined string tunings.
4166 * Documentation/user/instrument-notation.itely: and doc them.
4168 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4170 * ly/engraver.ly: Remove obsolete comments.
4172 * ly/gregorian-init.ly: Define default layout block.
4174 * input/puer-fragment.ly: Updated and extended.
4176 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4178 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4179 pdf conversion behaviour.
4181 * flower/file-name.cc (dir_name)
4182 (get_working_directory): Move from relocate.cc.
4184 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4186 * lily/relocate.cc: Encapsulate sys/stat.h in
4189 2006-04-14 Graham Percival <gpermus@gmail.com>
4191 * Documentation/user/ various: small updates from Cameron
4192 and Juergen, thanks!
4194 * Documentation/user/ various: small updates of my own.
4196 * THANKS: 2.7 -> 2.8.
4198 2006-04-11 Graham Percival <gpermus@gmail.com>
4200 * scm/define-context-properties.scm: typo.
4202 * Documentation/user/ : many more small updates.
4204 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4206 * scm/define-music-types.scm: disposed "docme".
4208 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4210 * lily/hairpin.cc: make niente circles a bit smaller.
4212 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4214 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4215 get-pfa and get-*-fonts targets.
4217 2006-04-10 Graham Percival <gpermus@gmail.com>
4219 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4220 music-glossary, programming-interface: more minor fixes
4223 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4225 * scm/define-context-properties.scm: another old \property update.
4226 This time tested for compiling!
4228 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4230 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4232 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4234 * scm/define-context-properties.scm (all-user-translation-properties):
4235 * Documentation/user/global.itely (Page formatting): Compile fix.
4237 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4239 * Documentation/user/advanced-notation.itely (Polymetric
4240 notation): Update the example to use the "+" symbol and add link
4241 to input/test/compound-time.ly.
4243 2006-04-08 Graham Percival <gpermus@gmail.com>
4245 * scm/define-grob-properties.scm: clarify docs for #'direction.
4247 * scm/define-context-properties.scm: update old \property override.
4249 * Documentation/user/ advanced-notation, global, lilypond-book:
4250 more minor doc updates.
4252 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4254 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4256 * scm/backend-library.scm (search-gs): oops.
4258 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4260 * scripts/lilypond-book.py (output): use base, not filename for href.
4262 * scm/backend-library.scm: only look for gs.
4264 * scripts/lilypond-book.py (output): fix printfilename.
4266 * lily/parser.yy (music_function_musicless_prefix): fold together
4267 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4269 * lily/slur.cc (print): only set font-size if not set yet.
4271 * lily/slur-configuration.cc (add_score): improved layout of debug
4274 2006-04-05 David Feuer <David.Feuer@gmail.com>
4276 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4277 (draw_circle): Hopefully fixed regression.
4278 Improved documentation for several procedures.
4280 2006-03-04 Werner Lemberg <wl@gnu.org>
4282 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4284 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4286 * scripts/musicxml2ly.py (bindir): add dynamic
4289 2006-04-04 Graham Percival <gpermus@gmail.com>
4291 * Documentation/user/ basic-notation, advanced-notation, putting,
4292 instrument-notation, invoking, lilypond, THANKS: another ream of small
4293 fixes from the Doc Helpers.
4295 2006-04-03 David Feuer <David.Feuer@gmail.com>
4297 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4299 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4301 * Cleaned up interfaces between PostScript and Scheme, and moved
4302 computations from PostScript to Scheme:
4304 * music-drawing-routines.ps
4305 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4306 with stroke_and_fill throughout.
4307 (euclidean_length, print_letter, draw_box): Deleted unused
4308 procedures. If someone needs draw_box, implement it using
4309 draw_round_box; don't duplicate code.
4310 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4311 Refactored/cleaned up interfaces.
4314 * output-ps.scm: reordered arguments to PostScript functions to
4315 match new interfaces
4316 (glyph-string): Rewrote glyph-string.
4317 (grob-cause): Replaced string-append with format.
4318 (repeat-slash): Rewrote to do computation here.
4319 (round-filled-box): Rewrote to do computation here.
4321 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4323 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4325 * stepmake/stepmake/toplevel- targets.make: print help info about
4328 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4330 * input/regression/hairpin-circled.ly: new file
4332 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4334 * lily/hairpin.cc (print): add support for circled tip
4336 * scm/define-grob-properties.scm: add circled-tip parameter
4338 * scm/define-grobs.scm: init circled-tip to false
4340 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4342 * scm/music-functions.scm (quote-substitute): set
4345 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4347 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4350 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4352 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4354 2006-03-31 David Feuer <david.feuer@gmail.com>
4356 * scm/framework-ps.scm:
4358 * scm/output-ps.scm: glyph-string now produces smaller, more
4359 readable, and probably faster PostScript. Several findfont
4360 scalefont setfont instances changed to selectfont
4361 Hacked-up string-appends changed to formats.
4363 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4365 2006-03-30 Graham Percival <gpermus@gmail.com>
4367 * scm/lily-library.scm: make "no version" warning message more polite.
4369 * lily/music.cc: add double quotes to failed octave check.
4371 * Documentation/user/ advanced-notation, changing-defaults,
4372 instrument-notation, invoking, music-glossary: whole bunch of minor
4375 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4377 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4378 $(buildscriptdir) iso. depth.
4380 * VERSION (PACKAGE_NAME): release 2.9.1
4382 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4384 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4386 * VERSION (PATCH_LEVEL): bump version number.
4388 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4391 * lily/pango-font.cc (pango_item_string_stencil): use
4394 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4395 $(outdir)/emmentaler-%.svg): remove canary.
4397 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4398 glyphnames if we have a ttf font.
4400 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4402 * Documentation/user/advanced-notation.itely (Font selection):
4403 Corrected reference to the font-family-override.ly example.
4405 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4407 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4408 stem-tremolo object in the stem (or else the stem might not be
4411 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4413 * lily/ttf.cc (print_trailer): only print existing glyphs.
4415 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4417 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4418 position the tremolo based on the position of the notehead.
4420 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4421 notes and update the texidoc line with the new positioning rules.
4423 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4425 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4427 * scripts/lilypond-book.py (Module): set default for linewidth if
4430 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4432 * VERSION (PACKAGE_NAME): release 2.9.0.
4434 * input/regression/stem-tremolo-position.ly: new file.
4436 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4438 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4440 * lily/stem-tremolo.cc (print): position
4441 the tremolo depending only on the end of the stem
4442 and not on the notehead
4443 (raw_stencil): center, on the middle staff line, the
4444 flag that is closest to the end of the stem (previously
4446 (calc_width): add this callback to shorten a tremolo when
4447 it is beamed or it is stemup with a flag
4448 (style): add this callback to make a tremolo rectangular when
4449 it is beamed or it is stemup with a flag
4450 (rotated_box): this is like Lookup::beam but makes a rotated
4451 rectangle instead of a parallelogram
4453 * lily/stem.cc (calc_stem_info): make sure the stem
4454 is long enough to fit the tremolo
4455 (calc-length): reduce the length of tremolo stems since the
4456 tremolo code is now capable of better positioning
4458 * scm/define-grobs.scm: make calc_width the default beam-width
4459 callback for stem-tremolo and add the style callback
4461 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4463 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4466 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4468 * lily/ttf.cc (make_index_to_charcode_map): restore old
4471 2006-03-28 Werner Lemberg <wl@gnu.org>
4473 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4475 2006-03-28 Graham Percival <gpermus@gmail.com>
4477 * THANKS: update for 2.9, add section for Documentation helpers.
4479 * Documentation/topdocs/NEWS.tely: compile fix.
4481 * Documentation/user/ basic-notation, global, advanced-notation,
4482 examples.itely: minor fixes from mailist.
4484 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4486 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4489 * lily/ttf.cc (print_trailer): use it.
4491 * lily/pango-font.cc (get_unicode_name): new function.
4493 * lily/ttf.cc (make_index_to_charcode_map): move function from
4495 (print_trailer): substitute uniXXXX name if applicable.
4497 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4498 (pango_item_string_stencil): use it to generate uniXXXX names.
4500 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4501 note heads, for uniform widths in shape note output.
4502 (overdone_heads): hmm. remove them again.
4504 * scripts/lilypond-book.py (output): add links to filenames.
4506 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4508 * lily/note-collision.cc (get_clash_groups): only consider when
4509 Note_column::dir <> CENTER.
4511 * scripts/lilypond-book.py (get_option_parser): init output_name
4514 2006-03-24 Graham Percival <gpermus@gmail.com>
4516 * Documentation/topdocs/NEWS.tely: add @end itemize
4518 * Documentation/user/ global, advanced-notation: minor
4521 2006-03-23 Graham Percival <gpermus@gmail.com>
4523 * Documentation/user/ lilypond.tely, music-glossary,
4524 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4526 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4528 * mf/GNUmakefile: don't install .enc files.
4530 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4532 * VERSION (PATCH_LEVEL): bump to 2.9.0
4534 2006-03-22 Graham Percival <gpermus@gmail.com>
4536 * Documentation/user/advanced-notation.itely: minor fixes
4539 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4541 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4543 * branch lilypond_2_8
4545 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4547 * scripts/lilypond-book.py (samefile): new function, for windoze
4550 2006-03-21 Graham Percival <gpermus@gmail.com>
4552 * ly/engraver-init.ly: add info about StaffGroup.
4554 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4556 * input/regression/stem-direction-context.ly: idem.
4558 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4562 * input/regression/page-layout-twopass.ly: comment out \markup so
4565 * lily/instrument-name-engraver.cc (finalize): add to instrument
4566 name global System. This also fixes chopped instrument names, but
4567 doesn't crash when there are slurs/beams.
4569 * lily/slur-configuration.cc (add_score): disallow negative slur
4572 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4574 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4576 * lily/instrument-name-engraver.cc (process_music): kludge: add
4577 InstrumentName spanner to axis group of left bound. Fixes chopped
4578 off instrument names in EPS images.
4580 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4582 * scripts/abc2ly.py (option_parser): update to 2.7.40
4584 2006-03-20 Graham Percival <gpermus@gmail.com>
4586 * THANKS: move small doc contributors to SUGGESTIONS.
4588 * Documentation/user/ basic-notation, advanced-notation,
4589 global: small changes from mailist.
4591 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4593 * Documentation/user/advanced-notation.itely (Text marks): update
4594 for new rehearsalMarkAlignSymbol convention.
4596 * VERSION (PATCH_LEVEL): bump version.
4598 * input/test/instrument-name-align.ly: new file.
4600 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4602 * input/test/instrument-name-align.ly: new file. Document how to
4603 align instrument names.
4605 * lily/mark-engraver.cc: remove properties.
4607 * scm/define-context-properties.scm
4608 (all-user-translation-properties): remove align symbol properties
4609 for barnumber/reh. mark.
4611 * lily/break-align-interface.cc (self_align_callback): new
4612 interface, new function. Look at complete alignment. This handles
4613 tunable break alignments in case break-align-symbols are missing.
4615 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4617 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4619 * python/convertrules.py (conv): mark/bar number alignment rule.
4621 * lily/break-align-interface.cc (calc_positioning_done): also
4622 store offset from last visible break-alignment to its
4623 neighbor. This makes alignment on non-visible objects more reliable.
4625 * po/lilypond.pot (Module): ran po-replace.
4627 * input/regression/tie-single-manual.ly (Module): new file.
4629 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4630 look at has_manual_position_.
4631 (from_ties): set has_manual_position_ if tie has staff-position set.
4633 * lily/tuplet-bracket.cc (calc_positions): idem.
4635 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4638 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4640 * scm/define-markup-commands.scm (smallCaps): new markup command
4641 for turning a text to small caps using smaller font size and upper
4644 2006-03-17 Graham Percival <gpermus@gmail.com>
4646 * Documentation/user/ examples, instrument-notation,
4647 advnaced-notation: minor fixes from mailist.
4649 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4651 * Documentation/user/tutorial.itely (First steps): change example
4654 2006-03-17 Graham Percival <gpermus@gmail.com>
4656 * Documentation/user/ examples, advanced: minor changes from mailist.
4658 * THANKS: add Geoff Horton, for documentation stuff.
4660 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4662 * python/lilylib.py (system): revert have_select kludge.
4664 * Documentation/user/tutorial.itely (Commenting input files):
4665 update version numbers in doc.
4667 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4668 bound-padding to multi-measure-interface
4670 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4672 * input/test/engraver-example.ily: update version number.
4674 * VERSION (PACKAGE_NAME): release 2.7.39
4676 * lily/note-spacing.cc (get_spacing): heighten threshold where
4677 accidentals/arpeggios influence previous spacing fully.
4679 * lily/rest.cc (y_offset_callback): only use direction if
4680 staff-position wasn't set before.
4682 * lily/bar-number-engraver.cc: add support for
4683 barNumberAlignSymbol.
4684 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4686 * lily/pointer-group-interface.cc (set_ordered): new function.
4687 (add_unordered_grob): new function.
4689 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4690 to ordered, unless the opposite has been proved. This fixes
4691 random reordering of large object groups across linebreaks,
4694 * lily/main.cc (do_chroot_jail): printf format fix.
4696 * lily/tie-formatting-problem.cc (generate_configuration):
4697 multiply y-shift for dot with direction.
4699 * scm/define-markup-commands.scm (note-by-number): put (magstep
4700 size) in y-attach too.
4702 * Documentation/topdocs/NEWS.tely (Top): show override.
4704 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4705 direction for stems.
4707 2006-03-15 Graham Percival <gpermus@gmail.com>
4709 * Documentation/user/ changing-defaults, global: minor
4712 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4714 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4716 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4717 breakable items after uniformly stretched notes.
4719 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4720 outline with outer edge of note heads. This prevents infinity
4721 problems with tied whole notes.
4723 * scripts/lilypond-book.py (do_file): use os.popen
4725 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4727 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4729 * Documentation/user/invoking.itely: Add ragged-right to bug report
4732 2006-03-14 Graham Percival <gpermus@gmail.com>
4734 * Documentation/user/global.itely: small fix from mailist.
4736 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4738 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4739 file descriptor returned by tempfile.mkstemp() when writing
4740 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4743 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4745 * po/fi.po: newline bugfix.
4747 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4749 * scm/paper.scm (paper-alist): Rounding fixes.
4751 2006-03-13 Graham Percival <gpermus@gmail.com>
4753 * Documentation/user/ changing-defaults, instrument-notation,
4754 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4756 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4760 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4762 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4765 * python/lilylib.py (print_environment): move ps_page_count to
4768 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4770 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4772 * scm/framework-ps.scm (embed-document): new function. Use to
4775 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4777 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4779 * Documentation/user/instrument-notation.itely (Setting simple
4780 songs): Added \book{...} around the full example, so the separate
4781 markups are included in the printed example.
4783 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4785 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4788 * python/lilylib.py (system): rewrite system() using
4789 subprocess. Remove >& redirection trickery.
4791 2006-03-11 Graham Percival <gpermus@gmail.com>
4793 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4794 notation-appendices.itely: minor fixes from mailist.
4796 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4798 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4799 unsplit man also needs images.
4801 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4803 * VERSION (PACKAGE_NAME): 2.7.38 released.
4805 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4807 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4810 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4812 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4813 respects the Score.skipTypesetting property.
4815 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4817 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4818 Prolog. No %%EOF after CFF file.
4820 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4822 * lily/constrained-breaking.cc (get_max_systems): used to return a
4824 (combine_demerits): use pointers to reduce copying data
4825 (calc_subproblem): idem
4826 (get_page_penalty): add page turn penalties
4828 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4830 * Documentation/user/invoking.itely (Invoking lilypond): better
4831 explanation of -e usage.
4833 * lily/main.cc (main_with_guile): don't append to
4834 init_scheme_code_string
4836 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4838 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4840 * scripts/convert-ly.py (do_options): don't print help for
4843 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4844 @code and @example. Update from texinfo.tex from CVS.
4846 2006-03-08 Graham Percival <gpermus@gmail.com>
4848 * Documentation/user/scheme-tutorial.itely: clarifies distances
4849 measured in staff-spaces.
4851 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4853 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4854 consider[k] is true.
4856 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4858 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4859 consider columns that have originals. Unifies spacing for mm
4860 rests around line breaks.
4862 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4863 (set_text_rods): idem.
4864 (calculate_spacing_rods): new function: share code between
4865 set_text_rods and set_spacing_rods.
4866 (set_text_rods): take extents of bounds into account.
4868 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4870 * Documentation/user/basic-notation.itely (Writing music in
4871 parallel): don't use relative.
4873 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4875 * ly/music-functions-init.ly (Module): add shiftDurations
4877 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4879 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4881 * ly/engraver-init.ly: init vocalName to nil.
4883 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4885 * scm/music-functions.scm (music->make-music): bugfix,
4886 KeyChangeEvents are now handled correctly.
4888 * scripts/lilypond-book.py: Add --debug option.
4890 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4892 * python/lilylib.py: add tempfile.
4894 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4896 * VERSION (PACKAGE_NAME): release 2.7.37
4898 * python/lilylib.py (ps_page_count): remove make_ps_images().
4899 (ps_page_count): remove mkdir_p
4900 (system): remove cleanup_temp.
4901 (exit): remove lilypond_version_(check)
4902 (error_log): remove pseudo_filter_p
4907 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4910 * lily/accidental-engraver.cc (make_standard_accidental): only add
4911 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4913 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4914 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4915 Make incompatibilities.
4917 * scm/output-ps.scm (grob-cause): replace backslashes by /
4918 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4920 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4922 * cygwin/GNUmakefile: Install fixes.
4924 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4926 * lily/note-head.cc (head::get_balltype): Compile fix.
4928 * flower/file-name.cc (dos_to_posix): Flower string fix.
4930 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4932 * python/lilylib.py: pychecker cleanups.
4934 * scripts/lilypond-book.py
4935 (Lilypond_snippet.output_print_filename): pychecker cleanups
4937 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4939 * python/lilylib.py (underscore): remove identify() , warranty()
4941 * ps/music-drawing-routines.ps: change Border routine for GSView
4944 * lily/stem.cc (height): use quantize-positions. This triggers
4945 set_stem_lengths, so scripts on beamed stems are handled correctly.
4947 * lily/side-position-interface.cc (aligned_side): check if edges
4948 of script are inside staff. Fixes accent of edge of the staff.
4950 * input/regression/staccato-pos.ly: more examples.
4952 * stepmake/aclocal.m4 (depth): fix bashism.
4954 * lily/lyric-combine-music-iterator.cc: move from
4955 new-lyric-combine-iterator.cc
4956 (process): add pending_grace_lyric_ member to delay lyrics on
4959 * lily/system-start-text.cc (print): suicide if we don't have any
4960 elements. Fixes hara kiri'd instrument names.
4962 * scripts/mup2ly.py (Module): remove.
4964 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4966 * Documentation/user/global.itely (A single music expression):
4967 close @lilypond properly
4969 * lily/volta-bracket.cc (modify_edge_height): change from
4970 after_line_breaking_callback. Suicide last bracket if appropriate.
4972 * python/lilylib.py: strip getopt support
4974 * scripts/etf2ly.py (do_options): use optparse
4976 * scripts/midi2ly.py: optparse, strip lilylib copy.
4978 * scripts/abc2ly.py (voices): use optparse.
4980 * stepmake/stepmake/generic-vars.make: new function absdir.
4982 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4984 * scripts/lilypond-book.py (find_file): use global_options for
4987 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4990 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4992 * python/lilylib.py (get_global_option): ughness for extracting
4993 global options from lilylib.
4994 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4996 * scripts/lilypond-book.py (get_option_parser): use optparse for
4997 option handling. Put options in global_options variable.
4999 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5001 * Documentation/index.html.in: clarify.
5003 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5005 * scm/layout-page-layout.scm (write-page-breaks): add a
5006 music-system-heights property to the page layout output.
5008 * scm/page.scm (make-page-stencil): take footer into account when
5009 computing the 'space-left page property
5010 (annotate-space-left): take footer into account when annonating
5013 2006-02-28 Graham Percival <gpermus@gmail.com>
5015 * Documentation/user/ advanced-notation, global: more (final)
5016 docs for music expressions, removed special fermatas.
5018 2006-02-27 Graham Percival <gpermus@gmail.com>
5020 * Documentation/user/ basic-notation, global: minor changes
5023 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5025 * scm/framework-ps.scm:
5026 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5027 layer for inf? and nan? from framework-ps to lily-library.
5029 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5031 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5032 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5034 * buildscripts/substitute-encoding.py (Module): remove file.
5036 * mf/GNUmakefile: more PFA strippage.
5038 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5040 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5043 * scm/framework-ps.scm: remove font name munging.
5045 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5047 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5049 * scm/markup.scm (define-markup-command): change
5050 def-markup-command to define-markup-command
5052 * scm/music-functions.scm (define-music-function): change
5053 def-music-function to define-music-function.
5055 * python/convertrules.py (conv): rules for def-music-function
5056 and def-markup-commands
5058 * Documentation/user/programming-interface.itely,
5059 input/no-notation/display-lily-tests.ly,
5060 input/regression/lily-in-scheme.ly,
5061 input/regression/markup-user.ly,
5062 input/regression/music-function.ly, input/regression/tie-chord.ly,
5063 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5064 ly/gregorian-init.ly: use new macro names (define-music-function,
5065 define-markup-command).
5067 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5069 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5070 (output): add comments to lp-book latex output.
5072 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5075 2006-02-23 Graham Percival <gpermus@gmail.com>
5077 * Documentation/user/ tutorial, global: minor changes.
5079 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5081 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5082 blocks (for make 3.80)
5084 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5085 \notemode so that user should not have to explicitely type it.
5087 * scm/define-music-display-methods.scm: various
5088 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5091 * input/no-notation/display-lily-tests.ly: new tests for
5092 \applyOutput and \applyContext
5094 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5096 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5097 changed it slightly so that the number of systems returned by
5098 solve () will be the same as the last value passed to resize
5099 (). I've also added more documentation, removed casts, fixed style
5100 problems and put in some recovery if constraints aren't satisfied."
5102 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5104 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5105 for emacs < 22 compatibility.
5106 (count-rexp): Use it.
5107 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5108 substring juggling (Milan Zamazal).
5110 2006-02-23 Graham Percival <gpermus@gmail.com>
5112 * Documentation/user/ basic-notation, advanced-notation,
5113 global.itely, invoking.itely, tutorial,itely:
5114 minor fixes from mailist.
5116 * scm/define-markup-commands.scm: improve docs of \filled-box.
5118 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5120 * Documentation/index.html.in: changes concern the previous release.
5122 * input/regression/+.ly: cultivate typographical terminology.
5124 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5126 * scm/define-grob-interfaces.scm (parentheses-interface): add
5127 padding to parentheses-interface.
5129 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5130 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5132 * VERSION (PATCH_LEVEL): release 2.7.36
5134 * lily/slur.cc: add avoid-slur (ugh.)
5136 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5137 intersection gets smaller. This fixes slurs over extreme points.
5139 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5140 stems with neutral-direction set.
5142 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5144 * lily/open-type-font.cc (load_table): format error.
5146 * lily/change-iterator.cc (process): format fix.
5148 * flower/include/international.hh (_f): idem.
5150 * flower/include/std-string.hh: add format printf attribute.
5152 * scm/define-grobs.scm (all-grob-descriptions): height of all
5153 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5155 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5158 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5160 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5162 * input/regression/: upgraded syntax for some files.
5164 * THANKS: Add bughunters.
5166 2006-02-22 Graham Percival <gpermus@gmail.com>
5168 * Documentation/user/ invoking.itely, advanced-notation.itely,
5169 global.itely: long-awaited "let's make chapter 10 not suck"
5170 update. Rearrange chapter 10; now called "global issues",
5171 addresses file structure, etc. Some info from other files
5172 moved into global.itely.
5174 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5176 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5177 catch trill-span-event notes.
5179 * Documentation/user/examples.itely (Ancient notation templates): typo.
5182 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5184 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5186 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5188 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5190 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5191 froum Laissez_vibrer_engraver.
5193 * ly/declarations-init.ly (repeatTie): add \repeatTie
5195 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5197 * scm/define-grob-properties.scm (all-user-grob-properties): add
5198 head-direction property.
5200 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5201 from_lv_ties. Take head direction argument.
5203 * lily/semi-tie-column.cc: rename from
5204 laissez-vibrer-tie-column.cc. Rename class too.
5206 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5209 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5211 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5213 (find_breaks): idem.
5215 2006-02-21 Graham Percival <gpermus@gmail.com>
5217 * Documentation/user/advanced-notation.itely: fixed make-moment]
5220 * Documentation/user/basic-notation.itely: more clarification to
5223 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5225 * lily/include/constrained-breaking.hh (class
5226 Constrained_breaking): new file.
5228 * lily/constrained-breaking.cc (resize): new file.
5230 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5232 * Documentation/user/advanced-notation.itely (Clusters): insert
5235 * lily/tie-column.cc (calc_positioning_done): support for
5238 * lily/tie-formatting-problem.cc
5239 (generate_extremal_tie_variations): factor out.
5240 (score_ties_configuration): annotate all tie
5241 (print_ties_configuration): new routine.
5242 (generate_configuration): nudge extremal ties outside of the head
5244 (score_ties_configuration): oops. convert to staff-space before
5245 determining position symmetry.
5247 2006-02-20 Graham Percival <gpermus@gmail.com>
5249 * Documentation/user/*-notation.itely: misc minor editing,
5250 shifting doc sections around.
5252 * Documentation/user/*-notation-itely, global.itely,
5253 changing-defaults.itely: added new stuff from NEWS.
5255 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5259 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5261 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5262 lilypond --verbose for lp-book.
5264 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5265 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5267 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5268 $(buildscript-dir) iso. absolute depth.
5270 * buildscripts/genicon.py (dir): thinko.
5272 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5274 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5276 * scm/output-lib.scm: swap darkcyan/darkyellow
5278 * THANKS: Add bughunters.
5280 2006-02-19 Graham Percival <gpermus@gmail.com>
5282 * Documentation/user/programming-interfaces.itely: fixed example.
5284 * Documentation/user/instrument-notation.itely: fix @{ @}.
5286 * scm/script.scm: add avoid-slur for \open.
5288 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5290 * lily/tie-formatting-problem.cc (score_configuration): use
5291 sliding score for min-length.
5293 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5294 spaghetti for icons.
5296 * buildscripts/genicon.py (program_name): new file.
5298 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5300 (generate_configuration): for small ties, also look for collisions
5301 at Y + DIR*h + DELTA_Y.
5302 (get_variations): consider variation for dot positions too.
5304 * lily/side-position-interface.cc (aligned_side): take abs for
5305 quantized rounded position. Fixes tenuto below staff.
5307 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5308 markers when necessary.
5310 * lily/program-option.cc (internal_set_option): add
5311 strict_infinity_checking option.
5313 * scm/output-lib.scm (cyan): swap yellow and cyan.
5315 2006-02-19 Graham Percival <gpermus@gmail.com>
5317 * darwin.patch: trivial linenumber update.
5319 * Documentation/user/ {various}: `\context foo = named' changed
5320 to `\new foo = "name"' in docs.
5322 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5324 * scm/stencil.scm (annotate-y-interval): use it.
5326 * scm/lily-library.scm (interval-sane?): new function.
5328 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5331 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5334 * flower/include/std-vector.hh (iterof): add iterof macro.
5336 * lily/enclosing-bracket.cc (width): new function.
5338 * lily/align-interface.cc (align_elements_to_extents): reinstate
5341 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5343 * Documentation/index.html.in: fix spelling: thankyous.
5345 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5347 * lily/lyric-hyphen.cc: typo.
5349 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5351 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5352 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5355 * VERSION: release 2.7.35
5357 * lily/beam.cc (get_default_dir): oops. Take abs () for
5359 (get_default_dir): use extreme position criterion only in absence
5360 of forced stem directions.
5362 * VERSION (PATCH_LEVEL): bump VERSION.
5364 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5365 dependencies. Necessary for -jX builds.
5367 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5369 * lily/relocate.cc (setup_paths): Yet another const fix.
5371 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5373 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5375 * lily/relocate.cc (setup_paths): oops.
5377 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5379 * Documentation/index.html.in: order links: html before PDF.
5381 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5383 * lily/tie-column-format.cc (Module): remove.
5385 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5387 * lily/text-spanner.cc (print): idem.
5389 * lily/dynamic-text-spanner.cc (print): only print line if longer
5392 * lily/auto-change-iterator.cc (change_to): formatting.
5394 * lily/beam.cc (get_default_dir): take extreme note head as input
5397 * lily/tie.cc (get_default_dir): only look directions for visible
5400 * lily/side-position-interface.cc (aligned_side): oops. Don't
5401 mutiply with direction. This fixes quantized (staccato, tenuto)
5402 scripts below notes.
5404 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5405 direction. Fixes c-lyrics-center-align.ly
5407 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5409 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5412 * lily/std-string.cc:
5413 * lily/include/std-vector.hh (split_string): Move and rename from
5414 lily/include/misc.hh, lily/misc.cc. Update callers.
5416 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5418 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5420 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5422 * flower/test-file.cc: New file.
5424 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5427 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5429 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5431 * flower/include/file-storage.hh: remove file.
5433 * lily/include/midi-item.hh (class Midi_track): idem.
5435 * lily/include/source.hh (class Sources): idem.
5437 * lily/include/performance.hh (class Performance): use vector
5440 * flower/include/cons.hh (class Cons): remove file.
5442 * flower/include/flower-proto.hh: remove template cruft.
5444 * lily/include/font-metric.hh: use size_t not vsize for indices.
5446 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5449 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5451 * lily/include/paper-book.hh (class Paper_book):
5452 make get_system_specs() public.
5454 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5455 the force=10000 case if we don't have a current-best.
5457 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5460 * flower/include/flower-proto.hh: remove outdated templates.
5462 * scm/page.scm: use annotate-spacing
5464 2006-02-15 Graham Percival <gpermus@gmail.com>
5466 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5468 * THANKS: moved Erlend Aasland to contributors.
5470 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5472 * config.hh.in: remove HAVE_PANGO_16
5474 * lily/tuplet-bracket.cc (calc_positions): multiply with
5475 staff-space for beam case. This fixes tuplets+beams on scaled
5478 * config.hh.in: remove all Kpathsea related defines.
5480 * lily/dot-column.cc (side_position): reach stem via dots->
5481 head->stem. Inspect all stems for dot collisions.
5483 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5486 * lily/bar-number-engraver.cc (process_music): document function
5489 * lily/score.cc (default_rendering): add pscore, not systems
5492 * lily/paper-book.cc (get_system_specs): separate generation of
5495 * flower/include/std-vector.hh: don't include config.hh
5497 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5499 * flower/include/std-vector.hh: Better wrapper compatibility with
5502 * flower/include/flower-proto.hh: Remove cheap forward declaration
5505 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5507 2006-02-14 Graham Percival <gpermus@gmail.com>
5509 * Documentation/user/invoking.itely: add warning about command line.
5511 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5513 * lily/include/lily-proto.hh: add Prob, rm Page.
5515 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5517 * VERSION: release 2.7.34
5519 * lily/relocate.cc (framework_relocation): show canary if
5520 GHOSTSCRIPT_VERSION undefined.
5522 * GNUmakefile.in: remove $(VERSION) symlink.
5524 * lily/relocate.cc (setup_paths): add +
5526 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5528 * Documentation/index.html.in: specify sizes for all big HTML pages.
5530 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5532 * config.hh.in: remove @FRAMEWORKDIR@
5534 * lily/system-start-text.cc (get_stencil): new file: separate out
5535 system-start-delimiter text support.
5537 * input/**ly: replace \context with \new where appropriate.
5541 * lily/slur-scoring.cc (get_base_attachments): use
5542 robust_relative_extent. This fixes problems with empty paper-columns.
5544 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5546 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5548 * scm/define-music-properties.scm (all-music-properties):
5549 create-new property.
5551 * lily/context-specced-music-iterator.cc (construct_children):
5552 inspect 'create-new property iso. magical $uniqueContextId context
5555 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5557 * lily/context-key-manager.cc (Module): new file. Encapsulate
5558 object key generation.
5560 * lily/include/context-key-manager.hh (Module): new file.
5562 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5564 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5567 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5569 (reloc_b): excise --enable-framework-dir
5571 * lily/relocate.cc (framework_relocation): use getenv
5572 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5574 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5576 * flower/include/std-string.hh:
5577 * flower/include/std-vector.hh: Finish std:: conversion; move
5578 flower extensions from std:: namespace. Update users.
5580 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5581 their expansion to vector<*>. Update users.
5583 2006-02-10 Graham Percival <gpermus@gmail.com>
5585 * Documentation/user/invoking.itely: add example to File structure.
5587 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5588 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5590 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5592 * ly/paper-defaults.ly: typo.
5594 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5595 set_parent() for parentheses. This will make it show up in bbox
5598 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5599 ly:grob-common* functions.
5601 * lily/grob-scheme.cc (LY_DEFINE):
5602 ly:grob-common-refpoint-of-array: new function
5603 ly:grob-common-refpoint: new function
5604 ly:grob-relative-coordinate: new function
5606 * lily/instrument-name-engraver.cc (process_music): use
5607 Text_interface::is_markup(). This fixes \markup on instrument names.
5609 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5612 * lily/slur.cc (print): idem.
5614 * lily/tie.cc: add line-thickness for ties.
5616 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5618 * scm/output-svg.scm: Document diversion from GNU coding standards
5619 as a workaround for a bug in Microsoft Internet Explorer.
5621 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5623 * lily/instrument-name-engraver.cc (process_music): use
5624 is_markup() iso. is_string()
5626 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5628 * lily/percent-repeat-engraver.cc (process_music): only look at
5629 main_part_ for % repeats.
5631 * lily/stem-tremolo.cc (get_beam_translation): new function.
5632 (calc_slope): new function.
5633 (height): don't use real slope.
5635 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5637 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5638 new connect-to-neighbor, control-points and staff-padding
5639 properties to make ligature brackets showing up again.
5641 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5643 * VERSION: release 2.7.33
5645 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5648 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5649 remove applyOutput example.
5650 (Objects connected to the input): document \tweak, \parenthesize
5652 * lily/relocate.cc (prefix_relocation): allow "current"
5653 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5654 changing VERSION in a lily tree less painful.
5656 * input/regression/parenthesize.ly: new file.
5658 * scm/output-lib.scm (parenthesize-element): new function.
5660 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5662 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5664 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5665 cause: accidentals are caused by note heads, not note events.
5667 2006-02-08 Graham Percival <gpermus@gmail.com>
5669 * darwin.patch: small patch from Erlend, thanks!
5671 * Documentation/user/basic-notation.itely: add stem-neutral example.
5673 * Documentation/user/putting.itely: clarifications.
5675 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5677 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5678 note, add more guidelines to what should go into NEWS.
5680 * input/sakura-sakura.ly: document how to override font.
5682 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5684 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5686 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5688 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5690 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5691 convertrules. Add explicit grouping, needed for python2.2.
5693 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5695 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5697 2006-02-07 Graham Percival <gpermus@gmail.com>
5699 * Documentation/user/global.itely: fix line-width in (text) docs.
5701 * Documentation/user/lilypond-book.itely: same.
5703 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5705 * VERSION (PACKAGE_NAME): release 2.7.32
5707 * Documentation/topdocs/NEWS.tely (Top): document new variable
5710 * flower/include/array.icc (Message): remove file.
5712 * flower/include/std-vector.hh: make sure vsize and VPOS are
5713 defined for binary_search_bounds().
5715 * flower/std-string.cc (std): add to_string(long unsigned).
5717 * configure.in (gui_b): excise std_string option.
5718 (gui_b): excise std_vector option.
5720 * flower/string.cc (Module): excise flower array & string
5722 * flower/include/std-string.hh: excise flower string.
5724 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5726 * python/convertrules.py (lilypond_version_re_str): require
5727 only numbers and dots in \version string.
5729 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5731 * lily/system-start-delimiter.cc (print): allow style = text too.
5733 * lily/system-start-delimiter-engraver.cc
5734 (acknowledge_system_start_text): new function, also add add to
5735 support of system-start-text (instrument names). This fixes
5736 instrument names on piano staves.
5738 * lily/instrument-name-engraver.cc: rewrite. Use
5739 system-start-delimiter approach. This save memory and cpu.
5741 * scm/define-grobs.scm (all-grob-descriptions): remove
5742 instrument-name from break-alignment.
5744 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5746 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5748 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5751 * configure.in (std_vector): On by default.
5753 * lily/include/font-metric.hh:
5754 * lily/include/tfm-reader.hh:
5755 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5758 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5760 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5762 * VERSION (PACKAGE_NAME): 2.7.31
5764 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5765 EPS edge at 0, but take minimum with left-overshoot. This fixes
5766 cut off system start delims.
5768 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5769 hack: add to axis group if not added yet. This fixes hara kiri'd
5772 * lily/hara-kiri-group-spanner.cc
5773 (force_hara_kiri_in_y_parent_callback): fix signatures.
5775 * lily/hairpin.cc (print): check next hairpin to see whether or
5776 not to be continuing.
5778 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5780 * Remove trailing whitespace from makefiles.
5782 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5785 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5787 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5789 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5791 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5793 * configure.in: Use it.
5795 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5797 * scm/music-functions.scm (pitch-of-note): new function.
5799 * ly/music-functions-init.ly: add \octave and \addquote
5801 * lily/parser.yy (music_function_chord_body): softcode \octave.
5802 (lilypond_header): softcode \addquote
5804 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5806 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5807 array.hh, parray.hh at all. Getting ready to flip the
5810 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5812 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5815 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5817 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5819 * flower/include/array.hh: typo.
5821 2006-02-02 Graham Percival <gpermus@gmail.com>
5823 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5825 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5827 * flower/include/pqueue.hh: Derive from std::vector.
5829 * flower/include/parray.hh: Conform to std::vector interface.
5832 2006-02-02 Graham Percival <gpermus@gmail.com>
5834 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5836 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5838 * flower/file-path.cc (is_file): remove if 0 section.
5840 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5841 selecting afii61352.
5843 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5845 * flower/include/std-vector.hh (boundary): Oops, reverse.
5847 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5848 remove superfluous `d'.
5850 * flower/include/std-vector.hh (boundary, top): Detach from class.
5851 Remove empty vector shell.
5853 * flower/include/array.hh (reverse, swap): Detach from class.
5856 * flower/include/std-vector.hh
5857 * flower/include/array.hh (concat): Globally change to insert ().
5860 * flower/include/std-vector.hh
5861 * flower/include/parray.hh
5862 * flower/include/array.hh (elem, elem_ref): Globally replace by
5865 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5867 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5869 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5870 anticipate on identifier substitutions.
5872 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5874 * flower/include/std-vector.hh (insert): Remove, replace by
5875 std::vector interface. Update callers.
5877 * flower/include/array.icc (insert): Change signature to
5878 match std::vector interface.
5880 * flower/include/array.icc (vector_sort): Bugfix.
5882 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5884 * lily/parser.yy (output_def_head_with_mode_switch): new
5885 production. Result: dashes and underscores may be used in the
5888 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5890 * python/convertrules.py (conv): oops. One slash too much.
5892 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5894 * flower/include/std-vector.hh (sort): Remove, replace by
5895 ::vector_sort. Update callers.
5897 * flower/include/std-vector.hh (slice): Remove. Update callers.
5900 * flower/test-std.cc (vector_sort): New test.
5902 2006-02-01 Graham Percival <gpermus@gmail.com>
5904 * Documentation/user/putting.itely: fixes from Erik.
5906 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5908 * flower/test-std.cc: Add simple unit test for vector migration.
5910 * stepmake/stepmake/test*: Unit test support.
5912 * flower/include/std-vector.hh (del): Remove. Use erase (),
5915 * flower/include/array.hh (begin, end): Add.
5918 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5920 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5921 std::string not String.
5923 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5926 * lily/prob.cc (Prob): copy type_ too.
5928 * lily/lily-guile.cc (mangle_cxx_identifier): new
5929 function. Class_bla::foo_bar_[px] ->
5930 ly:class-bla::foo-bar[?!]. Changes throughout
5932 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5934 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5936 * lily/beam.cc (calc_direction): take dir from visible stem in
5939 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5941 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5942 Fix -1, >=0 boundary checks for unsigned vsize.
5944 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5945 loop for unsigned vsize.
5947 * configure.in (--enable-std-vector): New option.
5948 (--enable-std-string): On by default.
5950 * flower/include/std-vector.hh: New file. Enable switch to
5951 std::vector, update client code.
5953 2006-01-30 Graham Percival <gpermus@gmail.com>
5955 * scm/document-translation.scm: clarify "this context is also
5956 known as". Thanks, Werner!
5958 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5960 * Documentation/user/invoking.itely: small fix from Don.
5962 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5964 * scm/lily.scm (define-scheme-options): rename option
5965 preview-include-book-title to book-title-preview
5966 (define-scheme-options): move force-eps-font-include (from paper
5967 block) to eps-font-include -d option.
5969 * VERSION (PATCH_LEVEL): release 2.7.30
5971 * input/bach-schenker.ly (staffPiano): new file.
5973 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5975 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5978 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5980 * ps/lilyponddefs.ps: remove start-system, stop-system,
5981 start-page fluff. This saves putting { } code on the stack, fixing
5982 stack overflows when including EPS files.
5984 2006-01-29 Graham Percival <gpermus@gmail.com>
5986 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5988 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5990 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5992 2006-01-28 Graham Percival <gpermus@gmail.com>
5994 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5996 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5998 * input/mutopia/claop.py: Update.
6000 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6002 * input/regression/completion-heads.ly (texidoc): fix.
6004 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6006 * lily/tie-formatting-problem.cc
6007 (set_ties_config_standard_directions): use abs iso fabs for ints.
6009 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6011 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6012 little less than noteheight, to prevent overlaps in chords.
6014 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6015 head, and fudge stem-attachment.
6017 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6019 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6021 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6023 * lily/main.cc (main): Debugging aid: catch exceptions.
6025 * flower/std-string.cc (to_string): Robustification. Fixes midi
6026 output with std::string.
6028 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6030 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6032 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6034 * Fix -DSTRING_UTILS_INLINED.
6036 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6038 * VERSION (PATCH_LEVEL): release 2.7.29
6040 * lily/relocate.cc (setup_paths): mingw uses std string too.
6042 * lily/*.cc: various fixes for substr(ARG).
6044 * lily/sustain-pedal.cc (print):
6046 * flower/file-name.cc (slashify): use std strings.
6048 * flower/string-convert.cc: remove publib.h
6050 * scm/define-markup-commands.scm (verbatim-file): new markup
6051 command \verbatim-file
6053 * Documentation/topdocs/NEWS.tely: fixup URLs
6055 * input/regression/alignment-vertical-manual-setting.ly (Module):
6058 * lily/align-interface.cc (align_elements_to_extents): overwrite
6059 translations with numbers in alignment-offsets from left bound
6061 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6062 (page-translate-systems): new function: take into account Y-offset.
6064 * Documentation/topdocs/NEWS.tely (Top): document new features.
6066 * input/regression/page-layout-manual-position.ly (Module): new
6069 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6071 * flower/file-path.cc (path::parse_path): Oops.
6073 * Finish std::string interface. For now, use std:: marker
6074 throughout for easy s/r.
6076 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6078 * Documentation/user/putting.itely (Score is a single musical
6080 (Score is a single musical expression): more typos.
6082 * scm/page.scm (annotate-space-left): thinko.
6083 (annotate-page): more thinkos.
6085 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6087 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6088 for different \score blocks separately.
6089 (post-process-pages): put write-page-layout into paper block.
6091 * lily/output-def.cc (get_parser): new file.
6093 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6096 * lily/include/output-def.hh (class Output_def): add parser_ member.
6098 * input/regression/page-layout-twopass.ly (Module): new file.
6100 * scm/lily.scm: remove cpp hack.
6102 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6104 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6106 * GNUmakefile.in (c-clean): New target.
6108 * flower/include/std-string.hh: String/std::string compatibility:
6109 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6112 * flower/rational.cc:
6113 * flower/include/rational.hh:
6116 * flower/include/offset.hh:
6118 * flower/interval.cc:
6119 * flower/include/interval.hh:
6121 * flower/string-convert.cc:
6122 * flower/include/string-convert.hh: Use std::string [interface].
6125 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6127 * Documentation/index.html.in: clean up.
6129 2006-01-25 Graham Percival <gpermus@gmail.com>
6131 * Documentation/user/putting.itely: another new untested doc section.
6133 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6135 * scm/layout-page-layout.scm (write-page-breaks): write
6136 \spacingTweaks #ALIST. Handle grace timing.
6138 * scm/: more imports.
6140 * scm/page.scm (make-page): add footer/header.
6141 (annotate-space-left): revise: only take page argument.
6142 (layout->page-init): new function.
6144 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6145 version of the system/spacing/linebreak hack writing to the output
6147 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6150 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6153 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6155 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6157 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6159 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6160 handling to page.scm
6162 * lily/prob-scheme.cc (LY_DEFINE): new file.
6163 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6165 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6168 * lily/music.cc (derived_mark): derive Music from Prob.
6170 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6172 * lily/prob.cc (Module): Implement Prob (Property Object), object
6173 with shared and r/w property alists.
6175 * lily/include/prob.hh (Module): new file. Declare Prob.
6177 * flower/string.cc: remove is_empty().
6179 * flower/include/string.hh (class String): remove String:: qualifier.
6181 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6182 substitute appropriate functions.
6184 * flower/include/string.hh (class String): remove to_str0 and
6185 is_empty(). S&R everywhere.
6187 2006-01-23 Graham Percival <gpermus@gmail.com>
6189 * Documentation/user/basic-notation.itely: add hairpin
6190 after-linebreak tweak to commonprop.
6192 * Documentation/user/putting.itely: added two new sections.
6194 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6196 * flower/international.cc:
6197 * flower/include/international.hh:
6199 * flower/getopt-long.cc:
6200 * flower/include/getopt-long.hh: Use std::string [interface].
6203 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6205 * stepmake/stepmake/executable-rules.make: Add dependency on
6208 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6210 * flower/file-path.cc:
6211 * flower/include/file-path.hh: Use std::string [interface].
6214 * flower/direction.cc:
6215 * flower/axis.cc: Unused. Remove.
6217 * configure.in (--enable-std-string): New option.
6219 * flower/std-string.cc:
6220 * flower/include/std-string.hh: New file.
6222 * flower/file-name.cc[STD_STRING]:
6223 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6225 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6227 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6229 * scm/define-markup-commands.scm (with-dimensions):
6230 with-dimensions markup command.
6232 * input/test/font-table.ly: use it.
6234 * lily/open-type-font.cc (glyph_list): new function.
6236 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6238 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6240 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6242 * ly/music-functions-init.ly (parallelMusic): new music function
6243 for parallel music entry.
6245 * scm/define-music-properties.scm (all-music-properties): new
6246 'void music property
6248 * scm/music-functions.scm (ly:music-message): make public, to be
6249 used in music function definitions
6251 * scm/lily-library.scm (collect-music-for-book): discard music
6252 when the 'void property is set.
6254 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6256 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6258 * mf/GNUmakefile: idem.
6260 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6262 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6264 * Documentation/user/notation-appendices.itely (The Feta font):
6267 * input/test/font-table.ly: new file. Generate font table within lily.
6269 * Documentation/user/notation-appendices.itely (The Feta font):
6270 use new font-table.ly file.
6272 * stepmake/stepmake/install-out-targets.make
6273 (local-install-outfiles): only create directory if
6274 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6276 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6278 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6280 * VERSION (PACKAGE_NAME): release 2.7.28
6282 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6283 the right font from a Mac dfont.
6284 (write-preamble): don't forget directory, only look at files.
6286 This fixes problems with TTF files in dfonts that don't match
6287 their PostScript names.
6289 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6290 PS name from TTF font.
6292 * input/regression/tie-manual.ly: document new feature.
6294 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6296 * VERSION (MY_PATCH_LEVEL): bump to .28
6298 * Documentation/user/basic-notation.itely (Ties): add tie examples
6301 * lily/tie-formatting-problem.cc (score_ties_configuration):
6302 symmetry penalties for outer ties.
6304 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6306 * lily/tie-formatting-problem.cc (generate_configuration)
6307 (set_manual_tie_configuration): skip non-pair manual
6308 tie-configuration, so you can set individual ties as
6310 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6312 * input/regression/tie-chord.ly: use generateTiePattern to
6315 * lily/tie-formatting-problem.cc (peak_around): new function.
6316 (score_configuration): use sliding criterion for staff line collisions.
6317 (score_configuration): idem for dot collisions.
6318 (generate_configuration): use separate stem_gap for gap to stem.
6320 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6321 separate penalty factors for x and y distance.
6322 (struct Tie_details): separate penalties for tip and center line collisions.
6324 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6326 * lily/tie-formatting-problem.cc (generate_configuration): make
6327 large ties avoid stafflines in the horizontal section.
6328 (score_configuration): use softcoded penalties
6329 (score_aptitude): idem.
6331 * lily/tie-helper.cc (from_grob): softcode tie details
6333 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6335 * lily/staff-symbol-referencer.cc (on_line): rename from
6338 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6340 * ly/music-functions-init.ly: remove duplicate tag.
6342 * lily/include/*.hh: GCC 4.1 fixes.
6344 006-01-16 Erlend Aasland <erlenda@gmail.com>
6346 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6348 * scm/define-music-types.scm: fix bug in desc. string
6349 for OverrideProperty
6351 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6353 * scripts/lilypond-book.py: bugfix
6355 * scm/define-music-types.scm: fix typos.
6357 2006-01-14 Graham Percival <gpermus@gmail.com>
6359 * Documentation/user/ basic-notation.itely, global.itely,
6360 advanced-notation.itely, instrument-notation.itely: small
6361 additions (bugs and commonly tweaked properties).
6363 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6365 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6366 detection of mingw build.
6367 (MINGW_BUILD): opps.
6369 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6371 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6374 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6376 * scm/music-functions.scm (skip->rest): add skip->rest
6378 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6380 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6383 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6384 config dirs. Aids debugging.
6385 (display_config): also display config files.
6387 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6389 * VERSION: release 2.7.27
6391 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6392 for determining bar size.
6394 * lily/staff-symbol.cc (print): place lines at distance line-positions
6396 * scm/define-grob-properties.scm (all-user-grob-properties): add
6399 * lily/staff-symbol.cc (height): new function.
6401 * input/regression/staff-line-positions.ly: new file.
6403 2006-01-06 Graham Percival <gpermus@gmail.com>
6405 * input/test/add-staccato.ly: remove reference to old file.
6407 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6409 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6410 lilypond binary too.
6412 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6414 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6416 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6418 * scripts/midi2ly.py: Bugfix: Declare datadir.
6420 * make/ly-rules.make:
6421 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6422 that seems to be gone). Fixes make web.
6424 * The grand 2005-2006 replace.
6426 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6428 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6430 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6431 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6432 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6433 like -dgs-font-load.
6435 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6436 remove absolute path to lilypond binary.
6438 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6440 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6442 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6444 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6446 * mf/GNUmakefile: remove broken dvips map symlink.
6448 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6451 * configure.in: Cosmetic fixes.
6453 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6455 * Documentation/user/music-glossary.tely (Pitch names): Added
6456 Spanish pitch names and durations, thanks to Ernesto Gancedo
6458 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6460 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6461 init. Fixes verbose printing of .scm files.
6463 * stepmake/aclocal.m4: add spaces before - options.
6465 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6467 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6468 of path search in local block variable.
6470 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6472 * configure.in (NCSB_DIR): --enable-ncsb-dir
6473 (LINK_GXX_STATICALLY): denko.
6475 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6477 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6478 use locate to find c059033l.pfb.
6480 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6482 * lily/tie-formatting-problem.cc
6483 (problem::generate_base_chord_configuration): Use my_round (was
6486 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6487 do not invoke mbrtowc.
6489 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6491 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6493 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6495 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6497 * Documentation/user/invoking.itely (svg): revise.
6499 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6501 * lily/lexer.ll: use sourcefilename iso. renameinput.
6503 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6505 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6506 <PostScriptName>.ttf instead of c059XXXttf.
6508 * lily/program-option.cc (LY_DEFINE): special support for
6509 --verbose, so it works before option init too.
6511 * mf/GNUmakefile (local-install): oops.
6513 * lily/lyric-hyphen.cc (print): oops.
6515 * buildscripts/pfx2ttf.fontforge: new file.
6517 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6518 ($(outdir)/%.ttf): new rule.
6520 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6523 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6526 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6528 * VERSION: release 2.7.26
6530 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6532 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6534 * lily/font-config.cc (init_fontconfig): verbosity.
6536 * THANKS: add Muziekacademie Lede.
6538 * scripts/musicxml2ly.py (print_voice_definitions): new function
6539 (print_score_setup): new function
6540 (convert): read part definition to output staves properly.
6542 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6545 * python/musicexp.py (Output_printer.__init__): use _ in data
6547 (Output_printer.unformatted_output): new function: no formatting,
6549 (Duration.get_length): remove isinstance() checks for
6550 Output_printer everywhere.
6552 * input/regression/lyrics-bar.ly (texidoc): add
6553 Separating_line_group_engraver.
6555 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6557 * lily/relocate.cc (framework_relocation): New function,
6558 factored from set_relocation ().
6559 (prefix_relocation): Rename from set_relocation ().
6560 (setup_paths): Use it.
6562 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6564 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6565 numbers. Patch by Erlend Aasland.
6567 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6569 * lily/font-config.cc (init_fontconfig): print warning if cache
6570 file is not existant.
6572 * lily/main.cc: don't use #ifdef but #if
6574 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6576 * lily/grob-property.cc (internal_set_property): don't abort on
6577 calculation-in-progress.
6579 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6581 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6582 connect-to-neighbor property not connect-to-other
6584 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6585 (LY_DEFINE): oops. don't forget protection.
6587 * flower/parse-afm.cc (Module): strip AFM handling completely.
6589 * lily/stencil-expression.cc: idem.
6591 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6593 * lily/function-documentation.cc (ly_add_function_documentation):
6594 use static member iso. Protected_scm
6596 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6598 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6600 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6602 * lily/relocate.cc (set_env_dir): New function.
6603 (set_relocation): Use it to fix setting PANGO_PREFIX.
6605 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6607 * input/regression/stem-direction-context.ly: remove rest.
6609 * lily/melody-engraver.cc (process_music): restart for bar lines.
6610 (acknowledge_slur): restart for slurs.
6612 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6614 * Documentation/user/invoking.itely: describe how to view SVG
6615 output using Inkscape which replace embedded fonts with OTF fonts.
6617 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6619 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6621 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6623 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6626 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6628 * VERSION (PACKAGE_NAME): release 2.7.25
6630 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6632 * input/regression/stem-direction-context.ly: new file.
6634 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6636 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6639 * ly/engraver-init.ly: add Melody_engraver
6641 * lily/beam.cc (calc_direction): use default-direction
6642 iso. get_default_direction()
6644 * scm/define-grob-properties.scm (all-user-grob-properties): add
6645 default-direction property.
6647 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6649 * lily/stem.cc (calc_default_direction): remove
6650 Stem::get_default_direction, use default-direction with callback
6653 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6655 * lily/melody-engraver.cc: new file. Acknowledge stems for
6656 interpolated stem directions.
6658 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6660 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6662 * lily/slur-configuration.cc (fit_factor): more robust check for
6663 point in curve X-extent.
6665 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6666 (outside_slur_callback): check for 'outside avoidance.
6668 * lily/slur-configuration.cc (score_extra_encompass): don't use
6669 bound->column() == avoid->column() for checking extents, as this
6670 doesn't work for accidentals.
6672 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6673 DynamicText hardcoding.
6675 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6676 crash if bound stem is NULL
6678 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6681 2005-12-22 Graham Percival <gpermus@gmail.com>
6683 * scm/define-markup-commands.scm: typo. @code{\raise}
6686 * darwin.patch: now used again, includes a
6687 required patch from fink.
6689 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6691 * po/TODO: mention gtranslator along with kbabel.
6692 * po/fi.po: update translations.
6694 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6696 * lily/relocate.cc (setup_paths): Bugfix.
6698 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6700 * lily/slur-configuration.cc (score_extra_encompass): don't use
6701 "avoid" choice for avoid-slur.
6703 * stepmake/bin/install.py (dest): don't create existing dir.
6705 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6707 * stepmake/bin/install.py: Remove file before copying.
6710 * stepmake/aclocal.m4: Do not substitute INSTALL.
6712 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6714 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6715 depend on link-tree.
6717 * lily/relocate.cc (setup_paths): only check path for non-absolute
6718 dir without directory part.
6720 * flower/file-name.cc (is_absolute): new method.
6721 (is_absolute): check root_ too.
6723 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6725 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6726 relocation code. Oops, don't comment out too much.
6728 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6731 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6734 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6736 * .cvsignore: Add install-sh.
6738 * autogen.sh (srcdir): Typo.
6740 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6742 * autogen.sh (srcdir): urg. Touch install-sh.
6744 * stepmake/bin/install-sh (Module): remove.
6746 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6748 * lily/include/relocate.hh: new file.
6750 * lily/relocate.cc: new file. Contain relocation logic.
6752 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6753 (main): read LILYPOND_VERBOSE as the first thing.
6755 * stepmake/aclocal.m4: remove INSTALL variable.
6757 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6758 separate target for making font symlinks.
6759 (documentation-dir): use $(if $(findstring )) for switching off
6762 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6763 something if DOCUMENTATION is no.
6765 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6767 * VERSION: release 2.7.24
6769 * lily/script-column-engraver.cc (stop_translation_timestep):
6770 delay adding to script-column.
6772 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6774 * python/convertrules.py (conv): rule for number-visibility
6776 * lily/slur-configuration.cc (score_extra_encompass): different
6777 distance measure for avoid and inside avoidance.
6778 (score_extra_encompass): use 1/(distance+eps) as penalty.
6780 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6781 encompass objects for generating slur curves.
6783 * lily/slur.cc: use details iso. slur-details property.
6785 * input/regression/slur-tuplet.ly: new file.
6787 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6789 * flower/include/offset.hh (class Offset): new operator /=
6791 * lily/tuplet-number.cc (print): new file, new interface.
6793 * scm/define-grob-properties.scm (all-user-grob-properties):
6794 remove number-visibility property.
6796 * lily/tuplet-bracket.cc (calc_control_points): new function
6797 (calc_connect_to_neighbors): new function.
6798 (print): remove text handling for tuplet numberdef.
6800 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6803 * lily/lily-guile.cc (robust_scm2booldrul): new function
6805 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6807 * lily/tuplet-bracket.cc (calc_position_and_height): use
6808 staff-padding to control whether tuplet brackets are over staves.
6810 * lily/grob.cc (suicide): clear dim_caches_.
6812 * lily/dimension-cache.cc (clear): new function.
6814 * lily/grob.cc (extent): swap order of min-extent and extent
6815 calculations. This fixes hara kiri staves.
6817 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6819 * lily/main.cc: Nitpick: relocation is not based on path, but on
6820 directory (location).
6822 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6824 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6826 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6828 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6830 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6832 * stepmake/stepmake/generic-vars.make (Module): idem.
6834 * stepmake/stepmake/executable-targets.make (default): use it.
6836 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6838 * make/GNUmakefile: don't install make rules.
6840 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6842 (prepend_env_path): more verbosity.
6844 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6846 * GNUmakefile.in: add dir argument for find command.
6848 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6849 fixes weird line numbers for point & click.
6851 * lily/source-file.cc (get_counts): init line/column/char counts.
6853 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6855 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6857 2005-12-16 Graham Percival <gpermus@gmail.com>
6859 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6860 minor fixes from Fredric. Thanks!
6862 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6864 * ly/music-functions-init.ly: add \bar and \clef music function
6866 * lily/lily-lexer.cc: idem.
6868 * lily/parser.yy (FIXME): remove BAR and CLEF.
6870 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6872 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6874 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6875 function arguments too
6877 * lily/main.cc (set_relocation): new function.
6879 * scripts/musicxml2ly.py (convert): add \version
6881 * lily/tie.cc: remove get_default_attachments()
6883 * VERSION (PACKAGE_NAME): release 2.7.23
6885 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6886 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6888 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6890 * lily/tie-formatting-problem.cc (score_ties): new function
6891 (get_variations): new function. Try flipping dirs for collisions.
6892 (generate_optimal_chord_configuration): new function. 1-opt search
6893 for better configuration.
6895 * lily/tie-configuration.cc: new file.
6897 * lily/tie.cc: junk Tie::get_configuration()
6899 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6900 (score_ties_configuration): new function.
6901 (generate_ties_configuration): new function.
6902 (generate_base_chord_configuration): new function.
6903 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6904 (set_manual_tie_configuration): Move body from tie-column-format.cc
6906 * input/regression/tie-dot.ly: new file.
6908 * lily/tie-formatting-problem.cc (score_configuration): score
6911 * lily/tie-helper.cc (get_transformed_bezier): new function
6913 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6915 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6916 -undefined suppress iso. -framework Python
6918 * scm/define-grobs.scm (all-grob-descriptions): set
6919 springs-and-rods (thanks Joe Neeman!)
6921 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6923 * input/no-notation/display-lily-tests.ly (test):
6924 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6925 changed from \tag #'(a b) to \tag #'a \tag #'b
6927 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6929 * Documentation/topdocs/NEWS.tely: strip out-www.
6931 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6933 * config.make.in (AR): add AR and RANLIB
6935 * flower/libc-extension.cc: include cassert
6937 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6940 2005-12-11 Graham Percival <gpermus@gmail.com>
6942 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6944 * stepmake/stepmake/python-modules-vars.make: define
6945 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6947 * THANKS: added Johannes Schindelin.
6949 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6951 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6953 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6954 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6956 * lily/parser.yy: reorganize file layout.
6958 * ly/music-functions-init.ly: add tweak music function.
6960 * lily/grob-info.cc (ultimate_music_cause): new function:
6961 recursively lookup causes.
6963 * lily/parser.yy (chord_body_element): allow music functions for
6964 post-events, allow music functions for chord elements.
6966 * lily/font-config-scheme.cc (display_fontset): add cast.
6968 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6969 #'(a b) -> \tag #'a \tag #'b rule.
6971 * python/musicexp.py (Output_printer.dump_version): new function
6973 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6975 * lily/parser.yy (FIXME): remove \tag
6976 (FIXME): remove tag_music() function.
6978 * lily/lily-lexer.cc: remove \tag
6980 * ly/music-functions-init.ly: define music-function "tag"
6982 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6984 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6986 * VERSION (PATCH_LEVEL): release 2.7.22
6988 * input/regression/lyric-hyphen-retain.ly: renew.
6990 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6993 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6994 iso. minimum-length property for rods.
6996 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6997 LyricSpace item to keep lyrics spaced apart.
6999 * ly/engraver-init.ly: remove Separating_line_group_engraver
7001 * Documentation/user/music-glossary.tely: do setfilename before
7004 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7006 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7007 See xref documentation, for example.
7009 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7011 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7012 pending_skip iso. ly_voice[-1]
7013 (main): add if __main__ for debugging.
7015 * python/musicxml.py (Accidental.__init__): new class.
7017 * scripts/musicxml2ly.py (progress): new function
7018 (musicxml_key_to_lily): don't barf on modeless keys.
7019 (create_skip_music): new function.
7020 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7021 (musicxml_note_to_lily_main_event): new function.
7023 * python/musicexp.py (Music.__init__): add comment field.
7024 (NestedMusic.append): new routine.
7025 (SequentialMusic.print_ly): print comment.
7026 (ArpeggioEvent.ly_expression): new class
7027 (BeamEvent.ly_expression): new class
7028 (NoteEvent.__init__): support for cautionary/forced accs.
7030 * lily/lookup.cc (slur): normal order for array loop.
7032 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7035 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7038 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7040 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7042 * scripts/lilypond-book.py: Introduce option
7043 --preserve-line-breaks, for usage with srcltx
7045 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7047 * scm/output-lib.scm (print-circled-text-callback): draw circle
7048 around text using make-circle-markup.
7050 * Documentation/user/*: strip out-www from file names.
7052 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7054 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7055 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7057 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7059 * Documentation/user/GNUmakefile: idem.
7061 * Documentation/user/macros.itexi: strip out-www
7063 * python/rational.py: python 2.3 compat.
7065 * VERSION (PATCH_LEVEL): release 2.7.21
7067 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7068 option formatting, lilypond style.
7070 * python/musicexp.py: grab from Ikebana: a library for composing
7071 ly music expressions.
7072 (Output_printer): class for advanced .ly printing.
7075 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7076 convert to pythonesque structure.
7078 * python/rational.py: PD rational number class.
7080 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7082 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7084 * lily/part-combine-iterator.cc: Minor bugfix
7086 * THANKS: Update bughunters
7088 2005-12-02 Werner Lemberg <wl@gnu.org>
7090 * mf/README: Document process for proper mf2pt1 conversion.
7092 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7095 * mf/feta-harmonica.mf: Removed. Unused.
7097 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7099 * scripts/lilypond-book.py (do_file): fix thinkos.
7101 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7103 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7104 ($(outdir)/parser.cc):
7105 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7107 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7109 * ly/titling-init.ly (tagline): it should be a space between
7110 "Music engraving by LilyPond" and the version number.
7112 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7114 * VERSION (PACKAGE_NAME): release 2.7.20
7116 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7118 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7120 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7122 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7124 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7126 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7128 * kpath-guile/: remove directory
7130 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7131 file. Encapsulate kpathsea using commandline tools.
7133 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7136 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7138 * Documentation/user/advanced-notation.itely (Setting automatic
7139 beam behavior): Correct a few typos. Thanks to David Bobroff.
7141 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7142 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7144 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7146 * scripts/*.py: gmane address for bugs.
7148 2005-11-28 Pal Benko <benkop@freestart.hu>
7150 * make/ly-rules.make: add -f switch to mv
7152 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7154 * lily/bar-line.cc: interpret it
7156 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7158 * configure.in (--disable-documentation): New switch.
7160 * GNUmakefile.in: Use it.
7162 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7164 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7166 * scripts/lilypond-book.py (do_file): search chunks for
7169 * GNUmakefile.in: add copy step in between so we can lose the
7170 out-www directories.
7172 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7174 * lily/pango-font.cc (pango_item_string_stencil): put
7175 geometry.width into glyph-string too.
7177 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7179 * scm/define-music-display-methods.scm (RevertProperty):
7180 (OverrideProperty): Use grob-property-path property, a list of
7181 symbols, instead of grob-property, which used to be a single
7183 (BassFigureEvent): a figure can be a plain number, not necessarily a
7186 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7188 * VERSION: release 2.7.19
7190 * lily/figured-bass-engraver.cc (process_music): check
7191 figuredBassCenterContinuations first.
7193 * scm/translation-functions.scm (format-bass-figure): make double
7196 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7199 * lily/system-start-delimiter-engraver.cc: move from
7200 Nested_system_start_delimiter_engraver, rename
7201 Nested_system_start_delimiter_engraver ->
7202 System_start_delimiter_engraver.
7204 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7205 bracket type from hierarchy.
7207 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7209 * lily/rest.cc (y_offset_callback): read staff-position.
7211 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7212 mark after-line-breaking-callback as internal.
7214 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7216 2005-11-25 Werner Lemberg <wl@gnu.org>
7218 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7220 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7222 * stepmake/bin/add-html-footer.py (do_file): add google
7224 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7225 staff if first_start_ is true.
7227 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7229 * scripts/midi2ly.py (split_track): add __repr__ members.
7230 (track_first_item): only return Item if not None. This fixes a
7231 problem when dumping a track that starts with an empty channel.
7233 * python/midi.c: doc module.
7235 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7237 * Documentation/user/global.itely (Creating MIDI files): Fix
7238 compilation problem.
7240 2005-11-22 Graham Percival <gpermus@gmail.com>
7242 * Documentation/user/basic-notation.itely: clarify dynamic
7245 * Documentation/user/advanced-notation.itely: add unicode
7246 escape control example, whatever that is. :)
7248 * Documentation/user/global.itely: added "removing dynamics
7251 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7253 * VERSION (PATCH_LEVEL): release 2.7.18
7255 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7256 System_start_delimiter_engraver by
7257 Nested_system_start_delimiter_engraver.
7259 * lily/nested-system-start-delimiter-engraver.cc (struct
7260 Bracket_nesting_node): new class.
7261 (struct Bracket_nesting_group): new class
7262 (struct Bracket_nesting_staff): new class.
7263 (process_music): create hierarchy of grobs. This allows separate
7264 tuning of different SSDs.
7266 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7267 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7269 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7271 * lily/side-position-interface.cc (aligned_side): multiply
7274 * lily/script-engraver.cc (make_script_from_event): allow setting
7277 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7279 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7281 * scm/define-grobs.scm (all-grob-descriptions): new grob
7282 NestedSystemStartDelimiter.
7284 * input/regression/system-start-heavy-bar.ly: new file.
7286 * lily/nested-system-start-delimiter-engraver.cc: new file.
7288 * lily/nested-system-start-delimiter.cc: new file.
7290 * input/regression/system-start-nesting.ly: new file.
7292 * scm/define-grobs.scm (all-grob-descriptions): use X side
7293 positioning for positioning braces for nested contexts.
7295 * lily/system-start-delimiter.cc (print): don't divide extent by
7297 (print): use style iso. glyph.
7298 (staff_bracket): translate glyph inside routine already.
7300 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7302 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7305 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7307 * scm/define-context-properties.scm
7308 (all-user-translation-properties): rename figuredBassFormatter
7309 from newFiguredBassFormatter.
7311 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7313 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7315 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7317 * lily/beam.cc (calc_beaming): new function.
7318 (calc_shorten): new function.
7320 * THANKS: add Edward Neeman.
7322 * input/regression/accidental-clef-change.ly: new file.
7324 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7326 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7328 * lily/clef-engraver.cc (inspect_clef_properties): reset
7329 localKeySignature for clef changes.
7331 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7333 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7334 add dummy definition that works in Linux and add information in
7335 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7337 * Documentation/user/changing-defaults.itely (Modifying context
7338 plug-ins): Add index for \with.
7340 * Documentation/user/music-glossary.tely (dal segno): Updated
7341 example to version >=2.6.
7343 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7345 * Documentation/user/instrument-notation.itely (Printing chord
7346 names): Reorder \chordmode and \repeat in one example.
7348 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7350 * VERSION: release 2.7.17
7352 * Documentation/topdocs/NEWS.tely (Top): add note about
7355 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7356 new function. Search region of 3 positions for best tie.
7357 (score_configuration): new function.
7358 (score_aptitude): new function.
7359 (generate_configuration): new function.
7360 (get_configuration): new function.
7361 (Tie_formatting_problem): new function
7363 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7365 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7367 * THANKS: add Eduardo Vieira & Ralph Little
7369 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7372 * lily/include/tie-formatting-problem.hh (class
7373 Tie_formatting_problem): add Tie_details to
7374 Tie_formatting_problem. Update calling conventions.
7376 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7379 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7381 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7383 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7384 scm/define-context-properties.scm: Maintenance bugfix: make
7385 ligature brackets work again by removing obsolete ligature
7386 primitive callback push/pop.
7388 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7389 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7392 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7394 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7395 used and do not call it a path.
7396 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7398 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7400 * lily/include/tie-formatting-problem.hh (class
7401 Tie_formatting_problem): new file.
7403 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7405 * Documentation/misc/ChangeLog-2.3: new file.
7407 * lily/audio-staff.cc (output): degarianize.
7409 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7411 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7412 Unset PYTHONOPTIMIZE. Fixes install if set.
7414 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7416 * python/convertrules.py (conv): add warning about drums.
7418 * make/stepmake.make: include toplevel-version.make after config.make.
7420 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7421 also allow python2.4
7423 * config.make.in (configure-srcdir): remove GXX GCC vars.
7425 * stepmake/aclocal.m4: don't do non-srcdir build with
7426 symlinks. Use inclusion, so the src directory name can be changed.
7428 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7430 * make/mutopia-vars.make:
7431 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7434 2005-11-13 Werner Lemberg <wl@gnu.org>
7436 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7437 but the affected path. This ensures that the (overlapping) outlines
7438 have the same direction, which is a necessary prerequisite for
7439 FontForge's algorithm to remove overlaps.
7442 * mf/feta-haak.mf: Formatting.
7443 (draw_bracket): Slightly modify outline to avoid an unnecessary
7445 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7446 them from the affected paths.
7448 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7450 * mf/README: remove xpm / accordion notes.
7452 * lily/tie-column-format.cc (set_chord_outline): add dots into
7453 skyline extents. This fixes tie formatting if the left head has dots.
7455 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7456 space inside the staff.
7457 (get_configuration): shift another position if necessary in case
7460 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7462 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7463 buildscript-dir iso. $(depth)/buildscripts.
7465 * tex/GNUmakefile (local-uninstall): remove
7466 music-drawing-routines.ps juggling.
7468 * stepmake/stepmake/install-targets.make (local-install-files):
7469 prepend src-dir to install targets.
7471 * lily/system-start-delimiter-engraver.cc
7472 (acknowledge_system_start_delimiter): use
7473 add_offset_callback(). This fixes translation of nested
7476 * lily/grob-closure.cc (add_offset_callback): only encaps in
7477 simple_closure if it's a procedure.
7479 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7482 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7483 remove-empty where pertinent.
7485 2005-11-12 Graham Percival <gpermus@gmail.com>
7487 * Documentation/user/instrument-notation.itely: added
7488 Cameron Horsburgh's multiple stanzas docs. Thanks!
7490 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7493 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7494 make picture in builddir, not srcdir.
7496 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7498 * VERSION: release 2.7.16
7500 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7503 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7505 * Documentation/user/examples.itely (Piano templates): Minor
7506 modification to the Piano centered lyrics example.
7508 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7510 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7513 * Documentation/user/point-and-click.itely: simplify p&c
7514 instruction: don't configure firefox. Put lilypond-invoke-editor
7515 in front of the browser.
7517 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7518 (run-browser): new function.
7520 * lily/parser.yy (Lily_lexer): recognize Book
7522 * lily/book.cc (clone): new function
7524 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7526 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7528 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7529 Maintenance bugfix: reduce number of font related warnings by
7530 updating naming conventions for glyph-name.
7532 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7534 * scm/define-grobs.scm (all-grob-descriptions): add
7535 rhythmic-grob-interface to TabNoteHead.
7537 * scm/layout-beam.scm (check-quant-callbacks): remove
7540 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7542 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7543 alignment of centered divisiones.
7545 * scm/scripts.scm (articulations): Maintenance bugfix:
7546 follow-into-staff -> quantize-position.
7548 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7549 plica head in porrectus deminutus.
7551 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7553 * make/lilypond.fedora.spec.in (Group): add %clean section.
7555 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7556 less then 1/5th of total length.
7557 (print): use gap too. Fixes tupletUp-single-bracket.ly
7559 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7560 events into EventChord. This fixes textspanners on mm rests. Fixes
7563 * lily/side-position-interface.cc (get_axis): read side-axis
7564 (set_axis): set side-axis.
7566 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7567 properties everywhere.
7569 * lily/spacing-spanner.cc (breakable_column_spacing): add
7570 average-spacing-wishes. Take maximum if not set.
7571 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7573 * scm/define-grobs.scm (all-grob-descriptions): add
7574 average-spacing-wishes.
7576 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7577 offset callbacks. This fixes alignment for Fingering objects.
7579 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7580 space for key - timesig combination.
7582 * input/regression/script-stem-tremolo.ly (Module): new file.
7584 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7587 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7588 Fixes: c-tremolo-script.ly.
7590 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7592 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7594 * scm/define-grobs.scm (all-grob-descriptions): remove
7595 self-X-offset. Fixes alignment of octavate-8.
7597 * scripts/lilypond-book.py (datadir): look in
7598 LILYPONDPREFIX/share/lilypond/current/
7600 * GNUmakefile.in: symlink current to <VERSION>.
7602 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7604 * lily/main.cc: eps listed as a backend.
7606 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7608 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7610 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7612 * lily/include/score.hh (class Score): remove texts_ member.
7614 * lily/beam.cc (set_stem_lengths): force direction callback.
7615 (print): read quantized-positions, so we can force
7616 Beam::set_stem_lengths to occur.
7617 (rest_collision_callback): use common X parent.
7619 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7621 * flower/file-path.cc (find): Bugfix: Return name of file found.
7623 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7624 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7625 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7627 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7629 * flower/offset.cc: idem.
7631 * mf/*.mf: update email address.
7633 * lily/font-config-scheme.cc: new file.
7635 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7637 * lily/*: cs.uu.nl -> xs4all.nl
7639 * VERSION (PATCH_LEVEL): release 2.7.15
7641 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7644 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7646 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7648 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7650 * lily/staff-performer.cc (process_music): add audio
7651 elements. This makes MIDI instrument changes work once again.
7653 * lily/main.cc (LY_DEFINE): add gmane address.
7655 * lily/beam.cc: remove calc_positions()
7657 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7658 original_ in private scope.
7659 (class Grob): drop pscore_ pointer, change to output_def pointer.
7660 (class Grob): cleanup class definition.
7662 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7664 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7666 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7667 absolute. Better diagnostics.
7669 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7670 This makes lilypond run from the build directory using argv0
7671 relocation (without any --prefix or LILYPONDPREFIX setting).
7673 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7675 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7677 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7678 with simple-closure.
7680 * lily/self-aligment-interface.cc (set_align_self): new function
7681 (set_center_parent): new function.
7683 * lily/side-position-interface.cc (set_axis): new function.
7685 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7688 * scm/define-grob-properties.scm (all-user-grob-properties):
7689 remove [XY]-offset-callbacks add [YX]-offset
7691 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7693 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7694 entry for time signatures after breathing signs. Bug report by
7697 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7699 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7700 not absolute, make it absolute using PATH.
7702 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7704 * python/midi.c (initmidi): Fix type for mingw.
7706 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7708 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7710 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7713 * stepmake/aclocal.m4: Support python cross compiling.
7715 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7718 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7720 * scm/output-lib.scm (chain-grob-member-functions): replace
7723 * lily/chained-callback.cc (Module): remove file.
7725 * lily/rest-collision.cc (force_shift_callback_rest): change to
7728 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7730 * lily/grob.cc (y_parent_positioning): remove axis argument from
7731 parent_positioning callbacks.
7732 (Grob): junk init code
7733 (get_offset): use generic property callbacks for
7734 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7735 (axis_parent_positioning): new function
7736 (axis_offset_symbol): new function
7737 (chain_offset_callback): new function
7738 (add_offset_callback): new function
7740 * lily/beam.cc (rest_collision_callback): change signature; this
7741 is now a chained callback.
7743 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7744 callback administration.
7746 * lily/simple-closure.cc: new file. Smob type that allows "grob
7749 (ly:make-simple-closure FUNC A B)
7751 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7754 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7757 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7759 * lily/rest.cc (polyphonic_offset_callback): remove.
7761 * lily/script-engraver.cc (try_music): remove bool* argument.
7763 * scm/script.scm (default-script-alist): set quantize-position
7766 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7768 * lily/side-position-interface.cc (aligned_side): move staff
7769 position quantization from
7770 Side_position_interface::quantised_position().
7771 (quantised_position): remove
7773 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7775 * input/regression/beam-quant-standard.ly: reindent, set
7776 debug-beam-quanting to #t.
7778 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7779 10000 if this is a "hard" concave beam.
7781 * lily/beam.cc (calc_least_squares_positions): change from
7782 calc_least_squares_dy
7783 (set_stem_lengths): this is now a chained callback.
7785 * lily/context-property.cc (execute_general_pushpop_property):
7786 bugfix override with procedure should have effect.
7788 * scm/define-grob-properties.scm (all-internal-grob-properties):
7789 remove position-callbacks.
7791 * scm/define-grobs.scm (all-grob-descriptions): use
7792 ly:make-callback-chain for positions property.
7794 * scm/layout-beam.scm (check-quant-callbacks): return list of
7797 * scm/lily.scm (type-p-name-alist): add callback-chain
7799 * lily/lily-guile.cc (type_check_assignment): type check failure
7800 is warning not message.
7802 * lily/grob-property.cc (try_callback): walk callback chain if
7805 * lily/chained-callback.cc: new file. new smob type.
7807 * lily/lily-guile.cc (procedure_arity): new function.
7809 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7811 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7813 2005-10-25 John Mandereau <john.mandereau@free.fr>
7815 * Documentation/user/instrument-notation.itely (Figured bass):
7816 describe new features
7818 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7820 * lily/beam.cc (calc_least_squares_dy): use property callback.
7822 * lily/beam-concave.cc (calc_concaveness): use property callback.
7824 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7826 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7830 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7832 * scm/layout-page-layout.scm (page-headfoot): annotate
7835 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7837 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7838 doesn't take y-space.
7840 * scm/paper.scm (paper-alist): fix A7 dimensions.
7842 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7844 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7845 src-wildcard, remove $(wildcard).
7847 * po/GNUmakefile (PO_FILES):
7848 * ps/GNUmakefile (PS_FILES):
7849 * tex/GNUmakefile (TEX_FILES):
7850 * cygwin/GNUmakefile (POSTINSTALLS):
7851 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7852 some wildcard calls.
7854 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7856 * THANKS: add Thomas Bushnell.
7858 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7860 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7861 (lilypond-main): Redirect to gui-main if 'gui is set.
7863 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7864 for alternative installations kludging s/share/lib/g
7867 * SConstruct (libdir_package_version): Define.
7869 * python/SConscript:
7870 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7873 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7875 * lily/main.cc: clarify --safe.
7877 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7879 * VERSION: release 2.7.14
7881 * Documentation/user/*.itely: remove minimumVerticalExtent.
7883 * scm/define-grobs.scm (all-grob-descriptions): remove
7884 RemoveEmptyVerticalGroup
7886 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7888 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7891 * python/convertrules.py (conv): add rules.
7893 * lily/grob.cc: remove is_empty()
7895 * lily/grob-property.cc: remove add_to_list_property().
7897 * scripts/convert-ly.py (datadir): add prefix switching hack to
7900 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7901 space-function tweak.
7903 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7905 * scm/define-grob-properties.scm (all-user-grob-properties):
7906 remove callback property.
7908 * lily/include/grob.hh (class Grob): remove property_callbacks_
7909 member. Properties of procedure type are assumed to be callbacks.
7911 * lily/ligature-engraver.cc (override_stencil_callback):
7912 rewrite. Use noteHeadLigaturePrimitive as source.
7914 * scm/define-grob-properties.scm (all-internal-grob-properties):
7915 remove ligature-primitive-callback
7917 * lily/include/dimension-cache.hh (class Dimension_cache): make
7918 class, with Grob as friend.
7920 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7921 has_extent_callback()
7923 * scm/translation-functions.scm (format-new-bass-figure): read
7924 figuredBassPlusDirection
7926 * scm/define-context-properties.scm
7927 (all-user-translation-properties): add figuredBassPlusDirection.
7929 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7931 * lily/align-interface.cc (set_ordered): new function.
7933 * lily/grob.cc (flush_extent_cache): rewrite.
7935 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7936 Interval pointer directly.
7938 * lily/main.cc (setup_paths): insert extra / .
7939 (setup_paths): junk cff entry.
7941 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7944 * lily/axis-group-engraver.cc (finalize): remove
7945 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7947 * lily/grob.cc (Grob): don't set extent from ctor.
7948 (extent): use property callbacks.
7950 * lily/axis-group-interface.cc: remove set_axes() function.
7952 * lily/grob-property.cc (del_property): new function.
7954 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7956 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7958 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7960 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7962 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7964 * mf/SConscript: Updates.
7966 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7968 * stepmake/stepmake/*:
7972 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7973 from any directory in build-dir. Cleanups.
7975 * make/srcdir.make.in: Remove.
7977 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7979 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7982 * lily/SConscript: Remove ttftools.
7984 * SConstruct: Resurrect.
7986 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7988 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7991 * lily/paper-book.cc (add_score_title): put Paper_score title into
7994 * scm/translation-functions.scm (format-new-bass-figure): also
7995 allow plus in combination with _
7997 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7999 * VERSION: 2.7.13 released.
8001 * lily/note-collision.cc (check_meshing_chords): don't wipe
8002 stencil, merely set transparent.
8004 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8005 (Top): document #'callbacks.
8006 (Top): document nested \override.
8008 * input/regression/figured-bass.ly: update for slash and pluses.
8010 * input/regression/figured-bass-continuation-forbid.ly (Module):
8013 * scm/translation-functions.scm (format-new-bass-figure): use
8014 slashed-digit if diminished is set.
8015 (format-new-bass-figure): add + if 'augmented is set.
8017 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8019 * input/test/piano-staff-distance.ly: remove file.
8021 * Documentation/user/advanced-notation.itely (Formatting cue
8022 notes): use length-fraction for making stems/beams smaller.
8024 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8027 * lily/new-figured-bass-engraver.cc: new property
8028 centerFiguredBassContinuations
8030 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8033 * lily/context-property.cc (execute_general_pushpop_property):
8036 * input/regression/override-nest.ly: new file.
8038 * python/convertrules.py (FatalConversionError.subber): conversion
8039 rule for #'callbacks
8041 * input/regression/override-nest.ly: new function.
8043 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8046 * lily/context-property.cc (lookup_nested_property): new function.
8047 (evict_from_alist): new function.
8048 (general_pushpop_property): new function.
8049 (execute_general_pushpop_property): rewrite. Support nested
8052 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8054 * lily/beam.cc: use length-fraction too.
8056 * scm/define-grob-properties.scm (all-user-grob-properties):
8057 remove property flag-width-function
8058 (all-user-grob-properties): remove space-function.
8060 * scm/layout-beam.scm: remove flag-width-function.
8062 * lily/beam.cc: remove flag-width-function
8064 * scm/layout-beam.scm: remove beam dir functions.
8066 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8068 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8069 for easier grace tweaks.
8071 * lily/beam.cc: remove dir-function.
8073 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8075 * lily/grob.cc: remove spacing-procedure.
8077 * lily/note-head.cc (calc_stem_attachment): new function.
8078 (internal_print): use callback to get glyph-name.
8080 * lily/grob-property.cc (get_interfaces): new function.
8082 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8084 * lily/stem.cc (calc_stem_end_position): new function.
8085 (calc_length): new function.
8086 document details for stem.
8087 remove Stem::get_direction()
8089 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8091 * lily/grob-property.cc (set_callback): new function.
8093 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8095 * lily/item-scheme.cc: new file.
8097 * lily/bar-line.cc (before_line_breaking): remove function.
8098 remove bar-size-procedure, break-glyph-function
8100 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8102 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8104 * lily/system-start-delimiter.cc (print): suicide from
8105 here. Remove after_line_breaking_callback.
8107 * lily/script-interface.cc (calc_direction): use callback for direction.
8109 * lily/side-position-interface.cc (aligned_side): don't use
8110 Side_position_interface::get_direction directly. Use callback.
8112 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8114 (get_print_stencil): rename from get_stencil: create stencil with
8115 transparency, color and cause.
8117 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8119 * python/convertrules.py (conv): insert temporary warning rule.
8121 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8123 * lily/grob-property.cc (try_callback): remove marker if applicable.
8125 * lily/grob.cc: elucidate doc about after/before-line-breaking
8127 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8129 * lily/stem.cc (height): idem.
8131 * lily/stem-tremolo.cc: idem.
8133 * lily/slur.cc (height): don't use get_uncached_stencil()
8135 * lily/rest.cc (y_offset_callback): use offset callback
8136 iso. after-line-breaking callback.
8138 * lily/grob.cc: change after/before-line-breaking-callback to
8139 after/before-line-breaking dummy properties.
8141 * lily/include/grob.hh: remove Grob_status.
8143 * scm/define-context-properties.scm
8144 (all-user-translation-properties): remove verticalAlignmentChildCallback
8146 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8147 (calc_direction): use callback
8148 (calc_positions): use callback.
8150 * lily/tie.cc (calc_direction): use callback. Only call parent
8151 positioning for more than one tie.
8153 * lily/tie-column.cc (calc_positioning_done): use callback
8155 * lily/slur-scoring.cc (calc_control_points): use callback
8157 * lily/slur.cc (calc_direction): use callback.
8159 * lily/note-collision.cc (force_shift_callback): remove.
8161 * lily/dot-column.cc (force_shift_callback): remove. Use
8162 other_axis_parent_positioning.
8164 * lily/grob.cc (other_axis_parent_positioning): new function.
8165 (same_axis_parent_positioning): new function
8167 * lily/align-interface.cc (alignment_callback): remove function.
8169 * lily/note-collision.cc (calc_positioning_done): use callback.
8171 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8172 (calc_direction): idem.
8173 remove print function.
8175 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8177 * lily/dot-column.cc (calc_positioning_done): use callback.
8179 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8181 * lily/beam.cc (calc_direction): use pseudo-property for beam
8183 (calc_positions): use callback
8185 * lily/align-interface.cc (calc_positioning_done): use
8186 callback. Fold fixed distance and normal alignment in one function.
8188 * lily/stem.cc (calc_stem_end_position): use callback.
8189 (calc_positioning_done): idem.
8190 (calc_direction): idem.
8191 (calc_stem_end_position): idem
8192 (calc_stem_info): idem.
8194 * lily/grob-property.cc (get_property_data): new function:
8195 (try_callback): new function.
8197 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8200 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8202 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8204 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8208 * lily/include/*.hh (Module): compile fixes.
8210 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8212 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8213 as an argument for char-syntax: use (char-syntax (or nil 0))
8214 instead of (char-syntax nil), thanks to Milan Zamazal.
8216 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8218 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8221 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8224 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8226 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8227 add class_name() method.
8229 * lily/music-scheme.cc: remove ly:music-name.
8231 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8233 * cygwin/postinstall-lilypond.sh: Remove cruft.
8235 * cygwin/postremove-lilypond.sh: Remove.
8237 * cygwin/GNUmakefile (default): Remove postremove rules.
8239 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8241 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8244 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8247 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8248 consider break index for broken spanner.
8250 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8251 characters from string before splitting.
8253 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8255 * scm/framework-ps.scm (output-preview-framework): use
8256 is-book-title to determine whether to chop off the booktitle.
8258 * lily/paper-book.cc (systems): init from book-title-properties
8259 (add_score_title): init score-title-properties.
8261 * ly/paper-defaults.ly: add {score,book}-title-properties.
8263 * scm/document-backend.scm (lookup-interface): error message if
8264 using unknown interface.
8266 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8269 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8271 (make_bracket): new function.
8273 * scm/lily.scm (define-scheme-options): add paper-size option.
8275 * ly/declarations-init.ly (laissezVibrer): get paper size from
8278 * scm/translation-functions.scm: use \fontsize for changing the
8281 * scm/define-grobs.scm (all-grob-descriptions): set
8282 between-length-limit to 1.0
8284 * lily/tie-helper.cc: add between_length_limit_ detail property.
8286 * mf/feta-bolletjes.mf: typos.
8288 * lily/note-head.cc (internal_print): don't shadow idx
8289 parameter. This fixes wrong attachment for do shape heads.
8291 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8293 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8295 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8297 * scm/layout-slur.scm: rename from slur.scm
8299 * scm/layout-page-layout.scm: rename from page-layout.scm
8301 * scm/layout-beam.scm: rename from beam.scm
8303 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8304 bass-figure-interface
8306 * lily/new-figured-bass-engraver.cc (process_music): add
8307 implicitBassFigures property.
8309 * scm/define-markup-commands.scm (pad-x): new markup.
8311 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8312 minimumVerticalExtent on FiguredBass context.
8314 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8315 case the continuation crosses a line break.
8317 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8319 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8320 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8321 absolute file name bug.
8323 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8325 * VERSION (PACKAGE_NAME): release 2.7.12
8327 * input/regression/figured-bass-continuation-center.ly: new file.
8329 * input/regression/beam-outside-beamlets.ly: new file.
8331 * lily/beam.cc (set_beaming): don't clip edges.
8332 (connect_beams): don't clip edges.
8334 * lily/beaming-info.cc (clip_edges): new function.
8336 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8338 * Documentation/user/instrument-notation.itely (Figured bass):
8339 demonstrate extenders, update seealso links.
8341 * scm/titling.scm (marked-up-headfoot): change tagline
8342 handling. tagline = ##f will blank the tagline as well.
8344 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8346 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8348 * lily/new-figured-bass-engraver.cc (struct
8349 New_figured_bass_engraver): add new_music_found_ member.
8351 * lily/lilypond-version.cc (Lilypond_version): deal with
8352 incorrectly formatted version strings.
8354 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8355 New_figured_bass_engraver by default.
8357 * lily/ttf.cc (print_trailer): only define glyph names when
8358 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8360 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8362 * lily/horizontal-bracket.cc (make_bracket): new function.
8364 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8365 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8366 BassFigureLine, BassFigureAlignment
8368 * lily/new-figured-bass-engraver.cc (process_music): new file.
8370 * lily/figured-bass-continuation.cc: new file.
8372 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8375 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8377 * scripts/lilypond-book.py: Bug fix, put the quote around the
8378 actual score for LaTeX documents.
8380 * scm/define-grobs.scm (all-grob-descriptions): Change
8381 collapse-height of the SystemStartBracket grob to 5.0,
8382 so the bracket disappears for single stave score lines (similarly
8383 to SystemStartBraces).
8385 * Documentation/user/advanced-notation.itely (Polymetric
8386 notation): Clarify the use of compressMusic.
8388 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8389 that the grace spacer note in other staves need the same duration
8390 and document the stroke-style property.
8392 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8394 * Documentation/user/global.itely (Vertical spacing): document
8395 alignment-extra-space and fixed-alignment-extra-space.
8397 * Documentation/topdocs/NEWS.tely (Top): add entry.
8399 * input/regression/alignment-vertical-spacing.ly: new file.
8401 * python/convertrules.py (conv): add rule.
8403 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8405 * lily/align-interface.cc (stretch_after_break): new
8406 function. Read fixed-alignment-extra-space property.
8407 (align_elements_to_extents): read alignment-extra-space property.
8409 * lily/lily-guile.cc (robust_scm2dir): new function.
8411 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8412 (annotate-space-left): new function. Annotate space left on page.
8413 (annotate-y-interval): new function.
8414 (paper-system-annotate-last): new function. Annotate bottom-space.
8416 * mf/feta-beugel.mf (y):
8418 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8420 * VERSION (PACKAGE_NAME): release 2.7.11
8422 * scm/lily-library.scm (interval-translate): new function
8423 (interval-center): new function.
8425 * scm/page-layout.scm (paper-system-annotate): new function. Add
8426 arrows for dimensions.
8428 * scm/stencil.scm (dimension-arrows): new function.
8430 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8432 * input/regression/page-spacing.ly: add annotatespacing
8434 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8435 (LY_DEFINE): new function ly:paper-system-set-property!
8437 * Documentation/user/global.itely (Paper size): explain how to add
8440 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8441 correspond to GS's definition.
8443 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8445 (print): only connect to next bracket if the next one is alive.
8446 (print): set padding to 0.0 if the bound is a breakable
8447 column. This makes tupletFullLength brackets reach up to the staff
8448 line if it doesn't connect to the next line.
8450 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8452 * lily/bar-number-engraver.cc: correct docs.
8454 * scm/output-lib.scm (first-bar-number-invisible): rename from
8455 default-bar-number-visibility
8457 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8459 * scm/define-music-properties.scm (all-music-properties): remove
8462 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8464 * po/fi.po: refresh.
8466 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8468 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8470 (disappear): bugfix.
8472 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8474 * lily/include/paper-system.hh (class Paper_system): remove
8475 staff_extents_ member.
8477 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8479 * lily/include/paper-system.hh (class Paper_system): remove
8480 number_ variable. Remove is_title_. Remove break_before_penalty_
8482 * lily/paper-book.cc (systems): use 'number property iso. number_
8485 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8486 remove ly:paper-system-number.
8488 * scm/lily-library.scm (paper-system-title?): new function.
8490 * lily/book.cc (process): bugfix: flip ?: cases.
8492 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8495 * ly/music-functions-init.ly: add outputProperty music function.
8497 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8499 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8501 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8503 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8505 * lily/paper-system.cc (internal_get_property): new function.
8507 * Documentation/user/global.itely (Vertical spacing): refer to
8510 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8513 * input/regression/page-spacing.ly: new file.
8515 * input/regression/page-top-space.ly: new file.
8517 * lily/spacing-spanner.cc: cmath -> math.h
8519 * lily/paper-system.cc (read_left_bound): new function. Read
8520 line-break-system-details from left bound to determine extents.
8522 * Documentation/user/programming-interface.itely (Using LilyPond
8523 syntax inside Scheme): change applyxxx -> applyXxx.
8525 * ly/music-functions-init.ly: add outputProperty music function.
8527 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8529 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8531 * python/convertrules.py (conv): rule
8533 * ly/music-functions-init.ly: applyxxx -> applyXxx
8535 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8538 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8540 * flower/include/real.hh: include <math.h> iso. <cmath>
8542 * flower/include/offset.hh: include real.hh
8544 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8546 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8547 fix example, now that 'interfaces is no longer directly available.
8549 * lily/book.cc (process): don't crash if paper == NULL.
8553 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8555 * scm/define-music-types.scm (music-descriptions): set length and
8556 start-callback for QuoteMusic
8558 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8560 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8561 arguments. Fixes compilation error with gcc 3.3.
8563 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8565 * VERSION: release 2.7.10
8567 * stepmake/stepmake/python-module-rules.make
8568 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8570 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8573 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8575 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8576 -Werror. Otherwise GCC barfs over various optimizations.
8578 * scm/define-grob-properties.scm (all-internal-grob-properties):
8579 add note-head property
8581 * Documentation/user/instrument-notation.itely (Laissez vibrer
8584 * input/regression/laissez-vibrer-ties.ly: new file.
8586 * lily/laissez-vibrer-engraver.cc: new file.
8588 * lily/include/tie-column-format.hh: new file.
8590 * lily/tie-column-format.cc: new file.
8592 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8594 * lily/laissez-vibrer-tie.cc: new file.
8596 * lily/include/laissez-vibrer-tie.hh: new file.
8598 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8600 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8602 * scm/define-grobs.scm (all-grob-descriptions): add
8603 LaissezVibrerTie, LaissezVibrerTieColumn
8605 * lily/tie-column.cc (set_tie_config_directions): new function
8606 (final_shape_adjustment): new function.
8607 (shift_small_ties): new function.
8609 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8611 * lily/include/tie.hh (struct Tie_details): add x_gap_
8612 (struct Tie_configuration): add head_position_
8614 * lily/tie-column.cc (set_chord_outline): new function.
8616 * mf/cmr.enc.in: remove file.
8618 2005-09-11 Graham Percival <gpermus@gmail.com>
8620 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8622 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8624 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8625 reduce aliasing effects.
8627 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8630 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8632 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8634 * flower/include/real.hh: std::fabs too.
8636 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8638 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8640 * lily, flower: Include C++ iso C headers. Import namespace std
8643 * lily/side-position-interface.cc:
8645 * lily/note-head.cc:
8646 * lily/include/includable-lexer.hh:
8647 * flower/include/string-data.icc: Remove using std::*.
8649 * lily, flower: Include C++ iso C headers. Import namespace std
8652 * lily/side-position-interface.cc:
8654 * lily/note-head.cc:
8655 * lily/include/includable-lexer.hh:
8656 * flower/include/string-data.icc: Remove using std::*.
8658 * Documentation/user/instrument-notation.itely (Entering lyrics):
8659 Multiple latin-1->utf-8 conversion fix.
8661 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8663 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8665 * lily/tie.cc (get_configuration): also avoid dots for non-space
8668 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8670 * Documentation/user/instrument-notation.itely: Bugfix.
8672 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8674 * tex/GNUmakefile: don't install texinfo.tex
8676 * tex/ : cleanup: remove unused files.
8678 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8680 * flower/include/real.hh: using std::{isnan,isinf}
8682 * VERSION (PATCH_LEVEL): release 2.7.9
8684 2005-09-05 Graham Percival <gpermus@gmail.com>
8686 * Documentation/user/ instrument-notation.itely,
8687 advanced-notation.itely: minor tweaks.
8689 * input/test/script-chart.ly: add item padding.
8691 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8693 * flower/offset.cc: use math.h iso. <cmath>
8695 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8698 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8699 (widen-left-stencil-edges): new function. Fix alignment problems
8700 with LaTeX includegraphics.
8702 * lily/text-interface.cc (interpret_markup): use abort().
8704 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8706 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8708 * lily/tie.cc (get_configuration): update bezier shape as we
8710 (get_configuration): don't move large ties if we're outside of the
8713 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8715 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8717 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8719 * .cvsignore: Add auto-generated configure files and then some.
8721 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8723 * scm/define-grobs.scm (DynamicLineSpanner): Add
8724 X-extent-callback. Fixes hairpin-slur collision.
8726 2005-08-31 Graham Percival <gpermus@gmail.com>
8728 * Documentation/user/advanced-notation.itely,
8729 basic-notation.itely: minor changes.
8731 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8733 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8734 \linebreak between each .eps file if \betweenLilyPondSystem is
8737 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8738 music): Document the \linebreak
8740 * Documentation/user/lilypond-book.itely,
8741 input/tutorial/lbook-latex-test.tex,
8742 Documentation/user/examples.itely: Remove \usepackage{graphics}
8744 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8746 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8748 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8751 * scripts/lilypond-book.py (PREAMBLE_LY): define
8752 inside-lilypond-book
8753 (modify_preamble): new function. Insert \RequirePackage{graphics}
8754 when no {graphics found in preamble.
8756 2005-08030 Graham Percival <gpermus@gmail.com>
8758 * Documentation/user/basic-notation.itely, global.itely,
8759 tutorial.itely: misc small changes.
8761 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8763 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8766 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8768 * lily/tie-column.cc (new_directions): put Tie down on center
8771 * lily/script-interface.cc (before_line_breaking): use
8772 Grob::programming_error
8774 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8776 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8779 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8781 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8783 2005-08-29 Werner Lemberg <wl@gnu.org>
8785 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8786 the `*.scale.pfa' files to avoid warnings.
8788 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8790 * lily/tempo-performer.cc (process_music): idem.
8792 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8794 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8796 * Documentation/user/advanced-notation.itely (Text markup): not a
8799 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8801 * lily/staff-performer.cc (initialize): add tempo/name to
8805 2005-08-26 Graham Percival <gpermus@gmail.com>
8807 * Documentation/user/advanced.itely: add text-only example.
8809 * Documentation/user/invoking.itely: add index entries for
8812 * Documentation/user/ tutorial.itely, basic-notation.itely:
8813 small fixes suggested by Steve D. Thanks!
8815 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8817 * input/regression/markup-bidi-pango.ly: new file.
8819 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8820 standard. Remove #ifdef. Remove memleak.
8821 (text_stencil): use text_dir to decide how to composite items.
8822 (text_stencil): determine uniform text direction for the entire
8825 * scripts/lilypond-book.py (output_name): remove
8826 latex_filter_cmd. Non-portable to non-Unix systems.
8827 (get_latex_textwidth): use File.write and os.unlink() instead.
8829 * THANKS: add Vicente & Trevor.
8831 * lily/grob.cc (discretionary_processing): look up origin for
8832 programming_error too.
8834 * input/regression/tie-broken.ly: new file.
8836 * lily/tie-column.cc (set_chord_outlines): set outline for line
8839 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8841 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8842 unscaled transform, just translate stencils.
8844 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8847 * scm/define-markup-commands.scm (wordwrap-string): use
8849 (wordwrap-stencils): idem.
8852 (wordwrap-stencils): translate last line to right for
8853 text-direction = LEFT.
8855 * scm/define-grob-properties.scm (all-user-grob-properties): add
8858 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8860 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8861 when copying a Lily_parser object.
8863 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8865 * scm/define-markup-commands.scm (null): add null markup.
8867 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8869 * lily/item.cc: Add documentation of center-invisible
8871 2005-08-24 Graham Percival <gpermus@gmail.com>
8873 * Documentation/user/advanced-notation.itely: add info about
8876 * Documentation/user/programming-interface.itely: fix example
8877 involving raised text.
8879 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8881 * lily/beam.cc (print): fix X start/end points of isolated
8884 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8886 * lily/multi-measure-rest.cc (set_text_rods): new function.
8888 * lily/vertical-align-engraver.cc (process_music): call
8889 Align_interface::set_axis(). This forces #'elements to be ordered,
8890 preventing random vertical reordering of staves.
8892 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8893 add avoid-slur property.
8895 * Documentation/user/basic-notation.itely (Measure repeats): add
8896 countPercentRepeats example.
8898 * Documentation/user/advanced-notation.itely (Other text markup
8899 issues): remove remark about normal-font. We have \normal-text
8901 * input/regression/tie-chord.ly: add note about remaining bugs.
8903 * lily/tie.cc (print): try Tie_column::set_directions () if
8904 control-points not yet defined.
8906 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8908 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8909 extent. This fixes braces falling out of the EPS bbox.
8911 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8914 2005-08-23 Graham Percival <gpermus@gmail.com>
8916 * {various} : change #up->#UP and #down->#DOWN.
8918 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8920 * Documentation/user/advanced-notation.itely: clarify
8921 what objects handles text on a multimeasure rest.
8923 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8925 * VERSION (PATCH_LEVEL): release 2.7.7
8927 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8929 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8931 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8933 * input/regression/*.ly: formatting clean-up. Default layout
8934 before music expression.
8936 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8937 romanze28-2 example.
8939 * scm/ps-to-png.scm: remove dir-re function.
8940 (make-ps-images): generate page names, instead of globbing them.
8941 This brings down LilyPond memory usage for make web by a factor
8944 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8945 don't use glob. With 3000 files, globbing
8946 Documentation/user/out-www/ can take too much time.
8948 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8950 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8952 * input/regression/tie-manual.ly: new file
8954 * input/regression/tie-chord.ly: update.
8956 * flower/include/interval.hh (struct Interval_t):
8958 * lily/tie.cc (distance): new function
8959 (height): new function.
8960 (init): new function
8961 (Tie_details): new struct.
8963 * lily/skyline.cc (skyline_height): new function.
8965 * lily/tie-column.cc (set_chord_outlines): new function.
8966 (new_directions): read tie-configuration
8968 * lily/skyline.cc: fix ASCII art.
8970 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8972 * python/convertrules.py (string_or_scheme): Fix spelling error
8974 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8976 * lily/tie-column.cc (set_directions): set directions only once.
8977 (add_configuration): new function.
8979 * lily/tie.cc (set_control_points): new function
8981 * lily/tie-column.cc (new_directions): new function.
8983 * ly/music-functions-init.ly: set 'pitch property
8984 iso. trill-pitch. This makes \relative work with \pitchedTrill
8986 * lily/tie.cc (get_configuration): new function. Don't generate
8987 control points, rather, generate configuration.
8988 remove head-pair property.
8990 * lily/include/tie.hh (struct Tie_configuration): new struct.
8992 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8994 * Documentation/topdocs/NEWS.tely: clarify.
8996 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8998 * lily/tie.cc: remove minimum-length
9000 * scm/define-grob-properties.scm (all-user-grob-properties):
9001 remove staffline-clearance, y-offset
9003 * input/regression/tie-dots.ly (Module): remove.
9005 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9006 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9008 * input/regression/tie-single.ly: new file.
9010 2005-08-21 Graham Percival <gpermus@gmail.com>
9012 * ly/bagpipe.ly: fix compile problem.
9014 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9016 * lily/midi-item.cc (name): new method.
9018 * lily/staff-performer.cc (acknowledge_audio_element): use
9019 signature of baseclass.
9021 * lily/engraver-group.cc (do_announces): move recursion call out
9024 * lily/drum-note-performer.cc (class Drum_note_performer): use
9025 process_music everywhere.
9027 * ly/performer-init.ly: add default children everywhere.
9029 * lily/paper-book.cc (output): call paper-book-write-midis
9030 directly: always write MIDI, even if no \layout {} block.
9032 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9034 * VERSION (PACKAGE_NAME): release 2.7.6
9036 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9037 about not being able to handle repeat.
9039 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9041 * Documentation/user/examples.itely (Piano templates):
9042 * lily/include/performer-group.hh: Remove last traces of
9043 Performer_group_performer. Fixes make web.
9045 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9047 * Documentation/user/examples.itely (Piano templates): change
9048 Engraver_group_engraver -> Engraver_group
9050 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9051 scm_stand_in_procs is not weak_any.
9053 * lily/volta-bracket.cc (print): don't use strcmp().
9055 * lily/volta-engraver.cc (process_music): use
9056 Text_interface::is_markup() for setting the 'text property of the
9059 * input/mutopia/claop.py (accents): update syntax to 2.6
9061 * scm/define-context-properties.scm
9062 (all-user-translation-properties): add countPercentRepeats.
9064 * Documentation/user/basic-notation.itely (Measure repeats): add
9065 isolated percent example.
9067 2005-08-18 Graham Percival <gpermus@gmail.com>
9069 * input/ {various}: change direction #1, #-1 to
9070 #up/#down or \fooUp, \fooDown.
9072 * Documentation/user/music-glossary.tely: #-1 to #down.
9074 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9075 to #up, #-1 to #down.
9077 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9079 * lily/include/engraver-group.hh: rename.
9081 * lily/include/performer-group.hh: rename.
9083 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9085 * input/test/script-abbreviations.ly: Removed some old LaTeX
9088 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9090 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9091 Remove functions. Remove if 1: constructs, reindent.
9093 * scripts/convert-ly.py (add_version): Add functions from
9096 * scm/script.scm (default-script-alist):
9097 s/priority/script-priority. Fixes script stacking. Backportme.
9098 (Fermata): Very low priority.
9100 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9102 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9104 * input/regression/slur-script.ly: remove padding tweaks. Add
9107 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9108 time sigs and related stuff.
9110 * scm/define-grob-properties.scm (all-user-grob-properties): add