1 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * po/de.po: new po courtesy translation team.
5 * scripts/lilypond-book.py (get_option_parser): add newline to doc string.
7 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
9 * ly/gregorian-init.ly (neumeDemoLayout): update
10 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
12 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
13 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
15 2006-10-27 Erlend Aasland <erlenda@gmail.com>
17 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
18 Yet another build fix.
20 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
22 * SConstruct (lilypondprefix): use sorted() for list_sort()
25 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
27 * flower/SConscript: Unit test rules.
29 * flower/test-std.cc: Compile fix.
31 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
33 * python/midi.c (pymidi_parse_track): warning fixes.
35 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
38 2006-10-26 Graham Percival <gpermus@gmail.com>
40 * Documentation/user/ {basic-, global}: minor changes from mailist.
42 2006-10-26 Erlend Aasland <erlenda@gmail.com>
44 * scm/define-grobs.scm: trivial beautification
46 * lily/tie-performer.cc: no need to #include "pqueue.hh"
48 * lily/source-file.cc: put multibyte var inside #if clause
50 * scm/define-grob-interfaces.scm:
51 * scm/define-grob-properties.scm:
52 Build fix (string-fret-finger-combinations)
54 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
57 * Documentation/user/lilypond-book.itely: Build fix.
59 2006-10-26 Joe Neeman <joeneeman@gmail.com>
61 * lily/system.cc (get_paper_system):
62 * lily/paper-book.cc (systems):
63 move most of the backwards compatibility stuff into
66 * Documentation/topdocs/NEWS.tely: add 2 entries for the
69 * Documentation/user/page.itely: remove time-scaled-music
70 bug for the Page_turn_engraver
72 * lily/paper-book.cc (set_system_penalty): backwards
73 compatibility (breakbefore) for the old page breaker
75 2006-10-25 Graham Percival <gpermus@gmail.com>
77 * Diocumentation/user/instrument-notation.itely: added more
78 info about stanzas; thanks Geoff!
80 * Documentation/user/ {basic, advanced}: small fixes from
83 * THANKS: add some bug reporters.
85 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
87 * scm/define-context-properties.scm (all-user-translation-properties):
88 noteToFretFunction: Add.
90 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
91 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
93 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
95 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
98 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
99 Remove bashism in delete.
101 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
103 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
105 * scm/translation-functions.scm (determine-frets-mf): flatten let*
107 * scm/define-context-properties.scm
108 (all-user-translation-properties): add maximumFretStretch property.
110 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
112 * lily/source-file.cc (get_counts): use multibyte variable.
114 * scm/translation-functions.scm (determine-frets-mf): new
115 function: compute fret numbers.
117 * scm/output-lib.scm (string-frets->description) new function.
118 (fret-board::calc-stencil): new function
120 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
122 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
124 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
126 * lily/tab-note-heads-engraver.cc: cleanups.
128 * lily/fretboard-engraver.cc: new file
130 * ly/engraver-init.ly: add FretBoards context
132 2006-10-24 Joe Neeman <joeneeman@gmail.com>
134 * lily/grob.cc (pure_relative_y_coordinate)
135 (pure_height): use the new call_pure_function stuff
137 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
140 * lily/side-position-interface.cc (pure_y_aligned_side): add an
143 * lily/simple-closure.cc (ly_eval_simple_closure): make
144 simple-closure evaluatable from scheme
145 (evaluate_with_simple_closure): make simple-closures pure-
148 * lily/slur.cc (pure_outside_slur_callback): new function
150 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
151 fits in with previous changes that made the page forces much
154 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
155 and pure-Y-extent into this new function.
156 (pure-conversions-alist): add outside-slur-callback
158 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
160 * Documentation/user/advanced-notation.itely (Instrument names):
161 Remove obsolete bug workaround for instrument names on piano
164 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
166 * Documentation/user/lilypond-book.itely (Integrating DocBook and
167 music): patch by Bertalan Fodor for docbook.
169 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
170 of $(LILYPOND). Prevents lilypond run for .txt files.
172 * INSTALL.txt: gitness.
174 * .cvsignore: update to force gitness.
176 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
178 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
179 detect suicide in nested tuplets.
181 2006-10-23 Werner Lemberg <wl@gnu.org>
183 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
184 typo in argument to FT_Get_X11_Font_Format.
186 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
188 * stepmake/stepmake/po-vars.make: more gitness.
190 * flower/polynomial.cc (check_sol): no empty if bodies.
192 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
194 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
196 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
198 * Documentation/user/examples.itely (Transcription of mensural
199 music): Added more comments in .ly source. Suggest to remove
200 Forbid_line_break_engraver to allow line breaking at all bars.
202 * Documentation/user/instrument-notation.itely (Ancient
203 articulations): Updated @refbugs regarding episem.
205 * Documentation/user/instrument-notation.itely (Gregorian square
206 neumes ligatures): Added \augmentum dots. Updated @refbugs
207 regarding \augmentum.
209 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
211 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
214 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
217 * ly/gregorian-init.ly: Added \augmentum macro.
219 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
221 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
223 * lily/pango-font.cc (pango_item_string_stencil): use
224 FT_Get_X11_Font_Format()
226 2006-10-22 John Mandereau <john.mandereau@free.fr>
228 * po/fr.po: update translation.
230 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
232 * VERSION (PATCH_LEVEL): bump version
234 * input/regression/horizontal-bracket-break.ly: new file.
236 * scm/define-grobs.scm (all-grob-descriptions): calc
239 * lily/horizontal-bracket.cc (make_bracket): support
240 connect-to-neighbor. Fix #118
242 * VERSION: release 2.9.26-2
244 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
246 * VERSION (PACKAGE_NAME): release 2.9.26
248 * buildscripts/output-distance.py (test_basic_compare): add
250 (FileLink.multi_img_cell): new function, glob multi-page png
253 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
255 * po/lilypond.pot: update.
257 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
259 * Documentation/user/global.itely (File structure): remove
262 * lily/parser.yy (FIXME): remove ADDQUOTE
264 * Documentation/user/global.itely (Extracting fragments of
265 notation): new node, about clip systems.
267 * Documentation/user/lilypond-book.itely (Many quotes of a large
268 score): ref to clip systems.
270 * Documentation/user/instrument-notation.itely (Entering lyrics):
271 add note about lyric ties and required font.
273 * lily/open-type-font.cc (glyph_list): format errors.
275 * Documentation/user/programming-interface.itely (Scheme
276 procedures as properties): more doco on simple-closure and scheme
278 (Input variables and Scheme): use lilypond[verbatim], document
281 * Documentation/user/page.itely (Displaying spacing): use \book
282 explicitly, so arrows show .
283 (Line breaking): add note about Forbid_line_break_engraver
285 * Documentation/user/tweaks.itely (Common tweaks): also set length
286 to prevent tie squeezing.
287 (Default files): use @var{}
289 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
290 (Generating LilyPond files): add FOMUS.
292 2006-10-20 Joe Neeman <joeneeman@gmail.com>
294 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
295 Y-offset for TextScript and Script
297 * lily/text-engraver.cc (make_item):
298 * lily/script-engraver.cc (make_script_from_event):
299 remove call to Side_position_interface::set_axis since all scripts
300 now have this set by default
303 * lily/prob.cc: use variables
305 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
307 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
308 at typography, rather analyse stream event duration.
310 * Documentation/user/page.itely (Page formatting): set a6 paper
311 for system separator example.
313 * lily/arpeggio.cc (Module): idem.
315 * lily/accidental-placement.cc: add script-priority property.
317 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
319 * lily/ttf.cc (print_trailer): if all else fails: use
320 glyphIndexXXXX as glyph name. Fixes #117.
322 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
323 entry if cmap contains glyph.
324 (get_index_to_charcode_map): remove from Pango_font class, use
325 global filename -> font mapping.
326 (get_glyph_index_name): new function.
327 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
330 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
332 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
335 * scm/define-grob-properties.scm (all-user-grob-properties):
336 remove outdated doc. Fixes #116
338 * lily/completion-note-heads-engraver.cc (process_music): always
339 clone input events; otherwise we may overwrite input 'duration
340 property. Fixes #115.
342 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
345 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
348 * VERSION (PATCH_LEVEL): bump version.
350 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
352 * lily/engraver.cc (internal_make_grob): use variables.
354 * flower/string-convert.cc (dec2double): clean-up warnings.
356 * configure.in (CXXFLAGS): add -Werror.
358 * VERSION (PACKAGE_NAME): release 2.9.25
360 2006-10-18 Joe Neeman <joeneeman@gmail.com>
362 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
363 line even if we precede a forced break.
365 * lily/optimal-page-breaking.cc (try_page_spacing): square line
366 forces too. Make page-spacing weight default to 10 because the
367 changes to vertical springs decreased the page force/line force
368 proportions. Also, take the average of line force and page force
369 instead of just the sum.
371 * lily/constrained-breaking.cc (initialize): make the stiffness
372 of the vertical springs depend on the height of the system. This
373 prevents pages with only a few large systems from getting huge
376 * Documentation/user/page.itely (Page formatting): document the
377 change in default page-spacing-weight
379 * lily/include/constrained-breaking.hh: initialise bottom_padding_
381 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
383 * input/typography-demo.ly (melody): remove superfluous slur.
385 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
386 add piano-pedal-script-interface
388 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
390 * scripts/lilypond-book.py: DocBook support.
392 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
394 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
396 (stop_translation_timestep): set bound to currentMusicalColumn if
397 not set yet. Fixes #102
399 * lily/piano-pedal-bracket.cc: formatting.
401 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
403 * lily/piano-pedal-align-engraver.cc: new class
404 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
407 2006-10-18 Heikki Junes <hjunes@gmail.com>
409 * po/fi.po: Update Finnish translation (before the next release).
411 2006-10-17 Joe Neeman <joeneeman@gmail.com>
413 * lily/system.cc (get_paper_system): reinstate the backwards-
414 compatible page breaking for the old page breaker.
416 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
418 * lily/recording-group-engraver.cc: removed
420 * lily/context.cc, lily/translator-group.cc: Don't touch
421 Context::implementation_ if it's null
423 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
425 * scm/paper.scm: only use left-margin if defined.
427 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
429 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
431 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
432 strokeFingerOrientations
434 * lily/script-column.cc (row_before_line_breaking): also handle
435 accidentals and arpeggios in horizontal script stacking.
437 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
440 * input/regression/script-stack-horizontal.ly: trim.
442 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
444 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
447 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
448 'text if string argument.
450 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
452 * scm/define-context-properties.scm
453 (all-user-translation-properties): change to strokeFingerOrientations
455 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
457 * lily/parser.yy: remove debug output
459 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
461 * ly/paper-defaults.ly: set left/right margin.
463 * scm/paper.scm (set-paper-dimensions): use left-margin and
464 right-margin for computing linewidth.
466 * Documentation/topdocs/NEWS.tely (Top): idem.
468 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
471 * scm/define-markup-commands.scm (tied-lyric): increase negative
472 space: space syllables tighter.
474 * VERSION (PATCH_LEVEL): bump version.
476 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
479 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
481 * COPYING: further clarification
483 * VERSION: release 2.9.24
485 * input/regression/script-stack-horizontal.ly: add version.
487 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
489 * input/regression/lyric-tie.ly (texidoc): use different words.
491 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
493 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
495 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
496 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
498 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
500 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
502 * Doxyfile: remove file.
504 * scm/define-grob-interfaces.scm (string-finger-interface): add
505 string-finger-interface
507 * lily/general-scheme.cc (LY_DEFINE): move
508 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
510 * Documentation/topdocs/NEWS.tely (Top): add note for
511 string-finger feature.
513 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
516 * scm/output-lib.scm (string-finger::calc-text): read 'digit
519 * input/regression/script-stack-horizontal.ly: new file.
521 * ly/engraver-init.ly: add Script_row_engraver.
523 * lily/script-column.cc (order_grobs): refactor: separate axis
525 (row_before_line_breaking): new function.
527 * lily/script-row-engraver.cc (Script_row_engraver): new file.
529 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
531 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
533 * Documentation/user/instrument-notation.itely: Cleanup: Remove
534 annoying skip notes from mensural ligature example. Update
535 @refbugs for ligatures and mensural ligatures.
537 * lily/coherent-ligature-engraver.cc,
538 lily/include/coherent-ligature-engraver.hh,
539 lily/mensural-ligature-engraver.cc,
540 lily/vaticana-ligature-engraver.cc: Revise code for item
541 reparentizing. There should now be less programming_error
544 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
546 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
547 Maintenance bugfix: Don't create empty Stencil (), but empty box
548 instead. This fix should eliminate some programming_error
551 * ly/engraver-init.ly (MensuralStaff): Set default accidental
554 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
555 \layout block _before_ score.
557 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
559 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
561 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
563 2006-10-13 Erlend Aasland <erlenda@gmail.com>
565 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
567 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
569 * VERSION (PATCH_LEVEL): bump version.
571 * COPYING: clarify exception note.
573 * lily/main.cc: remove remark about "COPYING".
575 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
576 system-count starts at 0 for each clip-region. Change name to
577 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
578 layout block, per score.
580 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
582 * lily/input-smob.cc: add equal_p for Input
584 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
587 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
589 * lily/prob.cc: Add equal_p predicate for Prob
591 * lily/translator.cc: small cleanup
593 * scm/document-music.cc: use data from translator listener
594 registration to generate documentation for event classes
596 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
598 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
600 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
602 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
604 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
606 * Documentation/topdocs/INSTALL.texi: Thinko.
608 * .cvsignore: Update.
610 * lexer-gcc-3.1.sh: Remove.
612 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
613 Update anonymous cvs access. Remove comment about gcc 3.0.4.
615 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
617 * VERSION: release 2.9.23
619 * lily/paper-column-engraver.cc (stop_translation_timestep): also
622 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
624 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
626 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
628 * input/regression/clip-systems.ly (Notes): new file.
630 * scm/lily.scm (define-scheme-options): add clip-systems option.
632 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
634 (dump-stencil-as-EPS): move bbox calculation from previous
636 (output-framework): use -dclip-systems
638 * scm/lily-library.scm (filtered-map): new function
640 * scm/framework-ps.scm (clip-system-EPS): new function.
641 (clip-system-EPSes): new function.
643 * lily/paper-column.cc: add rhythmic-location to interface
645 * scm/define-grob-properties.scm (all-user-grob-properties): add
646 rhythmic-location property.
648 * scm/clip-region.scm: new file: rhythmic-location data type and
649 system-clipped-x-extent function.
651 * ly/init.ly: use (scm clip-region)
653 * lily/paper-column-engraver.cc (stop_translation_timestep): set
654 rhythmic-location for paper column grobs.
656 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
658 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
660 * ly/engraver-init.ly: Remove obsolete comment on
663 * Documentation/user/instrument-notation.itely: Tune Ancient
664 Articulations figure, such that the episem actually shows.
666 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
667 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
669 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
672 2006-10-12 Graham Percival <gpermus@gmail.com>
674 * Documentation/user/ {some}: minor edits that were lost somehow.
676 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
678 * VERSION (PACKAGE_NAME): bump version.
680 * input/regression/lyric-tie.ly (texidoc): new file.
682 * Documentation/topdocs/NEWS.tely (Top): add new feature.
684 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
686 * scm/define-markup-commands.scm (tied-lyric): new function: split
687 string along ~ and reattach with U+203F (tie character) and
690 * scm/output-lib.scm (lyric-text::calc-text): new function.
692 * lily/lyric-engraver.cc (process_music): don't set 'text.
694 * scm/output-lib.scm (string-finger::calc-text): new function
695 (lyric-text::print): new function.
697 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
698 generic for fingering & string number. Use for string-finger.
700 * scm/define-music-types.scm (music-descriptions): add
703 * lily/fingering-engraver.cc (listen_string_finger): new function
705 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
707 * scm/define-context-properties.scm
708 (all-user-translation-properties): add stringFingerOrientations
710 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
712 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
713 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
715 * lily/dots.cc: Added style property for dots.
717 * mf/parmesan-heads.mf: Fix typo in comment.
719 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
720 adding longa head to feta font and removing obsolete default
723 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
725 * scm/output-lib.scm (fingering::calc-text): use origin
726 event-property, not music-property.
728 * lily/lilypond.rc.in: spell my name correctly.
730 2006-10-10 Joe Neeman <joeneeman@gmail.com>
732 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
733 already have a non-empty extent. Fixes estimation for Hara-kiri
736 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
738 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
741 * lily/ligature-engraver.cc: Remove unused #include.
743 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
744 Bugfix: remove method check_for_prefix_loss(Item *) from global
745 namespace to avoid namespace pollution.
747 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
749 * VERSION: release 2.9.22
751 * ly/generate-documentation.ly: update option name.
753 * lily/dynamic-text-spanner.cc (print): revert fix.
755 * scm/define-grob-interfaces.scm
756 (trill-pitch-accidental-interface):
757 add trill-pitch-accidental-interface
759 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
760 dereference if it's really a duration.
762 * lily/figured-bass-engraver.cc (process_music): clear spanner if
763 useBassFigureExtenders is not set.
764 (listen_bass_figure): record as new event if
765 useBassFigureExtenders not set. Fixes #103.
767 * scm/stencil.scm (circle-stencil): don't center stencil argument,
768 instead: move circle. Fixes #107.
770 * scm/define-grobs.scm (all-grob-descriptions): set
771 allow-loose-spacing for PaperColumn and
772 NonMusicalPaperColumn. Kludge for #110.
774 * lily/spaceable-grob.cc: add allow-loose-spacing property.
776 * lily/spacing-determine-loose-columns.cc (is_loose_column):
777 allow-loose-spacing property.
779 * scm/define-markup-commands.scm (postscript): gsave & grestore
780 around embedded PS. Do setlinewidth too. Fixes #109.
782 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
784 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
785 code. This patch fixes ligature brackets that were not at all
788 2006-10-08 Graham Percival <gpermus@gmail.com>
790 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
792 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
794 * scm/define-context-properties.scm: clarified docs (bug 91).
796 * Documentation/user/basic-notation.itely: document volta brackets
797 not aligning (bug 63).
799 * Documentation/user/ global.itely invoking.itely: ignore or
800 add warnings about texstr.
802 2006-10-08 John Mandereau <john.mandereau@free.fr>
804 * po/fr.po: update translation.
806 * po/: update msgids.
808 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
810 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
812 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
814 * Documentation/user/page.itely (Two-pass vertical spacing): add
815 documentation for two-pass spacing technique.
817 2006-10-06 Graham Percival <gpermus@gmail.com>
819 * Documentation/user/convert-ly.txt: new file; new
820 storage place for this file (moved from bugs/ CVS).
822 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
824 * lily/note-head.cc: Fixed programming_error message.
826 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
828 * scm/define-grobs.scm (pure-conversion): move pure-callback
831 * scm/script.scm (default-script-alist): set avoid-slur for turn,
832 marcato, stopped, thumb.
834 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
836 * lily/completion-note-heads-engraver.cc (process_music): don't
837 skimp on memory usage.
839 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
842 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
843 parenthesis item. This fixes premature Y-extent triggering. Fixes
846 * VERSION (PATCH_LEVEL): bump version.
848 2006-10-04 Graham Percival <gpermus@gmail.com>
850 * Documentation/user/advanced-notation.itely: added
851 info about instrument names for piano or other contexts,
854 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
856 * mf/feta-bolletjes.mf (solfa_quarter_width): use
857 solfa_base_notewidth as unit for non-DO-notes too.
859 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
861 * VERSION: release 2.9.21
863 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
866 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
868 * python/lilylib.py (progress): Minor fix.
870 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
872 * lily/note-name-engraver.cc: doc engraver.
874 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
876 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
878 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
881 * lily/stem-engraver.cc (make_stem): don't set duration-log
883 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
884 write snippet-names binary.
886 * python/lilylib.py (system): use os.system for mingw32
888 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
891 * scm/backend-library.scm: update email address.
893 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
896 * scm/define-grobs.scm (all-grob-descriptions): use callback to
899 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
900 handle dot creation separately.
902 * lily/tab-note-heads-engraver.cc (process_music): idem.
904 * lily/drum-note-engraver.cc (process_music): idem.
906 * lily/note-heads-engraver.cc (process_music): idem.
908 * lily/rest-engraver.cc: don't set duration-log.
910 * scm/output-lib.scm (string-number::calc-text): new function.
911 (note-head::calc-duration-log): new function.
913 * lily/fingering-engraver.cc (make_script): remove 'text setting.
915 * scm/output-lib.scm (fingering::calc-text): new function.
917 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
919 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
920 and include-eps-font -> include-eps-fonts
922 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
924 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
926 * lily/timing-translator.cc: list properties.
927 (start_translation_timestep): update internalBarNumber too.
929 * scm/define-context-properties.scm
930 (all-user-translation-properties): add internalBarNumber.
932 * input/regression/spacing-no-note.ly: new file.
934 * buildscripts/output-distance.py (link_file): verbosity for OSError.
936 * lily/book.cc: #include cleanup.
938 * lily/include/lily-guile-macros.hh: add assert to
939 scm_or_str2symbol(SCM).
941 * VERSION (PATCH_LEVEL): bump version.
943 * lily/spacing-spanner.cc (musical_column_spacing): handle
944 musical->nonmusical spacing case, where there is no spacing
945 wish. Fixes issue #61.
947 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
948 (pango_item_string_stencil): use logical rect horizontally (to
949 preserve spaces), ink_rect vertically (for time signatures).
951 * lily/font-metric.cc (word_stencil): new interface function
953 * input/regression/utf-8-mixed-text.ly: new file.
955 * lily/percent-repeat-engraver.cc (listen_percent): remove
958 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
959 non-dynamic scripts. Fixes #30.
961 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
963 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
965 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
966 SCM_UNDEFINED for non-existent data.
968 * lily/side-position-interface.cc (general_side_position): allow
969 optional current_offset argument for chaining, so combinations of side-position
970 and outside slur callback don't add up. Fixes issue #92.
972 * lily/pango-font.cc (pango_item_string_stencil): use
973 logical_rect. This prevents spaces after words from disappearing,
976 * VERSION: release 2.9.20
978 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
980 * scm/define-grob-properties.scm (all-user-grob-properties):
981 mention stencil as user settable.
983 2006-10-02 Joe Neeman <joeneeman@gmail.com>
985 * Documentation/user/page.itely (Page formatting):
986 document auto-first-page-number
988 * lily/page-breaking.cc (find_chunks_and_breaks):
989 * lily/paper-score.cc (calc_breaking): Follow changes to the
990 Constrained_breaking interface
992 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
993 here backwards, as an optimisation
994 (initialize): new function; move most of the code in resize () here
995 (combine_demerits): cache ragged_right_
996 (Constrained_breaking): constructor now takes the Paper_score
998 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1000 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1001 avoid parser lookahead for 0-ary functions.
1003 * lily/translator.cc: Extract event classes from
1004 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1006 2006-10-02 Heikki Junes <hjunes@gmail.com>
1008 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1011 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1013 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1014 function. Call the page breaking function selected in the
1015 `page-breaking' \paper variable, then the post processing function
1016 chosen using the `page-post-process' \paper variable.
1017 (line-height): new function. Return the height of a system.
1018 (line-minimum-position-on-page): new function. Return the position
1019 of a system on page (using the previous line position), only
1020 considering between system padding.
1021 (stretchable-line?): new function. Says whether a line can be
1022 stretched (ie. is not a title nor a single staff system).
1023 (page-maximum-space-left): new function. Computes space left on a
1024 page, when all systems are separated by their padding.
1026 * lily/page-breaking.cc (breaking::make_pages): Move page post
1027 processing function call to page breaking wrapper (common to all
1030 * lily/paper-book.cc (book::pages): call the page breaking
1031 wrapper, instead of the page breaker directly
1033 * ly/paper-defaults.ly: Add \paper variables for page breaking
1034 wrapper and page post processing function. Make
1035 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1036 `system-maximum-stretch-procedure' variable for holding a function
1037 computing the maximum stretch a system allows.
1039 * scm/layout-page-dump.scm (write-page-breaks): computes the
1040 stretch to apply to systems on a page to minimize left
1041 space. Dump this stretch length.
1043 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1044 the system-stretch property of the tweak data to stretch the
1046 (includePageLayoutFile): Void function which includes the
1047 generated page-layout file if it exists and if the page layout
1048 dumping is not asked.
1049 (scoreTweak): if the score tweak named by the argument exists,
1052 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1054 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1055 handle correctly the case where there are multiple \noPageBreaks
1058 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1060 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1062 * abc2ly.py fix so that entering " -- " will translate to a -- in
1063 the lilypond instead of a " - - "
1065 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1067 * lily/align-interface.cc: fix typo
1069 * lily/dynamic-text-spanner.cc (print): Add a special case for
1070 trill spanner right sides.
1072 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1074 * lily/align-interface.cc (get_extents_aligned_translates): add
1075 support for padding variable.
1077 * lily/break-align-interface.cc (self_align_callback): oops: use
1078 loop variable in guard.
1080 * input/regression/repeat-percent-grace.ly: new file.
1082 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1083 remember first currentCommandColumn of a grace run. Fixes issue 70.
1085 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1086 move class definition to CC file.
1088 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1090 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1091 measure-long repeats.
1093 * flower/include/international.hh: include stdarg.h
1095 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1097 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1098 put_systems_on_pages to return an empty result, we need to assign
1099 demerits properly in that case.
1100 (put_systems_on_pages): Make the number of pages depend on the
1101 evenness of page_number. Add auto-first-page-number.
1102 (calc_subproblem): ensure that the page-number is even for the
1103 left-hand page. Warn if the first page-turn doesn't fit onto the
1104 first (right-hand) page.
1106 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1107 (min_page_count): make this publicly accessible
1108 (min_page_count): fix a bug when there are forced page breaks that
1109 was introduced when I made this loop run backwards
1110 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1111 replace space_systems_on_min_pages with these two. The logic in
1112 space_systems_on_min_pages was getting too convoluted and is better
1113 contained in page-turn-page-breaking.
1115 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1117 (breakable_column): typo
1119 * lily/source-file.cc (get_line): fix off-by-one error
1120 and clean up some of the logic
1122 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1124 * lily/page-breaking.cc (make_pages): honour the first-page-number
1127 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1129 * VERSION (PACKAGE_NAME): bump version.
1131 2006-09-26 Pal Benko <benko.pal@gmail.com>
1133 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1134 (the latter is the same as petrucci-f which is kept for compatibility)
1136 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1138 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1140 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1142 * lily/global-context.cc (run_iterator_on_me): break out of loop
1143 if moment doesn't increase.
1145 * scm/define-grob-properties.scm (all-user-grob-properties): add
1148 * lily/accidental.cc (after_line_breaking): read forced property.
1150 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1153 * input/regression/accidental-forced-tie.ly: new file.
1155 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1157 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1159 * lily/figured-bass-engraver.cc: only listen to rest events if
1160 ignoreFiguredBassRest is not set.
1162 * scm/define-context-properties.scm
1163 (all-user-translation-properties): add ignoreFiguredBassRest property
1165 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1167 * lily/paper-book.cc (get_system_specs):
1168 (set_system_penalty): fix breakbefore.
1169 We used to set a penalty on the system after the break, now we
1170 set a permission on the system before the break
1172 * lily/grob-property.cc: add scm debugging hooks into
1173 property modification
1175 * lily/context-property.cc:
1177 rename make_foo_from_properties to internal_make_foo and
1178 move it from context-property.cc to a member function of
1181 * lily/include/lily-guile-macros.hh:
1182 overload ly_symbol2scm macro so that there is no more need
1185 * lily/volta-repeat-iterator.cc:
1186 * lily/tweak-engraver.cc:
1187 * lily/tuplet-bracket.cc:
1188 * lily/span-bar-engraver.cc:
1189 * lily/script-engraver.cc:
1190 * lily/prob-scheme.cc:
1191 * lily/pointer-group-interface.cc:
1193 * lily/grob-scheme.cc:
1194 * lily/grob-property.cc:
1196 * lily/context-property.cc:
1197 * lily/break-substitution.cc:
1198 * lily/break-align-engraver.cc:
1199 * lily/axis-group-interface.cc:
1200 * lily/align-interface.cc:
1201 remove calls to internal_FOO
1203 * lily/system-start-delimiter-engraver.cc:
1204 * lily/parenthesis-engraver.cc:
1205 * lily/accidental-engraver.cc:
1206 remove calls to make_foo_from_properties
1208 2006-09-23 Graham Percival <gpermus@gmail.com>
1210 * Documentation/user/programming-iterfaces.itely: fix
1211 def-music-function -> define-music... leftover.
1213 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1215 * lily/page-spacing.cc (min_page_count): by running the loop
1216 backwards, we can calculate ragged_last properly.
1218 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1220 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1221 printfirst-page-number -> print-first-page-number
1223 * python/convertrules.py: corresponding rule.
1225 * Documentation/user/page.itely (Page formatting): Document the
1226 default values of all page layout parameters.
1228 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1230 * lily/lexer.ll: remove limitation on music function arity. New
1231 mode extratoken, which inserts extra EXPECT_* tokens after
1232 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1234 * lily/parser.yy: Change grammar for music function accordingly.
1236 * lily/include/lily-parser.hh: New method get_state, new member
1237 hidden_state. Works around a problem when parser fetches
1238 MUSIC_FUNCTION token but not the following EXPECT_* token.
1240 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1243 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1244 references to Music; use ASSIGN_EVENT_ONCE everywhere
1246 * lily/grob-info.cc: junk *music_cause
1248 * lily/music.cc: copy eventified articulations to stream event
1250 * lily/part-combine-iterator.cc: Cleanup using enums
1252 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1255 * lily/include/engraver.hh: Junk music.hh include
1257 * lily/stream-event.cc: Changed constructors
1259 2006-09-21 Graham Percival <gpermus@gmail.com>
1261 * Documentation/user/tweaks.itely (Fitting music onto fewer
1262 pages): change settings to avoid warning messages.
1264 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1266 * Documentation/user/tweaks.itely (Fitting music onto fewer
1267 pages): Add between-system-space setting.
1269 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1271 * lily/accidental-placement.cc (calc_positioning_done): don't
1272 trigger Y-extent calculation too early. Use pure_height instead.
1274 * lily/scale.cc (LY_DEFINE): new file.
1276 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1278 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1279 that happen at the start of a score: having a zero-length
1280 chunk was messing up min_system_count calculations.
1282 * lily/source-file.cc (get_line): lower_bound, not
1283 binary_search. Fixes problem where point-and-click would
1284 always point to the first line.
1286 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1288 * lily/accidental-placement.cc (calc_positioning_done): also put
1289 stems into accidental support.
1291 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1294 * scm/script.scm (default-script-alist): avoid-slur and
1295 slur-padding for portato script.
1297 * lily/stem-tremolo.cc (translated_stencil): new function.
1298 (height): use new function. Fixes tremolos on whole notes.
1300 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1303 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1305 * scripts/abc2ly.py (try_parse_comment): idem.
1307 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1308 bar_string iso. string.find()
1312 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1315 2006-09-18 Graham Percival <gpermus@gmail.com>
1317 * Documentation/user/basic-notation.itely: add bug
1318 warning about ties and octavation/clef.
1320 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1322 * VERSION (PACKAGE_NAME): release 2.9.18
1324 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1326 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1327 figure out midi file names right here.
1329 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1331 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1333 * scm/backend-library.scm: option naming: gs-font-load*s*
1335 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1338 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1340 * scm/define-music-types.scm (music-descriptions): remove
1341 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1342 Music::to_event doesn't complain.
1344 * lily/accidental-placement.cc (ape_compare):
1345 * lily/semi-tie.cc (compare):
1346 * lily/note-column.cc (shift_compare): replace by XXX_less
1348 * lily/tie-formatting-problem.cc (set_chord_outline):
1349 * lily/tie-column.cc (calc_positioning_done):
1350 * lily/system.cc (post_processing)
1352 * lily/stem.cc (note_head_positions)
1353 (calc_positioning_done):
1354 * lily/spanner.cc (do_break_processing)
1355 (find_broken_piece):
1356 * lily/span-bar.cc (print):
1357 * lily/semi-tie-column.cc (calc_positioning_done):
1358 * lily/rest-collision.cc (calc_positioning_done):
1359 * lily/program-option.cc (get_help_string):
1360 * lily/note-collision.cc (get_clash_groups):
1361 * lily/new-fingering-engraver.cc (position_scripts):
1362 * lily/keyword.cc (Keyword_table):
1363 * lily/hara-kiri-group-spanner.cc (request_suicide):
1364 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1365 * lily/accidental-placement.cc (calc_positioning_done):
1367 * lily/beam.cc (get_beam_segments):
1368 * lily/grob-array.cc (remove_duplicates):
1371 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1372 ragged-last-bottom = ##f (test the new page breaker)
1374 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1376 * scm/define-context-properties.scm
1377 (all-internal-translation-properties): remove properties that
1378 were used to communicate page-turn stuff to the paper-column
1381 * lily/lily-guile.cc (robust_scm2string): new function
1383 * lily/paper-column-engraver.cc: Clean up page turn stuff
1385 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1386 instead of cluttering up paper-column-engraver.cc
1388 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1390 * scm/layout-page-dump.scm (scm): export utility function names,
1391 to allow user writing cutsom dumping functions.
1393 * scm/layout-page-layout.scm: export utility function names to
1394 enable custom page breaking function writing. Tabify.
1395 (line-next-space): use ?-suffix only for predicates
1396 (page-maximum-space-to-fill): new function. Return the space
1397 between first and bottom system of a page, to give to
1399 (space-systems): use a space-to-fill argument (for instance as
1400 computed by page-maximum-space-to-fill) instead of computing
1401 internaly this space with the page height. That way, the caller
1402 can adjust the space to use.
1403 (make-page-from-systems, walk-paths): compute space to fill before
1404 calling space-systems.
1406 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1408 * scm/script.scm (default-script-alist): set paddings for every
1409 type here, increase for portato mark.
1411 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1414 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1416 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1417 use spanner::set-spacing-rods
1419 * lily/note-column.cc: reformat.
1421 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1422 step positioning for note/rest combinations.
1424 * input/regression/rest-note-collision.ly: new file.
1426 * scm/define-grobs.scm (all-grob-descriptions): add
1429 * flower/include/std-vector.hh: switch off again.
1431 * VERSION (PATCH_LEVEL): bump to 2.9.18
1433 * flower/include/std-string.hh: idem.
1435 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1437 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1439 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1442 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1444 * Documentation/user/page.itely: update page breaking documentation
1446 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1448 * lily/note-collision.cc (calc_positioning_done): only access
1449 first head if available.
1451 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1453 * scm/framework-ps.scm (output-preview-framework): use new name.
1455 * lily/program-option.cc (internal_set_option): use new names.
1457 * Documentation/user/SConscript (lilypond_book_flags): update -d
1460 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1461 output into other programs): new variable names.
1463 * scm/lily.scm (define-scheme-options): uniformize var names.
1465 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1466 tuplets_ is non-empty before popping.
1468 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1470 * lily/spanner.cc (find_broken_piece):
1471 * lily/spacing-spanner.cc (get_columns):
1472 * lily/source-file.cc (get_line):
1473 * lily/simple-spacer.cc (get_column_description):
1474 * lily/keyword.cc (lookup):
1475 use the new binary search.
1477 * flower/include/std-vector.hh: replace binary_search with
1478 a more STL-like version
1480 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1482 * lily/tie-performer.cc: remove unused last_event_ property.
1483 (class Tie_performer): add now_tied_heads_ property for
1484 partially-tied heads.
1485 (acknowledge_audio_element): when adding an Audio_note, put the
1486 note in now_tied_heads_ if the audio note is partially tied.
1487 (stop_translation_timestep): always include entries in
1488 now_tied_heads_ in heads_to_tie_.
1490 * lily/drum-note-performer.cc (process_music): look for tie-events
1491 in the articulations; pass to Audio_note constructor.
1493 * lily/note-performer.cc (process_music): look for tie-events in
1494 the articulations; pass to Audio_note constructor.
1496 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1499 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1500 include initializer in constructor.
1502 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1504 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1505 unless they are breakable. This fixes discrepancies between the forces
1506 calculated here and the forces calculated in get_line_configuration.
1508 * lily/grob.cc (pure_relative_y_coordinate): fix some
1509 mis-estimation that was happening with piano staves.
1511 * lily/constrained-breaking.cc (resize): don't choke if we get a
1512 measure that won't fit on a line.
1513 (combine_demerits): don't consider uniformity when ragged
1515 * lily/page-spacing.cc (solve): why the f* were there two of these?
1516 (calc_subproblem): properly handle the case where a system is taller
1519 * lily/system.cc (get_paper_system): ensure that all the permissions
1520 and penalties are passed to the paper systems.
1522 * lily/page-breaking.cc (create_system_list): support system-count.
1524 * scm/define-grobs.scm (pure-print-callbacks): add
1525 ly:script-interface::print
1527 * lily/page-spacing.cc (min_page_count): fix calculation of min
1528 pages if we are ragged and there are non-zero springs.
1530 * scm/layout-page-layout.scm: if the pure-height estimates are under
1531 the real height, allow space-systems to ignore padding if it is
1532 needed in order to fit the systems on one page
1534 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1536 (solve): fix performance problem. Make sure we always get at least
1539 * lily/page-breaking.cc (make_pages): include write-page-breaks
1542 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1544 * scm/define-grobs.scm: add the new slur-callback
1545 fix pure-relevant to not exclude grobs whose extent is already
1548 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1551 * lily/slur.cc (pure_height): new callback to estimate the height
1554 2006-09-02 Graham Percival <gpermus@gmail.com>
1556 * Documentation/user/invoking.itely: small update on
1557 MacOS X notes; thanks Trevor!
1559 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1561 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1563 * lily/lexer.ll: accept EOF in all states.
1565 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1567 * lily/source-file.cc (Source_file): always 0-terminate character
1568 array, to prevent Flex from barfing.
1570 * lily/global-context.cc (get_output): robustness: don't crash if
1571 no Score context found.
1573 * lily/include/book.hh (class Book): idem.
1575 * lily/include/context-def.hh (struct Context_def): idem.
1577 * lily/include/score.hh (class Score): don't derive from Input.
1579 * lily/book.cc (Book): add a copy ctor.
1581 * buildscripts/output-distance.py (FileLink.calc_distance): count
1582 orphans in distance too.
1584 * python/midi.c (midi_parse_track): robustness: don't read past
1587 * ly/performer-init.ly: add Control_track_performer, move
1588 Tempo_performer and Time_signature_performer to Score.
1590 * lily/score-performer.cc (acknowledge_audio_elements): override
1591 from base class: add to audio-columns
1593 * lily/control-track-performer.cc (add_text): new file: generate
1596 * lily/performance.cc: move output_header_track to
1597 Control_track_performer ()
1599 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1601 * lily/include/midi-item.hh (class Midi_channel_item): insert
1602 class into hierarchy, for items that can have a channel setting. Dehungarify.
1604 * lily/include/performer.hh (class Performer): remove
1605 play_element(); move functionality into announce/acknowledge.
1607 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1609 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1610 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1612 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1614 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1617 * lily/all-font-metrics.cc: remove TFM support.
1619 * lily/include/tfm.hh: remove TFM support, TFM reader.
1621 * lily/include/binary-source-file.hh: remove Binary_source_file.
1623 2006-08-27 Graham Percival <gpermus@gmail.com>
1625 * Documentation/topdocs/NEWS.itely: add @c marker for
1626 stuff I've processed.
1628 * Documentation/user/ various: info from NEWS.
1630 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1632 * lily/paper-column-engraver.cc (finalize): Oops, this change
1633 should have gone in on 2006-08-23
1635 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1637 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1638 quotes to quote arguments. Fixes Windows problem.
1640 * python/lilylib.py (progress): idem
1642 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1644 * scripts/musicxml2ly.py: fix for importing
1645 minor key signatures from MusicXML. (Phillip Kirlin)
1647 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1649 * python/musicxml.py:
1650 (Attributes.get_key_signature): now correctly retrieves mode from
1653 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1655 * lily/parser.yy (output_def_body): take ownership of identifier
1658 * Documentation/user/advanced-notation.itely (Metronome marks):
1659 update use of \tempo in \midi.
1661 * VERSION: release 2.9.16
1663 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1665 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1668 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1670 * input/regression/tie-chord-partial.ly: clarify example.
1672 * scm/define-music-properties.scm (all-music-properties): remove
1675 * ly/music-functions-init.ly: remove \untied.
1677 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1678 stream events and music events.
1679 (stop_translation_timestep): search acknowledged heads for
1682 * input/regression/tie-chord-partial.ly: new file.
1684 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1685 for \char markup command.
1687 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1689 * scm/define-music-types.scm (music-descriptions): consistency:
1690 Use solo-{one,two}-event iso. solo-[12]-event.
1692 * lily/part-combine-engraver.cc (process_music):
1693 Use solo-{one,two}-event iso. solo-[12]-event.
1695 * ly/declarations-init.ly (partCombineListener): add Timing as
1698 * flower/std-string.cc (string_copy): use copy ()
1700 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1702 2006-08-24 Graham Percival <gpermus@gmail.com>
1704 * Documentation/user/changing-defaults.itely, global.itely,
1705 lilypond-book.itely, page.itely: minor changes from mailist.
1707 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1709 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1712 * scm/define-context-properties.scm
1713 (translator-property-description): robustness: detect type errors
1714 in property definitions.
1716 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1717 after getting it from SCM.
1719 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1722 * lily/include/performer.hh (class Performer): strip get_tempo()
1725 * lily/midi-def.cc: strip file.
1727 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1729 * lily/include/context-def.hh (struct Context_def): use
1730 VIRTUAL_COPY_CONSTRUCTOR().
1732 * lily/source-file.cc: smobification.
1734 * lily/include/source-file.hh (class Source_file): smobify
1735 Source_file. Trim redundant members.
1737 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1738 clones after creation. This plugs a huge memory leak.
1740 * python/convertrules.py (FatalConversionError.sub_tempo):
1741 complete rule for \midi{ \tempo }
1743 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1745 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1747 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1749 * input/regression/optimal-page-breaking-hstretch.ly: test for
1750 ragged-last-bottom also
1752 * lily/paper-column-engraver.cc (finalize): make the end of a score
1753 breakable by default. This is to balance out a change in behaviour
1754 of the page-turn-breaker which no longer makes the end of a score
1757 * lily/paper-book.cc (pages): set the systems_ once the pages are
1760 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1761 Page_breaking interface.
1763 * lily/page-breaking.cc (class Page_breaking): make the interface
1764 more consistent and provide abstractions for dealing with
1767 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1768 algorithm. Use the new interface to Page_breaking.
1770 * lily/page-spacing.cc: better support for ragged-bottom and
1773 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1775 * python/convertrules.py (conv): warning on \tempo{}
1777 * ly/performer-init.ly: set tempoWholesPerMinute.
1779 * ly/midi-init.ly: remove \midi
1781 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1784 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1785 tempoUnitDuration for determining what to print.
1787 * lily/lyric-extender.cc: typo.
1789 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1791 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1794 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1796 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1797 eps-pad-boxes is set.
1799 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1801 * THANKS: update sponsors.
1803 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1805 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1807 * input/regression/tie-chord-untied.ly: new file.
1809 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1811 * scm/define-music-properties.scm (all-music-properties): add
1814 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1816 (headertext_nopics): sanitize no-examples text.
1818 * scm/page.scm (make-page-stencil): don't rely on extents of
1819 page-stencil. This fixes spurious space around .EPS files produced
1820 with the EPS backend.
1822 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1824 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1826 * lily/hara-kiri-engraver.cc (process_music): remember
1827 keepAliveInterfaces after processing \set
1829 * lily/lyric-extender.cc (print): support left/right-padding for
1832 * scm/documentation-generate.scm (string-append): revert lilypond/
1835 2006-08-20 Graham Percival <gpermus@gmail.com>
1837 * Documentation/user/lilypond.tely: clarification to
1838 license presentation (not to actual license).
1840 * Documentation/user/basic-notation.itely,
1841 instrument-notation.itely: minor changes.
1843 * input/ {regression, test}/+.ly: clarification to
1844 text (you can click on examples). Thanks, Mats!
1846 * input/manual/bar-lines.ly: adds ||: repeats.
1848 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1850 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1852 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1854 * Documentation/user/lilypond.tely: strip lilypond/ from info
1855 links, rename to category LilyPond
1857 * lily/pango-font.cc (description_string): new function.
1859 * VERSION: release 2.9.15
1861 * lily/spacing-engraver.cc (stop_translation_timestep): use
1862 Dscho's fix for spacing spanner.
1864 * scm/define-music-types.scm (music-descriptions): use
1865 apply-output-event for ApplyOutputEvent
1867 * lily/output-property-engraver.cc (listen_apply_output): rename
1868 from listen_layout_instruction.
1870 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1873 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1875 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1876 commandline args with contains, split by \n.
1878 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1879 write snippet-names file, call with -dread-file-list. Fixes
1880 command limitations on 64-bit systems.
1882 * input/regression/stencil-color-rotation.ly: new file.
1884 * lily/include/translator.hh (struct Acknowledge_information):
1885 revert: don't use Protected_scm in global objects, as GUILE can't
1886 handle gc_unprotect from automated destructors on MacOS X.
1888 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1889 color, not the original stencil. Fixes combinations of
1890 color/transparency/rotation.
1892 * scripts/lilypond-book.py (main): add --formats=eps for
1895 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1896 crash if spacing_ is nonexistent.
1898 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1900 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1901 \catcode`\@=12 in the LaTeX output.
1903 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1905 * scm/define-music-types.scm (music-descriptions):
1906 use sustain-event iso. sustain-pedal-event.
1908 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1910 * scripts/convert-ly.py: honour the -n command-line switch
1912 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1914 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1915 break specification.
1917 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1919 * Documentation/user: convert-ly the user manual
1921 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1923 * stepmake/aclocal.m4: version check patch (thanks MWD)
1925 * ly/music-functions-init.ly: robustness. Don't crash if
1926 currentBarNumber is not a number.
1928 * VERSION (PATCH_LEVEL): bump.
1930 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1932 * stepmake/aclocal.m4: better version check; handle fooX.Y
1935 * ly/performer-init.ly: instrument name fixup.
1937 * input/manual/chord-names-jazz.ly (banterProperties):
1938 instrumentName update
1940 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1942 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1944 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1945 function. Use hash tables to check membership.
1947 * lily/general-scheme.cc (LY_DEFINE): new function.
1949 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1951 * lily/include/translator.hh (struct Acknowledge_information): add
1954 * ly/music-functions-init.ly: change name to BreathingEvent
1956 * input/regression/*.ly: apply it.
1958 * python/convertrules.py (conv): better instrumentName conversion
1961 * scm/define-music-types.scm (music-descriptions): add
1962 line-break-event to LineBreakEvent music
1964 * lily/music.cc (to_event): don't crash if music type not set.
1966 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1969 * lily/spacing-engraver.cc (stop_translation_timestep): set
1970 spacing for proportional notation too.
1972 * scm/translation-functions.scm (format-bass-figure): inspect
1975 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1977 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1979 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1981 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1983 * scm/layout-page-layout.scm (make-page-from-systems): new function
1984 (optimal-page-breaks): use the new page-breaking calling convention
1986 * scm/define-context-properties.scm (all-user-translation-properties):
1989 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1990 revokePageTurns functionality. If there is a special barline within
1991 the breakable region, break there instead of at the end of the region.
1993 * lily/paper-book.cc (pages): use the new page-breaking calling
1996 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1998 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2000 * scripts/lilypond-book.py: insert \sourcefileline command in
2001 output, so lilypond error messages refer to the spot in the
2002 original .lytex / .itely sourcefile.
2004 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2006 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2007 space to next column for distance to fixed col.
2009 * VERSION (PACKAGE_NAME): release 2.9.14
2011 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2014 * lily/accidental-engraver.cc (process_acknowledged): don't create
2015 accidental for trill span event. This fixes spurious accidentals
2018 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2020 * scm/define-grob-properties.scm (all-user-grob-properties):
2021 Clarify documentation of side-axis and direction. Thanks to Paul
2022 for the inspiration.
2024 * lily/bar-line.cc: Add documentation for "||:" also in the
2025 interface documentation.
2027 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2029 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2031 * lily/paper-column.cc (set_system): new function.
2033 * lily/spacing-engraver.cc (stop_translation_timestep): store
2034 SpacingSpanner refs in Paper_column.
2036 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2037 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2039 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2041 * lily/beam-engraver.cc (listen_beam): add method for
2042 Grace_beam_engraver too.
2044 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2046 * python/convertrules.py: Fix indentation bug that broke
2047 conversion of files older than 1.3.117.
2048 Fix escape error in the description for 2.9.6.
2050 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2052 * lily/*-engraver.cc: convert all try_music functions to listen_*
2055 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2056 enums to represent pedal types, and calculate more data statically.
2058 * scm/part-combiner.scm (recording-group-emulate): create a
2059 softcoded substitute for recording-group-engraver.cc.
2061 * lily/music.cc: make a common transpose function for events and
2064 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2065 ManualMelismaEvent, and obsoletes Melisma_translator.
2067 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2069 * input/test/instrument-name-align.ly: update version.
2071 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2073 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2074 Doc the --pdf flag to lilypond-book.
2076 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2078 * Documentation/topdocs/NEWS.tely (Top): add description.
2080 * input/regression/tuplet-full-length-note.ly: add file.
2082 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2083 always store axis group.
2085 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2087 * input/regression/instrument-switch.ly: new file.
2089 * lily/instrument-switch-engraver.cc (process_music): new file.
2091 * ly/engraver-init.ly: add Instrument_switch_engraver
2093 * ly/music-functions-init.ly: \instrumentSwitch
2095 * scm/define-context-properties.scm
2096 (all-user-translation-properties): add instrumentCueName
2098 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2100 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2102 * ly/music-functions-init.ly: music function \transposition.
2104 * lily/parser.yy (command_element): softcode \transposition.
2106 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2107 (process_music): oops.
2109 * lily/instrument-name-engraver.cc (start_spanner): new
2110 function. Create spanner when property changes.
2111 (stop_spanner): new function.
2113 * python/convertrules.py (conv): add rule.
2115 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2116 shortInstrumentName iso. instr.
2118 * scm/output-ps.scm (dashed-line): add phase argument to
2121 * lily/bar-line.cc (dashed_bar_line): new function.
2122 (compound_barline): support \bar "dashed".
2124 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2125 --output=DIR to DIR/BASE if it is a dir.
2127 * flower/file-name.cc (file_part): new function
2128 (dir_part): new function
2130 * lily/lily-parser-scheme.cc (LY_DEFINE):
2132 * DEDICATION: update
2134 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2136 * lily/instrument-name-engraver.cc: formatting.
2138 * python/convertrules.py (conv): bugfix for \epsfile.
2140 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2144 * lily/gourlay-breaking.cc: Oops, these should have been included
2147 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2149 * scripts/*.py (program_name): cleanup relocation snippets.
2151 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2153 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2155 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2156 page-breakable by default
2158 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2159 correctly calculated for a single-system page
2161 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2162 bigger than the second number
2164 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2165 acknowledge that we aren't satisfying constraints)
2167 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2170 * lily/grob.cc (pure_height): add minimum-Y-extent
2172 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2175 * lily/constrained-breaking.cc: convert code to use new Matrix class
2176 (get_best_solution): new function
2178 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2179 is a page with no systems
2181 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2183 * VERSION (PACKAGE_NAME): release 2.9.13
2185 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2188 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2190 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2192 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2195 * scm/define-grob-properties.scm (all-user-grob-properties):
2196 remove grace-space-factor.
2198 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2199 grace-spacing-interface
2200 (spacing-options-interface): add.
2202 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2204 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2206 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2207 GraceSpacing object.
2209 * lily/note-spacing.cc: fix prop list formatting
2211 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2212 beaming for grace notes too.
2214 * input/regression/spacing-grace.ly: update.
2216 * lily/grace-spacing-engraver.cc: new file.
2218 * lily/spacing-spanner.cc: add strict-grace-spacing.
2220 2006-07-20 Graham Percival <gpermus@gmail.com>
2222 * lily/parser.yy: compile fix.
2224 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2226 * scm/define-grobs.scm (all-grob-descriptions): typo.
2228 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2229 .eps extension from includegraphics.
2231 * scripts/lilypond-book.py (main): add support for --pdf.
2233 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2234 callback to compute common shortest duration.
2235 (set_springs): typo.
2237 * scm/define-grob-properties.scm (all-user-grob-properties): add
2238 strict-grace-spacing.
2240 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2241 support float_grace_columns_.
2243 * lily/spacing-options.cc (init_from_grob): new file.
2245 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2247 * input/regression/spacing-loose-grace.ly: new file.
2249 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2251 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2252 tupletFullLengthNote too. Choose right bound depending on value.
2254 * input/regression/tuplet-full-length-note.ly: new file.
2256 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2258 * lily/*-performer.cc: Converted try_music to listen_*
2260 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2261 as a stream-event internally. Introduce event_cause (), deprecate
2264 * scm/define-music-types.scm: Removed BusyPlayingEvent
2266 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2268 * Documentation/user/advanced-notation.itely (Font selection):
2269 Document how to get a list of available fonts using 'lilypond
2270 -dshow-available-fonts blabla'.
2272 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2274 * GNUmakefile.in: filter lily-XXX.pdf files.
2276 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2278 * scm/define-grob-properties.scm (all-internal-grob-properties):
2279 remove delta-pitch. Use delta-position everywhere.
2281 * scm/output-lib.scm (fall::print): use new order.
2283 * scm/output-ps.scm (path): reorder arguments.
2285 * scm/output-svg.scm (path): support for path primitive.
2287 * input/regression/bend-after.ly: new file.
2289 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2290 recipe for eps -> pdf conversion.
2292 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2294 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2297 2006-07-19 Graham Percival <gpermus@gmail.com>
2299 * input/manual/screech-boink.ly: moved to here.
2301 * input/screech-boink.ly: deleted.
2303 * scm/define-grob-properties.scm: clarify doc string.
2305 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2307 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2309 * scm/output-ps.scm (path): define path.
2311 * scm/define-stencil-commands.scm
2312 (ly:register-stencil-expression): add path.
2314 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2316 * ly/engraver-init.ly: add Fall_engraver
2318 * lily/parser.yy (music_function_event): allow musicfunction
2319 without music arg as music_function_event.
2321 * lily/grob-scheme.cc (LY_DEFINE):
2322 ly:grob-robust-relative-extent. New function.
2324 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2326 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2328 * scm/output-lib.scm (fall::print): new function
2330 * lily/fall-engraver.cc (stop_fall): new file.
2332 * ly/music-functions-init.ly: alphabetise.
2334 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2337 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2339 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2341 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2344 * lily/translator-group.cc (connect_to_context): non const error message.
2346 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2348 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2351 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2353 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2355 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2358 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2360 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2362 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2364 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2366 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2368 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2370 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2372 * scm/layout-page-layout.scm: Define module, tidy code, use more
2373 functions iso. a single big one.
2375 * scm/layout-page-dump.scm: move page dump functions used in two
2376 pass spacing to this file. Define module.
2378 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2381 * ly/paper-defaults.ly: use module layout-page-layout.
2383 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2385 * lily/music.cc: Revised MusicEvent event class. It now contains
2386 event data directly instead of encapsulating it in music. The
2387 previously used class is renamed to OldMusicEvent.
2389 * lily/stream-event.cc: Stream events are now probs.
2391 * lily/translator-group.cc, lily/translator.cc: Translators can
2392 now listen directly to stream events, by using macros
2393 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2395 * lily/arpeggio-engraver.cc: Converted to use new event system
2397 * THANKS: Corrected spelling mistake.
2399 2006-07-12 Graham Percival <gpermus@gmail.com>
2401 * Documentation/user/SConscript, make/lilypond-vars.make,
2402 input/GNUmakefile: doc build looks in input/manual instead
2405 * input/manual/ GNUmakefile, SConscript: build files for
2408 * input/test/ various: some files moved to input/manual/
2410 * Documentation/user/basic-notation.itely: small updates;
2411 thanks Kieren and Charles!
2413 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2415 * VERSION (PACKAGE_NAME): release 2.9.11
2417 * Documentation/topdocs/NEWS.tely (Top): update prop value
2419 * Documentation/user/basic-notation.itely (Tuplets): new property
2422 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2424 * python/convertrules.py (conv): tweaks.
2426 * VERSION (PATCH_LEVEL): bump version.
2428 * python/convertrules.py (conv): add rule for
2429 tupletNumberFormatFunction.
2431 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2432 tupletNumberFormatFunction.
2434 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2435 text through 'text callback.
2437 * lily/time-scaled-music-iterator.cc (construct_children): copy
2438 tweaks generated events.
2440 * scm/define-context-properties.scm
2441 (all-user-translation-properties): remove tupletNumberFormatFunction
2443 * lily/tuplet-engraver.cc (process_music): don't read
2444 tupletNumberFormatFunction
2446 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2449 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2451 * lily/global-context-scheme.cc: Separated ly:run-translator into
2454 * lily/score-engraver.cc, lily/score-performer.cc,
2455 scm/define-context-properties.scm: Make paper/midi output
2456 accessable as a context property.
2458 * lily/score-translator.cc, lily/score-context.cc: Removed.
2460 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2462 * scm/ps-to-png.scm (Module):
2463 * scm/framework-tex.scm (Module):
2464 * scm/framework-ps.scm (Module):
2465 * scm/backend-library.scm (Module):
2466 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2467 "dDEVICEHEIGHTPOINTS".
2469 2006-07-04 Graham Percival <gpermus@gmail.com>
2471 * Documentation/user/ various: general improvements to
2472 "working with lilypond files" section.
2474 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2476 * lily/sequential-iterator.cc: Change the default get_music_list
2477 to read elements-callback music property
2479 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2480 processing of multimeasure rests. Softcoded
2481 sequential-music-iterator.
2483 * lily/sequential-music-iterator.cc: Removed.
2485 2006-06-28 Graham Percival <gpermus@gmail.com>
2487 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2489 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2491 * lily/parser.yy: Wrap non-post-events in EventChords before
2492 assigning them to identifiers.
2494 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2496 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2497 gives correct vertical placement of \bar ":" in all staff
2498 sizes. Thanks Martial!
2500 2006-06-26 Graham Percival <gpermus@gmail.com>
2502 * Documentation/user/invoking.itely : minor update from mailist.
2504 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2506 * lily/ various: Introduce stream events of types Prepare,
2507 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2508 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2510 * lily/global-context*.cc: Time is now -inf before iteration
2513 * lily/include/context.hh: Removed unique_, init_
2515 * Documentation/topdocs/NEWS: Make the feathered beam example
2516 avoid triggering a bug.
2518 2006-06-24 Graham Percival <gpermus@gmail.com>
2520 * Documentation/user/ various: small additions from mailist.
2522 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2524 * ly/performer-init.ly: Add some missing links in the context
2525 hierarchy for MIDI output. There are probably some more missing!
2527 2006-06-21 Graham Percival <gpermus@gmail.com>
2529 * Documentation/user/ various: minor spelling fixes;
2530 thanks Dave Luttinen!
2532 * Documentation/user/ various: small clarifications;
2533 thanks Anthony Youngman!
2535 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2537 * po/fr.po: add \n appropriately.
2539 * lily/lexer.ll: remove ? from version-seen?
2541 2006-06-19 John Mandereau <john.mandereau@free.fr>
2543 * po/fr.po; update translation, by Jean-Charles Malahieude and
2546 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2548 * THANKS: add Markus Schneider.
2550 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2551 Staff_symbol_engraver
2553 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2554 replace staff_engraver
2556 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2559 * lily/staff-collecting-engraver.cc
2560 (acknowledge_end_staff_symbol): new function
2562 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2564 * lily/staff-collecting-engraver.cc
2565 (acknowledge_end_staff_symbol): new function.
2567 * lily/main.cc: switch on relocation by default.
2569 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2571 * lily/spacing-spanner.cc (musical_column_spacing): set
2572 compound_fixed_note_space to 0.0. Document why.
2574 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2575 range of inverse_hooke_
2576 (Simple_spacer): init completely.
2578 (get_line_configuration): don't use cols.resize(); it introduces
2581 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2583 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2585 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2586 try. Divide by beatlength.
2588 * input/regression/beaming-ternary-metrum.ly: update doc.
2589 add beatLength hack.
2591 * scm/music-functions.scm (make-time-signature-set): add
2592 standard-beat-grouping.
2594 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2596 * input/regression/tie-whole.ly: new file.
2598 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2599 cross center of note head in case of invisible stem.
2601 2006-06-16 Graham Percival <gpermus@gmail.com>
2603 * Documentation/user/ various: small fixes from mailist.
2605 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2607 * lily/breathing-sign.cc (offset_callback): idem.
2609 * lily/align-interface.cc (align_to_fixed_distance): remove
2612 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2615 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2617 * VERSION (PACKAGE_NAME): release 2.9.9
2619 * ly/lilypond-book-preamble.ly: add \version
2621 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2623 * scripts/lilypond-book.py (PREAMBLE_LY): include
2624 lilypond-book-preamble.ly
2626 * lily/stem.cc (get_beaming): return max of 0 and
2627 scm_ilength. Fixes slurring from/to beams.
2629 * ly/lilypond-book-preamble.ly: new file.
2631 * lily/slur.cc: add inspect-index feature.
2633 2006-06-13 Graham Percival <gpermus@gmail.com>
2635 * Documentation/user/tutorial.itely: trivial fix.
2637 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2639 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2640 all non-event music in the parser via MAKE_SYNTAX.
2642 * lily/parser-scheme.cc: Add ly:parser-error function
2644 * scm/paper.scm: fix typo
2646 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2650 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2653 * buildscripts/output-distance.py (test_compare_signatures):
2655 (read_signature_file): use new signature format.
2657 * scm/stencil.scm (write-system-signature): simpler signature
2660 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2663 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2664 stem_end_position, but estimate instead.
2666 * lily/tuplet-bracket.cc (calc_positions): look at
2667 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2668 brackets narrower than beams.
2670 * lily/lexer.ll: set version-seen? even if version is
2673 * lily/rest.cc (y_offset_callback): bugfix: decide position
2674 override based on scm_is_number(). Fixes \rest on center staff
2677 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2678 patterns for 16th triplets.
2680 2006-06-10 Graham Percival <gpermus@gmail.com>
2682 * Documentation/user/ page.itely, global.itely: editing
2685 * Documentation/user/ various: findex -> funindex.
2687 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2689 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2690 insert extra tuplet events.
2692 2006-06-10 Graham Percival <gpermus@gmail.com>
2694 * Documentation/user/programming-interfaces.itely: add
2697 * python/convertrules.py: add annotatefoo -> annotate-foo
2700 * Documentation/user/global.itely: start editing.
2702 * Documentation/user/page.itely: major editing, new spacing
2705 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2707 * scm/define-markup-commands.scm (wordwrap-markups): use
2708 output-def 'line-width if undefined.
2710 * HACKING: trim outdated info.
2712 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2714 * scm/define-grobs.scm (all-grob-descriptions): Add
2715 line-spanner-interface to all grobs that already have
2716 text-spanner-interface or dynamic-text-spanner-interface
2718 * scm/page.scm: Rename annotate{headers,systems,page}->
2721 * input/regression/page-spacing.ly,
2722 input/regression/page-layout-manual-position.ly: idem
2724 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2726 * lily/line-spanner.cc: cleanup property list.
2728 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2729 generator expressions (2.3 compat).
2731 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2733 * lily/vertical-align-engraver.cc: Make sure that the
2734 align{Above,Below}Context properties are included in the automatic
2737 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2739 * scm/paper-system.scm (paper-system-annotate): also annotate the
2740 estimated pure-Y-extent
2742 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2744 * lily/system.cc (break_into_pieces): set the estimated height
2745 of each child system
2747 * lily/stem.cc (pure_height): new pure-Y-extent callback
2749 * lily/staff-symbol-referencer.cc (callback): don't destroy
2750 the staff-position property
2752 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2753 consider_suicide into two functions
2755 * lily/constrained-breaking.cc (resize): use the new pure
2756 callbacks to estimate the height of a system
2758 * lily/axis-group-interface.cc (pure_group_height): new
2759 side-effect-free VerticalAxisGroup height-callback
2761 * lily/align-interface.cc (get_extents_aligned_translates):
2762 split align_elements_to_extents into two functions
2763 (get_pure_child_y_translation): new function
2765 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2767 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2769 * lily/paper-score.cc: cache break_indices and columns
2771 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2773 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2775 * lily/font-config.cc (init_fontconfig): do the init if
2776 cache_file, but don't look at cache_file.
2778 * input/regression/quote-tie.ly: new file.
2780 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2781 to Head_event_tuple, so we deal gracefully with ties on
2784 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2787 2006-06-08 Graham Percival <gpermus@gmail.com>
2789 * input/test/ smart-transpose.ly, reverse-music.ly:
2790 \applyMusic to music functions update, thanks Michael!
2792 2006-06-07 Graham Percival <gpermus@gmail.com>
2794 * input/test/ add-staccato.ly, add-text-script.ly,
2795 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2796 music functions update, thanks to Michael Meixner.
2798 * Documentation/user/music-glossary.tely: small fix
2801 * Documentation/user/ various: minor additions from mailist.
2803 * Documentation/user/lilypond.tely, basic-notation.itely:
2804 small test of @funindex. (works here)
2806 * input/test/font-table.ly: reduce size to partially
2807 de-ugly version in manual.
2809 * Documentation/user/page.itely: new file (split former
2810 "global issues" into "page settings" and "non-musical
2813 * Documentation/user/ various: fix @ref{}s to match
2814 new chapter names (above).
2816 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2818 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2820 2006-06-06 Graham Percival <gpermus@gmail.com>
2822 * Documentation/user/advanced-notation.itely: add example
2823 for segno/coda on barline.
2825 * tex/texinfo.tex: merge from upstream.
2827 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2829 * scripts/lilypond-book.py (process_snippets): Argument fix.
2832 * buildscripts/builder.py:
2835 * Documentation/user/SConscript: More SCons fixes.
2837 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2839 * lily/font-config.cc (init_fontconfig): Only initialize if
2840 global cache_file is found.
2842 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2844 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2847 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2849 * VERSION (PACKAGE_NAME): release 2.9.8
2851 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2852 function. Delay ledger modifying ledgered grobs to
2853 stop_translation_timestep(), to ensure that we're ledgering
2854 according to the new spanner.
2855 (acknowledge_staff_symbol): don't check for non-NULL
2856 staff_sym->get_bound()
2858 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2861 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2864 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2865 directly from srcdir/stepmake/aclocal.m4
2867 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2870 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2872 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2874 * lily/simple-spacer.cc (get_line_configuration): add
2875 keep-inside-line rods
2876 (struct Column_desc): add constructor
2877 (struct Rod_desc): add constructor
2878 (get_line_forces): check for forced page breaks here too
2880 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2881 support/elements cycles between InstrumentNames and AxisGroups
2883 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2885 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2887 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2888 make-txt-files target.
2890 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2891 make-txt-files target.
2893 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2895 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2898 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2900 * Documentation/user/instrument-notation.itely,
2901 input/regression/breathing-sign-ancient.ly,
2902 input/test/divisiones.ly: Removed redundant property settings for
2905 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2906 fix lyrics alignment problems. They are implemented now as scheme
2907 functions that add the appropriate unicode char to the first lyric
2908 event rather than adding a separate lyric event. Minor edit of
2911 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2913 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2914 pollute src dir with built .txt files, but install directly from
2915 Documentation/topdocs/out/
2917 * buildscripts/output-distance.py
2918 (ComparisonData.create_html_result_page): put version/directories
2921 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2924 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2925 Patch by Karl Hammar
2927 * buildscripts/readlink.py: add file.
2928 Patch by Karl Hammar
2930 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2932 * lily/tuplet-number.cc (print): prevent stencil from being
2935 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2937 * scm/stencil.scm (write-system-signature): explicitly
2938 -well, superfluously- close output port.
2940 * buildscripts/output-distance.py (main): oops. Add extra argument.
2942 2006-06-05 Graham Percival <gpermus@gmail.com>
2944 * Documentation/user/music-glossary.tely: clarified example
2945 from Francisco Vila, thanks!
2947 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2949 * input/regression/spacing-section.ly: new file.
2951 * lily/input.cc (programming_error): new function.
2953 * lily/spacing-engraver.cc (try_music): new function. Accept
2954 spacing-section-event
2956 * lily/spacing-spanner.cc (set_springs): take slices of all
2957 columns for spacing.
2959 * lily/include/paper-column.hh (class Paper_column): add
2960 Paper_column::compare.
2962 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2964 * scm/define-music-types.scm (music-descriptions): add
2967 * lily/music-iterator.cc (report_event): use programming_error for
2968 sending non-event error.
2970 * lily/input.cc (programming_error): new function
2972 * buildscripts/output-distance.py (main): use compare-XXX for
2974 (main): --threshold option, default at 0.30
2976 * output-distance.py (main): add --threshold option.
2978 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2980 * scm/paper-system.scm (paper-system-annotate): fix problem when
2981 annotating an empty system
2983 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2985 * GNUmakefile.in: reinstate old web tar/copying.
2987 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2989 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2990 nothing changes. (Erik S)
2992 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2995 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2997 * scm/define-markup-commands.scm (whiteout): do not force
2998 foreground color of argument markup to black.
3000 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3001 the left of the arrow, instead of below the arrow name, so that,
3002 when two little arrows are vertically stacked, their dimensions
3003 and name should not overlap. Add a color key parameter.
3005 * scm/paper-system.scm (paper-system-annotate): Annotate
3006 next-space+next-padding instead of next-space. Annotate space
3007 between next-padding and next-space+padding, respectively, and
3008 following system extent and refpoint-Y-extent. Use colors.
3010 * scm/page.scm (annotate-page): translate annotations slightly to
3013 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3015 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3016 fix for x-staff slurs. Thanks Joe!
3018 * buildscripts/output-distance.py
3019 (SystemLink.output_expression_change_count): keep track of changed
3020 details, and dump in details html page.
3022 * input/regression/figured-bass-staff.ly: add note about setting
3023 properties in Staff context.
3025 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3026 add slurs and ties to support too.
3028 * buildscripts/output-distance.py (main): set dest_dir
3029 argument. Add --max-count option.
3031 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3033 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3034 shortcuts for special unicode chars that are useful in chant
3035 notation. Revised exisiting and added new comments.
3037 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3039 * make/mutopia-rules.make: remove duplicate recipe.
3041 2006-06-02 Werner Lemberg <wl@gnu.org>
3043 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3044 Add support for U+0132 (IJ) and U+0133 (ij).
3046 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3048 * buildscripts/output-distance.py (FileLink): new class. collect
3049 info systems from one .ly file.
3050 (FileLink.link_files_for_html): further tweaks.
3052 2006-06-02 Graham Percival <gpermus@gmail.com>
3054 * tex/texinfo.tex: partial fix for @funindex.
3056 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3059 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3061 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3063 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3064 @example too. Backportme.
3066 2006-06-02 Graham Percival <gpermus@gmail.com>
3068 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3069 from Werner Lemberg.
3071 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3073 * Documentation/user/music-glossary.tely: additional spanish
3074 updates and a lyrics fix in an example.
3076 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3078 * scm/define-grob-properties.scm: Previous patch contained
3079 spurious line from another patch not yet committed. Fixed.
3081 * scm/define-grob-properties.scm: Add missing doc strings for
3084 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3086 * buildscripts/output-distance.py
3087 (ComparisonData.write_text_result_page): separate the scores, sort
3090 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3093 * buildscripts/output-distance.py (me_path): use argv[0] for
3095 (ComparisonData.img_cell): use colored borders.
3097 * scm/stencil.scm (write-system-signature): escape newlines too.
3098 (write-system-signature): use (1,-1) interval for empty interval
3100 2006-01-01 Graham Percival <gpermus@gmail.com>
3102 * Documentation/user/music-glossary.tely: Spanish updates
3103 from Francisco Vila.
3105 * Documentation/user/lilypond-book.itely: addition from
3108 * Documentation/user/ various: edits, small additions
3111 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3113 * GNUmakefile.in (tree-lib-prefix-current):
3114 (tree-share-prefix-current): Use version number in tree, add
3117 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3119 * GNUmakefile.in: write VERSION, again.
3121 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3122 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3124 * stepmake/aclocal.m4: robuster version detection.
3126 * buildscripts/output-distance.py
3127 (ComparisonData.create_html_result_page): copy only if file
3128 exists, fixup src paths.
3130 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3132 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3134 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3135 Another datarootdir reto.
3137 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3138 available. This should be moved to postinstall-lilypond-doc.
3140 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3142 * GNUmakefile.in: simplify local-WWW-post.
3143 remove -type l from find.
3145 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3146 fixes. Don't follow symlinks.
3147 (ComparisonData.create_html_result_page): remove previous results.
3148 insert ../python in path.
3150 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3152 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3154 * config.make.in (datadir): Add datarootdir to silence autoconf.
3156 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3158 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3160 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3162 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3163 slash beams too wide.
3165 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3167 * VERSION: release 2.9.7
3169 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3171 * lily/relocate.cc (read_relocation_dir): Do not blindly
3174 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3176 * lily/parser.yy: replace THIS by PARSER
3178 * Documentation/index.html.in: add link to test-results.html page.
3180 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3182 * scm/translation-functions.scm (format-bass-figure): translate
3183 digits over 10 to the left
3185 * scm/define-markup-commands.scm (translate-scaled): new markup.
3187 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3190 * ly/engraver-init.ly: add Figured_bass_engraver
3192 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3194 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3196 * lily/score-engraver.cc (announce_grob): only note START announces.
3198 * lily/include/engraver-group.hh (Translator_group):
3199 acknowledge_hash_table_ is now drul.
3201 * lily/engraver.cc (announce_end_grob): new method.
3203 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3205 * lily/translator-dispatch-list.cc (create): take start_end argument.
3207 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3208 acknowledge_static_array_ to drul
3210 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3212 * scm/define-grob-interfaces.scm
3213 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3215 * scm/define-grobs.scm (all-grob-descriptions): add
3216 BassFigureAlignmentPositioning
3218 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3219 number stays up to date. Backportme.
3221 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3223 * Documentation/user/basic-notation.itely (Bar lines): Document
3226 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3228 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3230 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3231 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3234 * Resurrect `scons lily' build.
3236 * SConstruct (symlink_tree): Bugfix: link
3237 music-drawing-routines.ps to file iso directory.
3239 * lily/SConscript: Remove kpath-guile from LIBS.
3241 * SConstruct (libdir_package_version): Typo.
3242 (configure): Comment-out fontforge for lack of fontforge.pc .
3243 Also add libdir* to environment.
3245 2006-05-30 Graham Percival <gpermus@gmail.com>
3247 * Documentation/user/ various: minor additions from mailist and
3250 2006-05-30 Paco <fravd@ya.com>
3252 * Documentation/user/music-glossary.tely: numerous corrections and
3253 some new translations.
3255 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3259 * buildscripts/output-distance.py
3260 (ComparisonData.create_html_result_page): new routine: summarise
3261 results in HTML page with images.
3262 (ComparisonData.create_text_result_page): create summary text files too.
3264 * GNUmakefile.in (web-ext): package .signature files too. They
3267 * scm/stencil.scm (write-system-signature): typo.
3269 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3271 * scm/stencil.scm (write-system-signature): better escaping.
3272 only write signature for music systems, not for markup systems.
3274 * scm/framework-ps.scm (output-framework): dump-signatures support
3277 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3279 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3280 for -dno-point-and-click
3282 * lily/grob.cc (get_print_stencil): don't read
3283 point_and_click_global to determine whether to set grob-cause.
3285 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3287 * buildscripts/output-distance.py (main): new function.
3288 (ComparisonData): new class.
3290 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3291 careful with generating new LedgerLineSpanners.
3293 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3295 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3296 context. This fixes double ledger lines in output.
3298 * lily/system.cc (get_paper_system): remove 3 layer limit.
3300 * buildscripts/output-distance.py (SystemLink.distance): new
3301 file. Compare signatures.
3303 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3305 * lily/grob-array.cc (remove_duplicates): rename from
3306 uniq(). Sort before calling uniq() so it actually works.
3308 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3310 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3311 \version from lilypond file snippet.
3312 (Lilypond_file_snippet.ly): oops. typo.
3313 (find_toplevel_snippets): urgh. again.
3315 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3316 prevent duplicated broken items in output.
3318 * scm/framework-eps.scm (output-classic-framework): only dump if
3319 dump-signatures is set.
3321 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3323 * scm/stencil.scm (write-system-signature): new routine: write
3324 python parseable signature of a separate paper system.
3327 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3329 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3333 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3335 * translator-group.cc: send music events to engravers in
3336 non-bottom contexts.
3338 * tuplet-engraver.cc: process tuplet brackets in correct order.
3340 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3342 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3343 arg 2 might point us to a new binary (patch by Karl Hammar)
3345 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3347 * VERSION (PACKAGE_NAME): release 2.9.6
3349 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3351 * Documentation/user/*.itely: 2nd
3352 attempt: replace funindex -> findex globally.
3354 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3356 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3357 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3359 * scm/define-music-display-methods.scm: display methods for
3360 breaks. Fix \applyOutput.
3362 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3364 * Documentation/user/macros.itexi: comment out funindex expansion.
3366 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3369 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3370 Karl Hammar. Backportme.
3372 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3374 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3376 * Documentation/user/programming-interface.itely (Running a
3377 function on all layout objects): idem.
3379 * Documentation/user/introduction.itely (Automated engraving):
3380 update \applyOutput syntax
3382 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3383 remove debugging hook.
3385 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3388 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3390 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3391 TEXI2DVI_FLAGS to texi2dvi invocation.
3393 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3395 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3396 works. More work is done by iterator now, and engraver has been
3397 very much simplified.
3399 * lily/translator-group.cc: try_music is now invoked through a
3402 * lily/*-iterator.cc: Massive cleanups. Junked
3403 try_music_in_children globally. Renamed try_music to report_event,
3404 and made that method descend to a bottom context automatically.
3406 * lily/event-iterator.cc: New file.
3408 * lily/output-property-iterator.cc,
3409 lily/old-lyric-combine-music-iterator.cc: Removed.
3411 * python/convert-rules.py: Modified the syntax for \applyOutput.
3413 2006-05-23 Graham Percival <gpermus@gmail.com>
3415 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3418 * Documentation/user/ various: stuff that might have helped
3419 to fix the pdf creation, plus some minor doc additions.
3421 * Documentation/user/changing-defaults.itely: remove @b from
3422 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3424 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3426 * lily/beaming-pattern.cc (beamify): deal with negative start
3427 moments for beaming patterns.
3429 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3431 * lily/beaming-info.cc (beamify): new function: read beatLength
3432 and beatGrouping from context.
3434 * input/regression/beam-beat-grouping.ly (Module): new file.
3436 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3438 * lily/beam.cc (get_beam_segments): generate events for
3439 max_connect_ case too.
3440 (get_beam_segments): read Stem::max-beam-connect.
3442 * input/regression/beam-single-stem.ly: new file.
3444 * lily/stem.cc (set_beaming): use #f as signaling value for
3447 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3449 * lily/beam.cc (set_beaming): read clip-edges property.
3450 (calc_direction): don't suicide for single stem.
3452 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3453 argument, remove 1<<15 hack. Remove clip_edges()
3455 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3457 2006-05-21 Graham Percival <gpermus@gmail.com>
3459 * Documentation/user/basic-notation.itely: reorg.
3461 * Documentation/user/ various: minor fixes.
3463 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3465 * lily/stencil-expression.cc (register_stencil_head): opps, append
3466 to cdr of static SCM object.
3468 2006-05-19 Graham Percival <gpermus@gmail.com>
3470 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3471 update framework for command index. DOC WRITERS: use @funindex
3472 instead of @cindex @code{}.
3474 * Documentation/user/ various: replace @cindex @code{} => @funindex
3476 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3478 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3479 case positions is set manually.
3481 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3483 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3486 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3488 * Documentation/user/changing-defaults.itely (Contexts explained):
3489 use absolute dimension for @image.
3491 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3492 out image for illustration too.
3493 ($(outdir)/%.png): add more png <-> eps rules.
3495 2006-05-17 Graham Percival <gpermus@gmail.com>
3497 * Documentation/user/ various: remove trailing whitespace, cosmetic
3498 change to reduce changes produced by diff.
3500 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3502 * lily/main.cc (do_chroot_jail): correctness tweak.
3504 * python/lilylib.py (system): import subprocess in system () only.
3506 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3508 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3509 variable. Backportme.
3511 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3513 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3515 2006-05-17 Werner Lemberg <wl@gnu.org>
3517 * lily/lexer.ll (init_signature_has_table): Add
3518 `scm-scm-music-music'.
3520 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3521 (Generic_prefix_music_scm): Add rule for it.
3523 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3524 `quoted-transposition' property.
3526 * ly/music-functions-init.ly (transposedCueDuring): New function.
3528 * scm/define-music-properties.scm (all-music-properties): Updated.
3530 * Documenation/topdocs/NEWS.itely: Document it.
3532 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3534 * python/lilylib.py (system): move import subprocess to system()
3537 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3539 * VERSION (PATCH_LEVEL): release 2.9.5
3541 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3544 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3546 2006-05-16 Graham Percival <gpermus@gmail.com>
3548 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3550 * Documentation/user/ various: minor fixes.
3552 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3554 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3556 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3558 * Documentation/user/advanced-notation.itely (Instrument names):
3559 Modified obsolete instruction on how to move instrument names away
3560 from the staves. Hmm, at second thought the bug probably has been
3561 solved, so the full bug description should probably be removed.
3563 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3565 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3566 currentCommandColumn.
3568 * lily/hairpin.cc (print): also add padding for non-neighbor
3571 * scm/define-context-properties.scm
3572 (all-user-translation-properties): add hairpinToBarline
3574 * input/regression/hairpin-to-barline.ly: new file.
3576 * lily/context.cc (internal_send_stream_event): thinko fix.
3578 * lily/tie.cc (set_default_control_points): robustness fix.
3580 * python/musicxml.py (Part.interpret): don't complain about
3581 incomplete measures.
3583 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3584 new music if last_event_chord() returned None.
3586 * python/musicxml.py (Part.interpret): skip back over chord notes.
3588 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3590 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3591 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3592 lily/slash-repeat-engraver.cc,
3593 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3594 iterator sends PercentEvents
3596 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3597 rework tuplets: send start/stop events to engraver
3599 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3600 dispatchers event-source and events-below to Context
3602 2006-05-15 Graham Percival <gpermus@gmail.com>
3604 * Documentation/user/README.txt: update info for doc writers.
3606 * Documentation/user/programming-interface.itely: integrate
3607 Nicolas' fixes for chapter rewrite.
3609 * Documentation/user/ various: minor fixes.
3611 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3613 * lily/clef-engraver.cc: cleanup.
3615 * Documentation/user/GNUmakefile: dist context-example.eps too.
3617 * lily/key-engraver.cc (create_key): use
3618 explicitKeySignatureVisibility for cancellation too.
3620 * lily/font-config.cc (init_fontconfig): don't close file if
3623 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3625 * Documentation/topdocs/NEWS.tely: niente and rotation news
3627 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3629 * lily/include/stencil.hh
3630 * lily/stencil.cc (rotate): new function. Makes it possible
3631 to rotate a stencil around a given offset.
3633 * lily/grob.cc (get_print_stencil): add rotation support
3635 * lily/stencil-interpret.cc (interpret_stencil_expression):
3636 add rotation support
3638 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3640 * scm/define-grob-properties.scm: add 'rotation property
3642 * scm/define-markup-commands.scm: add rotate markup command
3644 * scm/output-ps.scm: add rotation support in PostScript backend
3646 * scm/output-svg.scm: add rotation support in SVG backend
3648 2006-05-13 Graham Percival <gpermus@gmail.com>
3650 * Documentation/user/music-glossary.itely: French correction.
3652 * Documentation/user/programming-interface.itely: major
3653 new docs, some reorg, some info from Nicolas.
3655 * Documentation/user/ various: small fixes.
3657 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3659 * Documentation/user/programming-interface.itely (Markup
3660 programmer interface): Remove duplicate text.
3662 2006-05-12 Graham Percival <gpermus@gmail.com>
3664 * Documentation/user/context-example.eps: new file.
3666 * Documentation/user/changing-defaults.itely: set up file to
3669 * Documentation/user/programming-interface.itely: changes
3672 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3674 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3676 2006-05-11 Graham Percival <gpermus@gmail.com>
3678 * Documentation/user/programming-interface.itely: first round of
3679 editing and merging emails from Nicolas.
3681 * Documentation/user/scheme-tutorial: minor edit.
3683 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3685 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3687 (Xml_node.message): use it.
3689 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3690 oops. Add duration argument.
3692 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3694 * lily/paper-column-engraver.cc (make_columns):
3695 * scm/define-grobs.scm: Revert my previous change and set the default
3696 in define-grobs.scm instead.
3698 2006-05-09 Graham Percival <gpermus@gmail.com>
3700 * Documentation/user/changing-defaults.itely: general editing,
3701 info about \set and \override.
3703 * Documentation/user/tweaking.itely, advanced-notation.itely:
3704 fixes from Dave Luttinen, thanks!
3706 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3708 * lily/paper-column-engraver.cc (make_columns): By default, a column
3709 needs to be breakable.
3711 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3713 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3715 (musicxml_time_to_lily): idem
3716 (musicxml_key_to_lily): idem
3717 (instrument_drumtype_dict): dict for supported drumtypes.
3718 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3719 moments and pending mm rests
3720 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3721 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3722 (musicxml_voice_to_lily_voice): add mode change.
3723 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3724 speed and less memory usage (factor 5 to 10).
3725 (convert): write -defs.ly and driver file separately so people
3726 can script their own part extraction.
3728 * python/musicxml.py (minidom_demarshal_node): new function:
3729 separate minidom handling.
3730 (lxml_demarshal_node): new function: support lxml.etree too.
3731 (Xml_node.message): new function: verbose error message, with XML
3732 path to offending node.
3733 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3734 (Part_list.generate_id_instrument_dict): new method: collect
3735 instrument names, to be able to set drum_type.
3736 (Part.interpret): handle underfull measures
3737 (Part.interpret): assign instrument names.
3739 * python/musicexp.py (Output_printer.close): new method
3740 (MusicWrapper.print_ly): new class: support other modes,
3742 (BarCheck.print_ly): new class. Support bar checks, with comments
3743 and fancy barchecks.
3744 (NoteEvent.__init__): also set drum_type for drum notes.
3745 (MultiMeasureRest.lisp_expression): dump mm rests.
3747 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3748 line-break-permission if forbidBreak is not set.
3750 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3752 * scm/define-context-properties.scm:
3753 * scm/define-grob-properties.scm:
3754 * scm/define-grobs.scm:
3755 * scm/define-music-display-methods.scm:
3756 * scm/define-music-properties.scm:
3757 * scm/define-music-types.scm:
3758 * scm/music-functions.scm:
3759 * ly/declarations-init.ly:
3760 * lily/include/constrained-breaking.hh:
3762 * lily/spaceable-grob.cc:
3763 * lily/simple-spacer.cc:
3764 * lily/paper-score.cc:
3765 * lily/paper-column.cc:
3766 * lily/paper-column-engraver.cc:
3768 * lily/gourlay-breaking.cc:
3769 * lily/constrained-breaking.cc:
3770 * python/convertrules.py:
3771 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3772 "page-break-penalty" and "line-break-permission".
3773 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3774 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3776 * lily/bar-engraver.cc:
3777 * lily/beam-engraver.cc:
3778 * lily/forbid-break-engraver.cc:
3779 * lily/ligature-engraver.cc:
3780 * lily/paper-column-engraver.cc:
3781 * lily/percent-repeat-engraver.cc:
3782 * lily/score-engraver.cc:
3783 * lily/score-engraver.hh:
3784 * lily/paper-column-engraver.hh:
3785 Inter-engraver communication regarding line breaks is done through context
3786 properties (Score.forbidBreak) instead of function calls.
3788 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3790 * VERSION (PACKAGE_NAME): release 2.9.4
3792 2006-05-08 Graham Percival <gpermus@gmail.com>
3794 * Documentation/user/working.itely: proofreading from Dave
3797 * Doucmentation/user/README.txt: updated with manual style info.
3799 * Documentation/user/ various: trim linewidth to 78 chars.
3801 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3803 * scm/define-grob-properties.scm (all-internal-grob-properties):
3804 remove chord-tremolo property.
3806 * lily/beam.cc (get_beam_segments): don't use stem position as
3807 base for broken ends.
3809 2006-05-06 Graham Percival <gpermus@gmail.com>
3811 * Documentation/user/putting.itely: proofreading from Dave
3814 * Documentation/user/ various: more reorg and clarifications.
3816 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3818 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3820 * ly/music-functions-init.ly: new function featherDurations
3822 * lily/beam.cc: read grow-direction for feathered beaming.
3824 * Documentation/topdocs/NEWS.tely (Top): typo.
3826 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3828 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3831 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3832 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3833 used by music streams.
3835 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3836 lily/stream-event.cc, lily/stream-event-scheme.cc,
3837 lily/listener.cc, lily/scheme-listener.cc,
3838 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3839 lily/include/stream-event.hh, lily/include/listener.hh,
3840 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3841 Created data structures for music streams.
3843 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3845 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3846 construction of a beam.
3849 * flower/include/std-vector.hh (default_compare): use only one comparison.
3851 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3852 (note-by-number): further attachment fixes.
3854 * scm/lily-library.scm (ordered-cons): new function.
3855 (interval-index): new function
3857 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3859 * lily/note-head.cc (get_stem_attachment): new function.
3861 * scm/define-markup-commands.scm (note-by-number): read 'style
3864 * input/regression/markup-note.ly: show note-head style option.
3866 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3869 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3871 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3873 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3875 * lily/include/constrained-breaking.hh: GCC 4 fix.
3877 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3879 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3880 Replace it with functions get_line_forces and get_line_configuration.
3881 (class Simple_spacer): Make data private.
3882 Rewrite compression algorithm to be faster and simpler.
3884 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3885 * lily/gourlay-breaking.cc (solve):
3886 * lily/constrained_breaking.cc (space_line):
3887 Change it to the new simple-spacer code.
3889 * lily/paper-score.cc (get_paper_systems):
3892 Delay breaking the systems until they are requested.
3893 (find_break_indices):
3894 Use vsize for indices.
3896 Move the "Calculating line breaks" message here.
3898 * lily/system.cc (pre_processing):
3899 Move the "Calculating line breaks" message away from here.
3900 (break_into_pieces):
3901 Allow multiple calls to this function in sequence (with touching-but-
3902 not-overlapping breakpoints).
3904 * lily/constrained-breaking.cc:
3905 Replace most of the get_XXXX functions with get_line_details.
3906 Only calculate the force for each line. Calculate configurations only
3907 for the lines we will actually use.
3908 Replace cols_ with lines_.
3910 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3912 * mf/GNUmakefile (depth): remove FC_FIND.
3914 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3916 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3918 * scm/framework-ps.scm (write-preamble): new function.
3919 (write-preamble): load mac fonts via fondu, even if gs-font-load
3922 2006-05-03 Werner Lemberg <wl@gnu.org>
3924 * mf/GNUmakefile (FC_FIND): Fix typo.
3926 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3928 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3930 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3932 * stepmake/aclocal.m4: run python-config for crosscompiling
3935 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3936 -f png for HTML, TEXINFO formats.
3938 * input/tutorial/lbook-html-test.html: new file.
3940 * lily/include/tie-formatting-problem.hh (class
3941 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3942 [column, direction]. This fixes laissez vibrer ties.
3944 * flower/include/tuple.hh (struct Tuple2): new file.
3946 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3947 $(FCMATCH), only if $(NCSB_DIR) not set.
3949 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3951 * config.make.in (DOCUMENTATION): set FCMATCH.
3953 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3955 2006-05-03 Graham Percival <gpermus@gmail.com>
3957 * Documentation/user/ various: final round of reorg.
3959 * Documentation/user/instrument-notation.itely: some more
3960 fixes from Eduardo, thanks!
3962 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3964 * VERSION (PACKAGE_NAME): release 2.9.3
3966 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3968 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3970 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3972 * scm/define-grob-properties.scm (all-user-grob-properties):
3973 Correct typo, thanks to Eduardo.
3975 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3977 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3979 * buildscripts/lilypond-words.py (F): indent fix.
3981 * input/regression/tie-arpeggio-collision.ly: new file.
3983 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3984 function: store outlines per column rank.
3986 * lily/include/tie-configuration.hh (class Tie_configuration): add
3987 column_ranks_ to specification and configuration, to distinguish
3988 between ties for different heads in arpegiated chords.
3990 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3992 * *.py: more 4 space indents.
3994 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3996 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3998 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4000 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4002 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4004 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4006 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4008 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4010 * python/convertrules.py (conv): indent 4 for python files.
4012 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4014 * Documentation/user/changing-defaults.itely (Creating contexts):
4015 Clarify \new semantics.
4017 2006-04-28 Graham Percival <gpermus@gmail.com>
4019 * Documentation/user/ various: major new sections in the
4020 Learning manual, slight reorg elsewhere.
4022 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4024 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4026 * scm/framework-ps.scm (output-framework): remove PageMedia
4028 2006-04-27 Graham Percival <gpermus@gmail.com>
4030 * Documentation/user/ tweaks.itely, working.itely: new
4031 files, being more advanced "learning manual" chapters.
4033 * Documentation/user/ tutorial, putting, lilypond: reorg.
4035 2006-04-26 Graham Percival <gpermus@gmail.com>
4037 * input/regression/lyric-combine-polyphonic.ly: fixed test
4038 (no more "can't find context `one'" error).
4040 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4042 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4044 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4046 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4048 * lily/relocate.cc (read_relocation_dir): new function.
4050 2006-04-26 Graham Percival <gpermus@gmail.com>
4052 * Documentation/user/instrument-notation.itely: a few more fixes
4053 from Eduardo, thanks!
4055 * Documentation/user/README.txt: new file; contains info on
4056 style that used to be in lilypond.tely.
4058 * Documentation/user/ various: first round of doc reorg.
4060 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4061 graphic; this probably causes problems on some pdf
4062 viewers, notably Adobe Acrobat.
4064 2006-04-24 Graham Percival <gpermus@gmail.com>
4066 * Documentation/user/instrument-notation.itely: many alterations
4067 to Vocal music, from Eduardo Viera.
4069 2006-04-23 Graham Percival <gpermus@gmail.com>
4071 * Documentation/user/instrument-notation.itely: fix \new
4072 instead of \context problem.
4074 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4076 * lily/relocate.cc (expand_environment_variables): new function.
4078 (read_relocation_file): id.
4080 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4082 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4084 * ly/engraver-init.ly: remove old comments from TabVoice
4086 2006-04-20 Graham Percival <gpermus@gmail.com>
4088 * Documentation/user/instrument-notation.itely: added Erlend's
4089 latest doc patch, thanks!
4091 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4093 * lily/include/slur.hh:
4095 * lily/phrasing-slur-engraver.cc:
4096 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4097 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4098 Slur_engraver:: and putting it in
4099 Slur::auxiliary_acknowledge_extra_object ().
4101 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4103 * lily/note-collision.cc: fix a comment
4105 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4107 * stepmake/bin/add-html-footer.py: fix footer position in
4108 generated html files: before </body> and </html> tags.
4110 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4112 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4113 Earlier successive `make' commands finally compiled ok.
4115 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4117 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4119 * lily/include/stem-tremolo.hh:
4120 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4124 * lily/include/lookup.hh: add rotated_box ()
4126 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4128 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4129 been generated. Fixes "can't get `--help'" bug after make clean.
4131 * THANKS: alphabetize contributors.
4133 2006-04-17 Graham Percival <gpermus@gmail.com>
4135 * Documentation/user/instrument-notation.itely: added Erlend's
4136 tabs and banjo doc patch. Thanks!
4138 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4140 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4142 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4144 * scm/output-lib.scm: add some more predefined string tunings.
4146 * Documentation/user/instrument-notation.itely: and doc them.
4148 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4150 * ly/engraver.ly: Remove obsolete comments.
4152 * ly/gregorian-init.ly: Define default layout block.
4154 * input/puer-fragment.ly: Updated and extended.
4156 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4158 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4159 pdf conversion behaviour.
4161 * flower/file-name.cc (dir_name)
4162 (get_working_directory): Move from relocate.cc.
4164 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4166 * lily/relocate.cc: Encapsulate sys/stat.h in
4169 2006-04-14 Graham Percival <gpermus@gmail.com>
4171 * Documentation/user/ various: small updates from Cameron
4172 and Juergen, thanks!
4174 * Documentation/user/ various: small updates of my own.
4176 * THANKS: 2.7 -> 2.8.
4178 2006-04-11 Graham Percival <gpermus@gmail.com>
4180 * scm/define-context-properties.scm: typo.
4182 * Documentation/user/ : many more small updates.
4184 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4186 * scm/define-music-types.scm: disposed "docme".
4188 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4190 * lily/hairpin.cc: make niente circles a bit smaller.
4192 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4194 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4195 get-pfa and get-*-fonts targets.
4197 2006-04-10 Graham Percival <gpermus@gmail.com>
4199 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4200 music-glossary, programming-interface: more minor fixes
4203 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4205 * scm/define-context-properties.scm: another old \property update.
4206 This time tested for compiling!
4208 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4210 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4212 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4214 * scm/define-context-properties.scm (all-user-translation-properties):
4215 * Documentation/user/global.itely (Page formatting): Compile fix.
4217 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4219 * Documentation/user/advanced-notation.itely (Polymetric
4220 notation): Update the example to use the "+" symbol and add link
4221 to input/test/compound-time.ly.
4223 2006-04-08 Graham Percival <gpermus@gmail.com>
4225 * scm/define-grob-properties.scm: clarify docs for #'direction.
4227 * scm/define-context-properties.scm: update old \property override.
4229 * Documentation/user/ advanced-notation, global, lilypond-book:
4230 more minor doc updates.
4232 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4234 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4236 * scm/backend-library.scm (search-gs): oops.
4238 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4240 * scripts/lilypond-book.py (output): use base, not filename for href.
4242 * scm/backend-library.scm: only look for gs.
4244 * scripts/lilypond-book.py (output): fix printfilename.
4246 * lily/parser.yy (music_function_musicless_prefix): fold together
4247 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4249 * lily/slur.cc (print): only set font-size if not set yet.
4251 * lily/slur-configuration.cc (add_score): improved layout of debug
4254 2006-04-05 David Feuer <David.Feuer@gmail.com>
4256 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4257 (draw_circle): Hopefully fixed regression.
4258 Improved documentation for several procedures.
4260 2006-03-04 Werner Lemberg <wl@gnu.org>
4262 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4264 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4266 * scripts/musicxml2ly.py (bindir): add dynamic
4269 2006-04-04 Graham Percival <gpermus@gmail.com>
4271 * Documentation/user/ basic-notation, advanced-notation, putting,
4272 instrument-notation, invoking, lilypond, THANKS: another ream of small
4273 fixes from the Doc Helpers.
4275 2006-04-03 David Feuer <David.Feuer@gmail.com>
4277 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4279 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4281 * Cleaned up interfaces between PostScript and Scheme, and moved
4282 computations from PostScript to Scheme:
4284 * music-drawing-routines.ps
4285 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4286 with stroke_and_fill throughout.
4287 (euclidean_length, print_letter, draw_box): Deleted unused
4288 procedures. If someone needs draw_box, implement it using
4289 draw_round_box; don't duplicate code.
4290 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4291 Refactored/cleaned up interfaces.
4294 * output-ps.scm: reordered arguments to PostScript functions to
4295 match new interfaces
4296 (glyph-string): Rewrote glyph-string.
4297 (grob-cause): Replaced string-append with format.
4298 (repeat-slash): Rewrote to do computation here.
4299 (round-filled-box): Rewrote to do computation here.
4301 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4303 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4305 * stepmake/stepmake/toplevel- targets.make: print help info about
4308 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4310 * input/regression/hairpin-circled.ly: new file
4312 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4314 * lily/hairpin.cc (print): add support for circled tip
4316 * scm/define-grob-properties.scm: add circled-tip parameter
4318 * scm/define-grobs.scm: init circled-tip to false
4320 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4322 * scm/music-functions.scm (quote-substitute): set
4325 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4327 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4330 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4332 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4334 2006-03-31 David Feuer <david.feuer@gmail.com>
4336 * scm/framework-ps.scm:
4338 * scm/output-ps.scm: glyph-string now produces smaller, more
4339 readable, and probably faster PostScript. Several findfont
4340 scalefont setfont instances changed to selectfont
4341 Hacked-up string-appends changed to formats.
4343 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4345 2006-03-30 Graham Percival <gpermus@gmail.com>
4347 * scm/lily-library.scm: make "no version" warning message more polite.
4349 * lily/music.cc: add double quotes to failed octave check.
4351 * Documentation/user/ advanced-notation, changing-defaults,
4352 instrument-notation, invoking, music-glossary: whole bunch of minor
4355 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4357 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4358 $(buildscriptdir) iso. depth.
4360 * VERSION (PACKAGE_NAME): release 2.9.1
4362 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4364 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4366 * VERSION (PATCH_LEVEL): bump version number.
4368 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4371 * lily/pango-font.cc (pango_item_string_stencil): use
4374 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4375 $(outdir)/emmentaler-%.svg): remove canary.
4377 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4378 glyphnames if we have a ttf font.
4380 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4382 * Documentation/user/advanced-notation.itely (Font selection):
4383 Corrected reference to the font-family-override.ly example.
4385 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4387 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4388 stem-tremolo object in the stem (or else the stem might not be
4391 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4393 * lily/ttf.cc (print_trailer): only print existing glyphs.
4395 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4397 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4398 position the tremolo based on the position of the notehead.
4400 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4401 notes and update the texidoc line with the new positioning rules.
4403 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4405 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4407 * scripts/lilypond-book.py (Module): set default for linewidth if
4410 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4412 * VERSION (PACKAGE_NAME): release 2.9.0.
4414 * input/regression/stem-tremolo-position.ly: new file.
4416 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4418 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4420 * lily/stem-tremolo.cc (print): position
4421 the tremolo depending only on the end of the stem
4422 and not on the notehead
4423 (raw_stencil): center, on the middle staff line, the
4424 flag that is closest to the end of the stem (previously
4426 (calc_width): add this callback to shorten a tremolo when
4427 it is beamed or it is stemup with a flag
4428 (style): add this callback to make a tremolo rectangular when
4429 it is beamed or it is stemup with a flag
4430 (rotated_box): this is like Lookup::beam but makes a rotated
4431 rectangle instead of a parallelogram
4433 * lily/stem.cc (calc_stem_info): make sure the stem
4434 is long enough to fit the tremolo
4435 (calc-length): reduce the length of tremolo stems since the
4436 tremolo code is now capable of better positioning
4438 * scm/define-grobs.scm: make calc_width the default beam-width
4439 callback for stem-tremolo and add the style callback
4441 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4443 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4446 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4448 * lily/ttf.cc (make_index_to_charcode_map): restore old
4451 2006-03-28 Werner Lemberg <wl@gnu.org>
4453 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4455 2006-03-28 Graham Percival <gpermus@gmail.com>
4457 * THANKS: update for 2.9, add section for Documentation helpers.
4459 * Documentation/topdocs/NEWS.tely: compile fix.
4461 * Documentation/user/ basic-notation, global, advanced-notation,
4462 examples.itely: minor fixes from mailist.
4464 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4466 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4469 * lily/ttf.cc (print_trailer): use it.
4471 * lily/pango-font.cc (get_unicode_name): new function.
4473 * lily/ttf.cc (make_index_to_charcode_map): move function from
4475 (print_trailer): substitute uniXXXX name if applicable.
4477 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4478 (pango_item_string_stencil): use it to generate uniXXXX names.
4480 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4481 note heads, for uniform widths in shape note output.
4482 (overdone_heads): hmm. remove them again.
4484 * scripts/lilypond-book.py (output): add links to filenames.
4486 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4488 * lily/note-collision.cc (get_clash_groups): only consider when
4489 Note_column::dir <> CENTER.
4491 * scripts/lilypond-book.py (get_option_parser): init output_name
4494 2006-03-24 Graham Percival <gpermus@gmail.com>
4496 * Documentation/topdocs/NEWS.tely: add @end itemize
4498 * Documentation/user/ global, advanced-notation: minor
4501 2006-03-23 Graham Percival <gpermus@gmail.com>
4503 * Documentation/user/ lilypond.tely, music-glossary,
4504 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4506 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4508 * mf/GNUmakefile: don't install .enc files.
4510 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4512 * VERSION (PATCH_LEVEL): bump to 2.9.0
4514 2006-03-22 Graham Percival <gpermus@gmail.com>
4516 * Documentation/user/advanced-notation.itely: minor fixes
4519 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4521 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4523 * branch lilypond_2_8
4525 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4527 * scripts/lilypond-book.py (samefile): new function, for windoze
4530 2006-03-21 Graham Percival <gpermus@gmail.com>
4532 * ly/engraver-init.ly: add info about StaffGroup.
4534 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4536 * input/regression/stem-direction-context.ly: idem.
4538 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4542 * input/regression/page-layout-twopass.ly: comment out \markup so
4545 * lily/instrument-name-engraver.cc (finalize): add to instrument
4546 name global System. This also fixes chopped instrument names, but
4547 doesn't crash when there are slurs/beams.
4549 * lily/slur-configuration.cc (add_score): disallow negative slur
4552 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4554 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4556 * lily/instrument-name-engraver.cc (process_music): kludge: add
4557 InstrumentName spanner to axis group of left bound. Fixes chopped
4558 off instrument names in EPS images.
4560 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4562 * scripts/abc2ly.py (option_parser): update to 2.7.40
4564 2006-03-20 Graham Percival <gpermus@gmail.com>
4566 * THANKS: move small doc contributors to SUGGESTIONS.
4568 * Documentation/user/ basic-notation, advanced-notation,
4569 global: small changes from mailist.
4571 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4573 * Documentation/user/advanced-notation.itely (Text marks): update
4574 for new rehearsalMarkAlignSymbol convention.
4576 * VERSION (PATCH_LEVEL): bump version.
4578 * input/test/instrument-name-align.ly: new file.
4580 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4582 * input/test/instrument-name-align.ly: new file. Document how to
4583 align instrument names.
4585 * lily/mark-engraver.cc: remove properties.
4587 * scm/define-context-properties.scm
4588 (all-user-translation-properties): remove align symbol properties
4589 for barnumber/reh. mark.
4591 * lily/break-align-interface.cc (self_align_callback): new
4592 interface, new function. Look at complete alignment. This handles
4593 tunable break alignments in case break-align-symbols are missing.
4595 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4597 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4599 * python/convertrules.py (conv): mark/bar number alignment rule.
4601 * lily/break-align-interface.cc (calc_positioning_done): also
4602 store offset from last visible break-alignment to its
4603 neighbor. This makes alignment on non-visible objects more reliable.
4605 * po/lilypond.pot (Module): ran po-replace.
4607 * input/regression/tie-single-manual.ly (Module): new file.
4609 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4610 look at has_manual_position_.
4611 (from_ties): set has_manual_position_ if tie has staff-position set.
4613 * lily/tuplet-bracket.cc (calc_positions): idem.
4615 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4618 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4620 * scm/define-markup-commands.scm (smallCaps): new markup command
4621 for turning a text to small caps using smaller font size and upper
4624 2006-03-17 Graham Percival <gpermus@gmail.com>
4626 * Documentation/user/ examples, instrument-notation,
4627 advnaced-notation: minor fixes from mailist.
4629 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4631 * Documentation/user/tutorial.itely (First steps): change example
4634 2006-03-17 Graham Percival <gpermus@gmail.com>
4636 * Documentation/user/ examples, advanced: minor changes from mailist.
4638 * THANKS: add Geoff Horton, for documentation stuff.
4640 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4642 * python/lilylib.py (system): revert have_select kludge.
4644 * Documentation/user/tutorial.itely (Commenting input files):
4645 update version numbers in doc.
4647 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4648 bound-padding to multi-measure-interface
4650 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4652 * input/test/engraver-example.ily: update version number.
4654 * VERSION (PACKAGE_NAME): release 2.7.39
4656 * lily/note-spacing.cc (get_spacing): heighten threshold where
4657 accidentals/arpeggios influence previous spacing fully.
4659 * lily/rest.cc (y_offset_callback): only use direction if
4660 staff-position wasn't set before.
4662 * lily/bar-number-engraver.cc: add support for
4663 barNumberAlignSymbol.
4664 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4666 * lily/pointer-group-interface.cc (set_ordered): new function.
4667 (add_unordered_grob): new function.
4669 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4670 to ordered, unless the opposite has been proved. This fixes
4671 random reordering of large object groups across linebreaks,
4674 * lily/main.cc (do_chroot_jail): printf format fix.
4676 * lily/tie-formatting-problem.cc (generate_configuration):
4677 multiply y-shift for dot with direction.
4679 * scm/define-markup-commands.scm (note-by-number): put (magstep
4680 size) in y-attach too.
4682 * Documentation/topdocs/NEWS.tely (Top): show override.
4684 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4685 direction for stems.
4687 2006-03-15 Graham Percival <gpermus@gmail.com>
4689 * Documentation/user/ changing-defaults, global: minor
4692 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4694 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4696 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4697 breakable items after uniformly stretched notes.
4699 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4700 outline with outer edge of note heads. This prevents infinity
4701 problems with tied whole notes.
4703 * scripts/lilypond-book.py (do_file): use os.popen
4705 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4707 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4709 * Documentation/user/invoking.itely: Add ragged-right to bug report
4712 2006-03-14 Graham Percival <gpermus@gmail.com>
4714 * Documentation/user/global.itely: small fix from mailist.
4716 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4718 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4719 file descriptor returned by tempfile.mkstemp() when writing
4720 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4723 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4725 * po/fi.po: newline bugfix.
4727 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4729 * scm/paper.scm (paper-alist): Rounding fixes.
4731 2006-03-13 Graham Percival <gpermus@gmail.com>
4733 * Documentation/user/ changing-defaults, instrument-notation,
4734 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4736 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4740 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4742 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4745 * python/lilylib.py (print_environment): move ps_page_count to
4748 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4750 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4752 * scm/framework-ps.scm (embed-document): new function. Use to
4755 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4757 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4759 * Documentation/user/instrument-notation.itely (Setting simple
4760 songs): Added \book{...} around the full example, so the separate
4761 markups are included in the printed example.
4763 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4765 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4768 * python/lilylib.py (system): rewrite system() using
4769 subprocess. Remove >& redirection trickery.
4771 2006-03-11 Graham Percival <gpermus@gmail.com>
4773 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4774 notation-appendices.itely: minor fixes from mailist.
4776 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4778 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4779 unsplit man also needs images.
4781 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4783 * VERSION (PACKAGE_NAME): 2.7.38 released.
4785 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4787 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4790 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4792 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4793 respects the Score.skipTypesetting property.
4795 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4797 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4798 Prolog. No %%EOF after CFF file.
4800 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4802 * lily/constrained-breaking.cc (get_max_systems): used to return a
4804 (combine_demerits): use pointers to reduce copying data
4805 (calc_subproblem): idem
4806 (get_page_penalty): add page turn penalties
4808 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4810 * Documentation/user/invoking.itely (Invoking lilypond): better
4811 explanation of -e usage.
4813 * lily/main.cc (main_with_guile): don't append to
4814 init_scheme_code_string
4816 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4818 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4820 * scripts/convert-ly.py (do_options): don't print help for
4823 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4824 @code and @example. Update from texinfo.tex from CVS.
4826 2006-03-08 Graham Percival <gpermus@gmail.com>
4828 * Documentation/user/scheme-tutorial.itely: clarifies distances
4829 measured in staff-spaces.
4831 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4833 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4834 consider[k] is true.
4836 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4838 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4839 consider columns that have originals. Unifies spacing for mm
4840 rests around line breaks.
4842 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4843 (set_text_rods): idem.
4844 (calculate_spacing_rods): new function: share code between
4845 set_text_rods and set_spacing_rods.
4846 (set_text_rods): take extents of bounds into account.
4848 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4850 * Documentation/user/basic-notation.itely (Writing music in
4851 parallel): don't use relative.
4853 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4855 * ly/music-functions-init.ly (Module): add shiftDurations
4857 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4859 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4861 * ly/engraver-init.ly: init vocalName to nil.
4863 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4865 * scm/music-functions.scm (music->make-music): bugfix,
4866 KeyChangeEvents are now handled correctly.
4868 * scripts/lilypond-book.py: Add --debug option.
4870 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4872 * python/lilylib.py: add tempfile.
4874 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4876 * VERSION (PACKAGE_NAME): release 2.7.37
4878 * python/lilylib.py (ps_page_count): remove make_ps_images().
4879 (ps_page_count): remove mkdir_p
4880 (system): remove cleanup_temp.
4881 (exit): remove lilypond_version_(check)
4882 (error_log): remove pseudo_filter_p
4887 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4890 * lily/accidental-engraver.cc (make_standard_accidental): only add
4891 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4893 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4894 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4895 Make incompatibilities.
4897 * scm/output-ps.scm (grob-cause): replace backslashes by /
4898 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4900 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4902 * cygwin/GNUmakefile: Install fixes.
4904 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4906 * lily/note-head.cc (head::get_balltype): Compile fix.
4908 * flower/file-name.cc (dos_to_posix): Flower string fix.
4910 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4912 * python/lilylib.py: pychecker cleanups.
4914 * scripts/lilypond-book.py
4915 (Lilypond_snippet.output_print_filename): pychecker cleanups
4917 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4919 * python/lilylib.py (underscore): remove identify() , warranty()
4921 * ps/music-drawing-routines.ps: change Border routine for GSView
4924 * lily/stem.cc (height): use quantize-positions. This triggers
4925 set_stem_lengths, so scripts on beamed stems are handled correctly.
4927 * lily/side-position-interface.cc (aligned_side): check if edges
4928 of script are inside staff. Fixes accent of edge of the staff.
4930 * input/regression/staccato-pos.ly: more examples.
4932 * stepmake/aclocal.m4 (depth): fix bashism.
4934 * lily/lyric-combine-music-iterator.cc: move from
4935 new-lyric-combine-iterator.cc
4936 (process): add pending_grace_lyric_ member to delay lyrics on
4939 * lily/system-start-text.cc (print): suicide if we don't have any
4940 elements. Fixes hara kiri'd instrument names.
4942 * scripts/mup2ly.py (Module): remove.
4944 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4946 * Documentation/user/global.itely (A single music expression):
4947 close @lilypond properly
4949 * lily/volta-bracket.cc (modify_edge_height): change from
4950 after_line_breaking_callback. Suicide last bracket if appropriate.
4952 * python/lilylib.py: strip getopt support
4954 * scripts/etf2ly.py (do_options): use optparse
4956 * scripts/midi2ly.py: optparse, strip lilylib copy.
4958 * scripts/abc2ly.py (voices): use optparse.
4960 * stepmake/stepmake/generic-vars.make: new function absdir.
4962 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4964 * scripts/lilypond-book.py (find_file): use global_options for
4967 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4970 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4972 * python/lilylib.py (get_global_option): ughness for extracting
4973 global options from lilylib.
4974 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4976 * scripts/lilypond-book.py (get_option_parser): use optparse for
4977 option handling. Put options in global_options variable.
4979 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4981 * Documentation/index.html.in: clarify.
4983 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4985 * scm/layout-page-layout.scm (write-page-breaks): add a
4986 music-system-heights property to the page layout output.
4988 * scm/page.scm (make-page-stencil): take footer into account when
4989 computing the 'space-left page property
4990 (annotate-space-left): take footer into account when annonating
4993 2006-02-28 Graham Percival <gpermus@gmail.com>
4995 * Documentation/user/ advanced-notation, global: more (final)
4996 docs for music expressions, removed special fermatas.
4998 2006-02-27 Graham Percival <gpermus@gmail.com>
5000 * Documentation/user/ basic-notation, global: minor changes
5003 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5005 * scm/framework-ps.scm:
5006 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5007 layer for inf? and nan? from framework-ps to lily-library.
5009 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5011 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5012 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5014 * buildscripts/substitute-encoding.py (Module): remove file.
5016 * mf/GNUmakefile: more PFA strippage.
5018 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5020 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5023 * scm/framework-ps.scm: remove font name munging.
5025 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5027 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5029 * scm/markup.scm (define-markup-command): change
5030 def-markup-command to define-markup-command
5032 * scm/music-functions.scm (define-music-function): change
5033 def-music-function to define-music-function.
5035 * python/convertrules.py (conv): rules for def-music-function
5036 and def-markup-commands
5038 * Documentation/user/programming-interface.itely,
5039 input/no-notation/display-lily-tests.ly,
5040 input/regression/lily-in-scheme.ly,
5041 input/regression/markup-user.ly,
5042 input/regression/music-function.ly, input/regression/tie-chord.ly,
5043 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5044 ly/gregorian-init.ly: use new macro names (define-music-function,
5045 define-markup-command).
5047 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5049 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5050 (output): add comments to lp-book latex output.
5052 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5055 2006-02-23 Graham Percival <gpermus@gmail.com>
5057 * Documentation/user/ tutorial, global: minor changes.
5059 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5061 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5062 blocks (for make 3.80)
5064 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5065 \notemode so that user should not have to explicitely type it.
5067 * scm/define-music-display-methods.scm: various
5068 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5071 * input/no-notation/display-lily-tests.ly: new tests for
5072 \applyOutput and \applyContext
5074 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5076 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5077 changed it slightly so that the number of systems returned by
5078 solve () will be the same as the last value passed to resize
5079 (). I've also added more documentation, removed casts, fixed style
5080 problems and put in some recovery if constraints aren't satisfied."
5082 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5084 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5085 for emacs < 22 compatibility.
5086 (count-rexp): Use it.
5087 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5088 substring juggling (Milan Zamazal).
5090 2006-02-23 Graham Percival <gpermus@gmail.com>
5092 * Documentation/user/ basic-notation, advanced-notation,
5093 global.itely, invoking.itely, tutorial,itely:
5094 minor fixes from mailist.
5096 * scm/define-markup-commands.scm: improve docs of \filled-box.
5098 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5100 * Documentation/index.html.in: changes concern the previous release.
5102 * input/regression/+.ly: cultivate typographical terminology.
5104 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5106 * scm/define-grob-interfaces.scm (parentheses-interface): add
5107 padding to parentheses-interface.
5109 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5110 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5112 * VERSION (PATCH_LEVEL): release 2.7.36
5114 * lily/slur.cc: add avoid-slur (ugh.)
5116 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5117 intersection gets smaller. This fixes slurs over extreme points.
5119 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5120 stems with neutral-direction set.
5122 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5124 * lily/open-type-font.cc (load_table): format error.
5126 * lily/change-iterator.cc (process): format fix.
5128 * flower/include/international.hh (_f): idem.
5130 * flower/include/std-string.hh: add format printf attribute.
5132 * scm/define-grobs.scm (all-grob-descriptions): height of all
5133 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5135 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5138 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5140 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5142 * input/regression/: upgraded syntax for some files.
5144 * THANKS: Add bughunters.
5146 2006-02-22 Graham Percival <gpermus@gmail.com>
5148 * Documentation/user/ invoking.itely, advanced-notation.itely,
5149 global.itely: long-awaited "let's make chapter 10 not suck"
5150 update. Rearrange chapter 10; now called "global issues",
5151 addresses file structure, etc. Some info from other files
5152 moved into global.itely.
5154 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5156 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5157 catch trill-span-event notes.
5159 * Documentation/user/examples.itely (Ancient notation templates): typo.
5162 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5164 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5166 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5168 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5170 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5171 froum Laissez_vibrer_engraver.
5173 * ly/declarations-init.ly (repeatTie): add \repeatTie
5175 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5177 * scm/define-grob-properties.scm (all-user-grob-properties): add
5178 head-direction property.
5180 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5181 from_lv_ties. Take head direction argument.
5183 * lily/semi-tie-column.cc: rename from
5184 laissez-vibrer-tie-column.cc. Rename class too.
5186 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5189 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5191 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5193 (find_breaks): idem.
5195 2006-02-21 Graham Percival <gpermus@gmail.com>
5197 * Documentation/user/advanced-notation.itely: fixed make-moment]
5200 * Documentation/user/basic-notation.itely: more clarification to
5203 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5205 * lily/include/constrained-breaking.hh (class
5206 Constrained_breaking): new file.
5208 * lily/constrained-breaking.cc (resize): new file.
5210 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5212 * Documentation/user/advanced-notation.itely (Clusters): insert
5215 * lily/tie-column.cc (calc_positioning_done): support for
5218 * lily/tie-formatting-problem.cc
5219 (generate_extremal_tie_variations): factor out.
5220 (score_ties_configuration): annotate all tie
5221 (print_ties_configuration): new routine.
5222 (generate_configuration): nudge extremal ties outside of the head
5224 (score_ties_configuration): oops. convert to staff-space before
5225 determining position symmetry.
5227 2006-02-20 Graham Percival <gpermus@gmail.com>
5229 * Documentation/user/*-notation.itely: misc minor editing,
5230 shifting doc sections around.
5232 * Documentation/user/*-notation-itely, global.itely,
5233 changing-defaults.itely: added new stuff from NEWS.
5235 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5239 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5241 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5242 lilypond --verbose for lp-book.
5244 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5245 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5247 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5248 $(buildscript-dir) iso. absolute depth.
5250 * buildscripts/genicon.py (dir): thinko.
5252 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5254 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5256 * scm/output-lib.scm: swap darkcyan/darkyellow
5258 * THANKS: Add bughunters.
5260 2006-02-19 Graham Percival <gpermus@gmail.com>
5262 * Documentation/user/programming-interfaces.itely: fixed example.
5264 * Documentation/user/instrument-notation.itely: fix @{ @}.
5266 * scm/script.scm: add avoid-slur for \open.
5268 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5270 * lily/tie-formatting-problem.cc (score_configuration): use
5271 sliding score for min-length.
5273 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5274 spaghetti for icons.
5276 * buildscripts/genicon.py (program_name): new file.
5278 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5280 (generate_configuration): for small ties, also look for collisions
5281 at Y + DIR*h + DELTA_Y.
5282 (get_variations): consider variation for dot positions too.
5284 * lily/side-position-interface.cc (aligned_side): take abs for
5285 quantized rounded position. Fixes tenuto below staff.
5287 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5288 markers when necessary.
5290 * lily/program-option.cc (internal_set_option): add
5291 strict_infinity_checking option.
5293 * scm/output-lib.scm (cyan): swap yellow and cyan.
5295 2006-02-19 Graham Percival <gpermus@gmail.com>
5297 * darwin.patch: trivial linenumber update.
5299 * Documentation/user/ {various}: `\context foo = named' changed
5300 to `\new foo = "name"' in docs.
5302 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5304 * scm/stencil.scm (annotate-y-interval): use it.
5306 * scm/lily-library.scm (interval-sane?): new function.
5308 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5311 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5314 * flower/include/std-vector.hh (iterof): add iterof macro.
5316 * lily/enclosing-bracket.cc (width): new function.
5318 * lily/align-interface.cc (align_elements_to_extents): reinstate
5321 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5323 * Documentation/index.html.in: fix spelling: thankyous.
5325 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5327 * lily/lyric-hyphen.cc: typo.
5329 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5331 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5332 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5335 * VERSION: release 2.7.35
5337 * lily/beam.cc (get_default_dir): oops. Take abs () for
5339 (get_default_dir): use extreme position criterion only in absence
5340 of forced stem directions.
5342 * VERSION (PATCH_LEVEL): bump VERSION.
5344 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5345 dependencies. Necessary for -jX builds.
5347 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5349 * lily/relocate.cc (setup_paths): Yet another const fix.
5351 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5353 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5355 * lily/relocate.cc (setup_paths): oops.
5357 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5359 * Documentation/index.html.in: order links: html before PDF.
5361 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5363 * lily/tie-column-format.cc (Module): remove.
5365 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5367 * lily/text-spanner.cc (print): idem.
5369 * lily/dynamic-text-spanner.cc (print): only print line if longer
5372 * lily/auto-change-iterator.cc (change_to): formatting.
5374 * lily/beam.cc (get_default_dir): take extreme note head as input
5377 * lily/tie.cc (get_default_dir): only look directions for visible
5380 * lily/side-position-interface.cc (aligned_side): oops. Don't
5381 mutiply with direction. This fixes quantized (staccato, tenuto)
5382 scripts below notes.
5384 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5385 direction. Fixes c-lyrics-center-align.ly
5387 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5389 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5392 * lily/std-string.cc:
5393 * lily/include/std-vector.hh (split_string): Move and rename from
5394 lily/include/misc.hh, lily/misc.cc. Update callers.
5396 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5398 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5400 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5402 * flower/test-file.cc: New file.
5404 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5407 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5409 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5411 * flower/include/file-storage.hh: remove file.
5413 * lily/include/midi-item.hh (class Midi_track): idem.
5415 * lily/include/source.hh (class Sources): idem.
5417 * lily/include/performance.hh (class Performance): use vector
5420 * flower/include/cons.hh (class Cons): remove file.
5422 * flower/include/flower-proto.hh: remove template cruft.
5424 * lily/include/font-metric.hh: use size_t not vsize for indices.
5426 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5429 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5431 * lily/include/paper-book.hh (class Paper_book):
5432 make get_system_specs() public.
5434 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5435 the force=10000 case if we don't have a current-best.
5437 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5440 * flower/include/flower-proto.hh: remove outdated templates.
5442 * scm/page.scm: use annotate-spacing
5444 2006-02-15 Graham Percival <gpermus@gmail.com>
5446 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5448 * THANKS: moved Erlend Aasland to contributors.
5450 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5452 * config.hh.in: remove HAVE_PANGO_16
5454 * lily/tuplet-bracket.cc (calc_positions): multiply with
5455 staff-space for beam case. This fixes tuplets+beams on scaled
5458 * config.hh.in: remove all Kpathsea related defines.
5460 * lily/dot-column.cc (side_position): reach stem via dots->
5461 head->stem. Inspect all stems for dot collisions.
5463 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5466 * lily/bar-number-engraver.cc (process_music): document function
5469 * lily/score.cc (default_rendering): add pscore, not systems
5472 * lily/paper-book.cc (get_system_specs): separate generation of
5475 * flower/include/std-vector.hh: don't include config.hh
5477 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5479 * flower/include/std-vector.hh: Better wrapper compatibility with
5482 * flower/include/flower-proto.hh: Remove cheap forward declaration
5485 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5487 2006-02-14 Graham Percival <gpermus@gmail.com>
5489 * Documentation/user/invoking.itely: add warning about command line.
5491 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5493 * lily/include/lily-proto.hh: add Prob, rm Page.
5495 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5497 * VERSION: release 2.7.34
5499 * lily/relocate.cc (framework_relocation): show canary if
5500 GHOSTSCRIPT_VERSION undefined.
5502 * GNUmakefile.in: remove $(VERSION) symlink.
5504 * lily/relocate.cc (setup_paths): add +
5506 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5508 * Documentation/index.html.in: specify sizes for all big HTML pages.
5510 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5512 * config.hh.in: remove @FRAMEWORKDIR@
5514 * lily/system-start-text.cc (get_stencil): new file: separate out
5515 system-start-delimiter text support.
5517 * input/**ly: replace \context with \new where appropriate.
5521 * lily/slur-scoring.cc (get_base_attachments): use
5522 robust_relative_extent. This fixes problems with empty paper-columns.
5524 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5526 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5528 * scm/define-music-properties.scm (all-music-properties):
5529 create-new property.
5531 * lily/context-specced-music-iterator.cc (construct_children):
5532 inspect 'create-new property iso. magical $uniqueContextId context
5535 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5537 * lily/context-key-manager.cc (Module): new file. Encapsulate
5538 object key generation.
5540 * lily/include/context-key-manager.hh (Module): new file.
5542 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5544 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5547 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5549 (reloc_b): excise --enable-framework-dir
5551 * lily/relocate.cc (framework_relocation): use getenv
5552 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5554 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5556 * flower/include/std-string.hh:
5557 * flower/include/std-vector.hh: Finish std:: conversion; move
5558 flower extensions from std:: namespace. Update users.
5560 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5561 their expansion to vector<*>. Update users.
5563 2006-02-10 Graham Percival <gpermus@gmail.com>
5565 * Documentation/user/invoking.itely: add example to File structure.
5567 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5568 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5570 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5572 * ly/paper-defaults.ly: typo.
5574 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5575 set_parent() for parentheses. This will make it show up in bbox
5578 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5579 ly:grob-common* functions.
5581 * lily/grob-scheme.cc (LY_DEFINE):
5582 ly:grob-common-refpoint-of-array: new function
5583 ly:grob-common-refpoint: new function
5584 ly:grob-relative-coordinate: new function
5586 * lily/instrument-name-engraver.cc (process_music): use
5587 Text_interface::is_markup(). This fixes \markup on instrument names.
5589 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5592 * lily/slur.cc (print): idem.
5594 * lily/tie.cc: add line-thickness for ties.
5596 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5598 * scm/output-svg.scm: Document diversion from GNU coding standards
5599 as a workaround for a bug in Microsoft Internet Explorer.
5601 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5603 * lily/instrument-name-engraver.cc (process_music): use
5604 is_markup() iso. is_string()
5606 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5608 * lily/percent-repeat-engraver.cc (process_music): only look at
5609 main_part_ for % repeats.
5611 * lily/stem-tremolo.cc (get_beam_translation): new function.
5612 (calc_slope): new function.
5613 (height): don't use real slope.
5615 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5617 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5618 new connect-to-neighbor, control-points and staff-padding
5619 properties to make ligature brackets showing up again.
5621 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5623 * VERSION: release 2.7.33
5625 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5628 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5629 remove applyOutput example.
5630 (Objects connected to the input): document \tweak, \parenthesize
5632 * lily/relocate.cc (prefix_relocation): allow "current"
5633 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5634 changing VERSION in a lily tree less painful.
5636 * input/regression/parenthesize.ly: new file.
5638 * scm/output-lib.scm (parenthesize-element): new function.
5640 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5642 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5644 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5645 cause: accidentals are caused by note heads, not note events.
5647 2006-02-08 Graham Percival <gpermus@gmail.com>
5649 * darwin.patch: small patch from Erlend, thanks!
5651 * Documentation/user/basic-notation.itely: add stem-neutral example.
5653 * Documentation/user/putting.itely: clarifications.
5655 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5657 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5658 note, add more guidelines to what should go into NEWS.
5660 * input/sakura-sakura.ly: document how to override font.
5662 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5664 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5666 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5668 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5670 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5671 convertrules. Add explicit grouping, needed for python2.2.
5673 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5675 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5677 2006-02-07 Graham Percival <gpermus@gmail.com>
5679 * Documentation/user/global.itely: fix line-width in (text) docs.
5681 * Documentation/user/lilypond-book.itely: same.
5683 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5685 * VERSION (PACKAGE_NAME): release 2.7.32
5687 * Documentation/topdocs/NEWS.tely (Top): document new variable
5690 * flower/include/array.icc (Message): remove file.
5692 * flower/include/std-vector.hh: make sure vsize and VPOS are
5693 defined for binary_search_bounds().
5695 * flower/std-string.cc (std): add to_string(long unsigned).
5697 * configure.in (gui_b): excise std_string option.
5698 (gui_b): excise std_vector option.
5700 * flower/string.cc (Module): excise flower array & string
5702 * flower/include/std-string.hh: excise flower string.
5704 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5706 * python/convertrules.py (lilypond_version_re_str): require
5707 only numbers and dots in \version string.
5709 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5711 * lily/system-start-delimiter.cc (print): allow style = text too.
5713 * lily/system-start-delimiter-engraver.cc
5714 (acknowledge_system_start_text): new function, also add add to
5715 support of system-start-text (instrument names). This fixes
5716 instrument names on piano staves.
5718 * lily/instrument-name-engraver.cc: rewrite. Use
5719 system-start-delimiter approach. This save memory and cpu.
5721 * scm/define-grobs.scm (all-grob-descriptions): remove
5722 instrument-name from break-alignment.
5724 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5726 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5728 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5731 * configure.in (std_vector): On by default.
5733 * lily/include/font-metric.hh:
5734 * lily/include/tfm-reader.hh:
5735 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5738 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5740 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5742 * VERSION (PACKAGE_NAME): 2.7.31
5744 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5745 EPS edge at 0, but take minimum with left-overshoot. This fixes
5746 cut off system start delims.
5748 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5749 hack: add to axis group if not added yet. This fixes hara kiri'd
5752 * lily/hara-kiri-group-spanner.cc
5753 (force_hara_kiri_in_y_parent_callback): fix signatures.
5755 * lily/hairpin.cc (print): check next hairpin to see whether or
5756 not to be continuing.
5758 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5760 * Remove trailing whitespace from makefiles.
5762 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5765 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5767 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5769 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5771 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5773 * configure.in: Use it.
5775 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5777 * scm/music-functions.scm (pitch-of-note): new function.
5779 * ly/music-functions-init.ly: add \octave and \addquote
5781 * lily/parser.yy (music_function_chord_body): softcode \octave.
5782 (lilypond_header): softcode \addquote
5784 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5786 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5787 array.hh, parray.hh at all. Getting ready to flip the
5790 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5792 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5795 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5797 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5799 * flower/include/array.hh: typo.
5801 2006-02-02 Graham Percival <gpermus@gmail.com>
5803 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5805 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5807 * flower/include/pqueue.hh: Derive from std::vector.
5809 * flower/include/parray.hh: Conform to std::vector interface.
5812 2006-02-02 Graham Percival <gpermus@gmail.com>
5814 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5816 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5818 * flower/file-path.cc (is_file): remove if 0 section.
5820 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5821 selecting afii61352.
5823 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5825 * flower/include/std-vector.hh (boundary): Oops, reverse.
5827 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5828 remove superfluous `d'.
5830 * flower/include/std-vector.hh (boundary, top): Detach from class.
5831 Remove empty vector shell.
5833 * flower/include/array.hh (reverse, swap): Detach from class.
5836 * flower/include/std-vector.hh
5837 * flower/include/array.hh (concat): Globally change to insert ().
5840 * flower/include/std-vector.hh
5841 * flower/include/parray.hh
5842 * flower/include/array.hh (elem, elem_ref): Globally replace by
5845 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5847 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5849 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5850 anticipate on identifier substitutions.
5852 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5854 * flower/include/std-vector.hh (insert): Remove, replace by
5855 std::vector interface. Update callers.
5857 * flower/include/array.icc (insert): Change signature to
5858 match std::vector interface.
5860 * flower/include/array.icc (vector_sort): Bugfix.
5862 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5864 * lily/parser.yy (output_def_head_with_mode_switch): new
5865 production. Result: dashes and underscores may be used in the
5868 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5870 * python/convertrules.py (conv): oops. One slash too much.
5872 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5874 * flower/include/std-vector.hh (sort): Remove, replace by
5875 ::vector_sort. Update callers.
5877 * flower/include/std-vector.hh (slice): Remove. Update callers.
5880 * flower/test-std.cc (vector_sort): New test.
5882 2006-02-01 Graham Percival <gpermus@gmail.com>
5884 * Documentation/user/putting.itely: fixes from Erik.
5886 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5888 * flower/test-std.cc: Add simple unit test for vector migration.
5890 * stepmake/stepmake/test*: Unit test support.
5892 * flower/include/std-vector.hh (del): Remove. Use erase (),
5895 * flower/include/array.hh (begin, end): Add.
5898 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5900 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5901 std::string not String.
5903 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5906 * lily/prob.cc (Prob): copy type_ too.
5908 * lily/lily-guile.cc (mangle_cxx_identifier): new
5909 function. Class_bla::foo_bar_[px] ->
5910 ly:class-bla::foo-bar[?!]. Changes throughout
5912 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5914 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5916 * lily/beam.cc (calc_direction): take dir from visible stem in
5919 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5921 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5922 Fix -1, >=0 boundary checks for unsigned vsize.
5924 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5925 loop for unsigned vsize.
5927 * configure.in (--enable-std-vector): New option.
5928 (--enable-std-string): On by default.
5930 * flower/include/std-vector.hh: New file. Enable switch to
5931 std::vector, update client code.
5933 2006-01-30 Graham Percival <gpermus@gmail.com>
5935 * scm/document-translation.scm: clarify "this context is also
5936 known as". Thanks, Werner!
5938 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5940 * Documentation/user/invoking.itely: small fix from Don.
5942 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5944 * scm/lily.scm (define-scheme-options): rename option
5945 preview-include-book-title to book-title-preview
5946 (define-scheme-options): move force-eps-font-include (from paper
5947 block) to eps-font-include -d option.
5949 * VERSION (PATCH_LEVEL): release 2.7.30
5951 * input/bach-schenker.ly (staffPiano): new file.
5953 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5955 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5958 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5960 * ps/lilyponddefs.ps: remove start-system, stop-system,
5961 start-page fluff. This saves putting { } code on the stack, fixing
5962 stack overflows when including EPS files.
5964 2006-01-29 Graham Percival <gpermus@gmail.com>
5966 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5968 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5970 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5972 2006-01-28 Graham Percival <gpermus@gmail.com>
5974 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5976 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5978 * input/mutopia/claop.py: Update.
5980 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5982 * input/regression/completion-heads.ly (texidoc): fix.
5984 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5986 * lily/tie-formatting-problem.cc
5987 (set_ties_config_standard_directions): use abs iso fabs for ints.
5989 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5991 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5992 little less than noteheight, to prevent overlaps in chords.
5994 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5995 head, and fudge stem-attachment.
5997 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5999 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6001 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6003 * lily/main.cc (main): Debugging aid: catch exceptions.
6005 * flower/std-string.cc (to_string): Robustification. Fixes midi
6006 output with std::string.
6008 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6010 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6012 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6014 * Fix -DSTRING_UTILS_INLINED.
6016 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6018 * VERSION (PATCH_LEVEL): release 2.7.29
6020 * lily/relocate.cc (setup_paths): mingw uses std string too.
6022 * lily/*.cc: various fixes for substr(ARG).
6024 * lily/sustain-pedal.cc (print):
6026 * flower/file-name.cc (slashify): use std strings.
6028 * flower/string-convert.cc: remove publib.h
6030 * scm/define-markup-commands.scm (verbatim-file): new markup
6031 command \verbatim-file
6033 * Documentation/topdocs/NEWS.tely: fixup URLs
6035 * input/regression/alignment-vertical-manual-setting.ly (Module):
6038 * lily/align-interface.cc (align_elements_to_extents): overwrite
6039 translations with numbers in alignment-offsets from left bound
6041 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6042 (page-translate-systems): new function: take into account Y-offset.
6044 * Documentation/topdocs/NEWS.tely (Top): document new features.
6046 * input/regression/page-layout-manual-position.ly (Module): new
6049 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6051 * flower/file-path.cc (path::parse_path): Oops.
6053 * Finish std::string interface. For now, use std:: marker
6054 throughout for easy s/r.
6056 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6058 * Documentation/user/putting.itely (Score is a single musical
6060 (Score is a single musical expression): more typos.
6062 * scm/page.scm (annotate-space-left): thinko.
6063 (annotate-page): more thinkos.
6065 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6067 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6068 for different \score blocks separately.
6069 (post-process-pages): put write-page-layout into paper block.
6071 * lily/output-def.cc (get_parser): new file.
6073 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6076 * lily/include/output-def.hh (class Output_def): add parser_ member.
6078 * input/regression/page-layout-twopass.ly (Module): new file.
6080 * scm/lily.scm: remove cpp hack.
6082 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6084 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6086 * GNUmakefile.in (c-clean): New target.
6088 * flower/include/std-string.hh: String/std::string compatibility:
6089 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6092 * flower/rational.cc:
6093 * flower/include/rational.hh:
6096 * flower/include/offset.hh:
6098 * flower/interval.cc:
6099 * flower/include/interval.hh:
6101 * flower/string-convert.cc:
6102 * flower/include/string-convert.hh: Use std::string [interface].
6105 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6107 * Documentation/index.html.in: clean up.
6109 2006-01-25 Graham Percival <gpermus@gmail.com>
6111 * Documentation/user/putting.itely: another new untested doc section.
6113 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6115 * scm/layout-page-layout.scm (write-page-breaks): write
6116 \spacingTweaks #ALIST. Handle grace timing.
6118 * scm/: more imports.
6120 * scm/page.scm (make-page): add footer/header.
6121 (annotate-space-left): revise: only take page argument.
6122 (layout->page-init): new function.
6124 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6125 version of the system/spacing/linebreak hack writing to the output
6127 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6130 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6133 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6135 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6137 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6139 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6140 handling to page.scm
6142 * lily/prob-scheme.cc (LY_DEFINE): new file.
6143 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6145 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6148 * lily/music.cc (derived_mark): derive Music from Prob.
6150 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6152 * lily/prob.cc (Module): Implement Prob (Property Object), object
6153 with shared and r/w property alists.
6155 * lily/include/prob.hh (Module): new file. Declare Prob.
6157 * flower/string.cc: remove is_empty().
6159 * flower/include/string.hh (class String): remove String:: qualifier.
6161 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6162 substitute appropriate functions.
6164 * flower/include/string.hh (class String): remove to_str0 and
6165 is_empty(). S&R everywhere.
6167 2006-01-23 Graham Percival <gpermus@gmail.com>
6169 * Documentation/user/basic-notation.itely: add hairpin
6170 after-linebreak tweak to commonprop.
6172 * Documentation/user/putting.itely: added two new sections.
6174 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6176 * flower/international.cc:
6177 * flower/include/international.hh:
6179 * flower/getopt-long.cc:
6180 * flower/include/getopt-long.hh: Use std::string [interface].
6183 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6185 * stepmake/stepmake/executable-rules.make: Add dependency on
6188 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6190 * flower/file-path.cc:
6191 * flower/include/file-path.hh: Use std::string [interface].
6194 * flower/direction.cc:
6195 * flower/axis.cc: Unused. Remove.
6197 * configure.in (--enable-std-string): New option.
6199 * flower/std-string.cc:
6200 * flower/include/std-string.hh: New file.
6202 * flower/file-name.cc[STD_STRING]:
6203 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6205 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6207 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6209 * scm/define-markup-commands.scm (with-dimensions):
6210 with-dimensions markup command.
6212 * input/test/font-table.ly: use it.
6214 * lily/open-type-font.cc (glyph_list): new function.
6216 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6218 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6220 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6222 * ly/music-functions-init.ly (parallelMusic): new music function
6223 for parallel music entry.
6225 * scm/define-music-properties.scm (all-music-properties): new
6226 'void music property
6228 * scm/music-functions.scm (ly:music-message): make public, to be
6229 used in music function definitions
6231 * scm/lily-library.scm (collect-music-for-book): discard music
6232 when the 'void property is set.
6234 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6236 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6238 * mf/GNUmakefile: idem.
6240 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6242 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6244 * Documentation/user/notation-appendices.itely (The Feta font):
6247 * input/test/font-table.ly: new file. Generate font table within lily.
6249 * Documentation/user/notation-appendices.itely (The Feta font):
6250 use new font-table.ly file.
6252 * stepmake/stepmake/install-out-targets.make
6253 (local-install-outfiles): only create directory if
6254 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6256 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6258 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6260 * VERSION (PACKAGE_NAME): release 2.7.28
6262 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6263 the right font from a Mac dfont.
6264 (write-preamble): don't forget directory, only look at files.
6266 This fixes problems with TTF files in dfonts that don't match
6267 their PostScript names.
6269 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6270 PS name from TTF font.
6272 * input/regression/tie-manual.ly: document new feature.
6274 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6276 * VERSION (MY_PATCH_LEVEL): bump to .28
6278 * Documentation/user/basic-notation.itely (Ties): add tie examples
6281 * lily/tie-formatting-problem.cc (score_ties_configuration):
6282 symmetry penalties for outer ties.
6284 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6286 * lily/tie-formatting-problem.cc (generate_configuration)
6287 (set_manual_tie_configuration): skip non-pair manual
6288 tie-configuration, so you can set individual ties as
6290 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6292 * input/regression/tie-chord.ly: use generateTiePattern to
6295 * lily/tie-formatting-problem.cc (peak_around): new function.
6296 (score_configuration): use sliding criterion for staff line collisions.
6297 (score_configuration): idem for dot collisions.
6298 (generate_configuration): use separate stem_gap for gap to stem.
6300 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6301 separate penalty factors for x and y distance.
6302 (struct Tie_details): separate penalties for tip and center line collisions.
6304 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6306 * lily/tie-formatting-problem.cc (generate_configuration): make
6307 large ties avoid stafflines in the horizontal section.
6308 (score_configuration): use softcoded penalties
6309 (score_aptitude): idem.
6311 * lily/tie-helper.cc (from_grob): softcode tie details
6313 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6315 * lily/staff-symbol-referencer.cc (on_line): rename from
6318 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6320 * ly/music-functions-init.ly: remove duplicate tag.
6322 * lily/include/*.hh: GCC 4.1 fixes.
6324 006-01-16 Erlend Aasland <erlenda@gmail.com>
6326 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6328 * scm/define-music-types.scm: fix bug in desc. string
6329 for OverrideProperty
6331 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6333 * scripts/lilypond-book.py: bugfix
6335 * scm/define-music-types.scm: fix typos.
6337 2006-01-14 Graham Percival <gpermus@gmail.com>
6339 * Documentation/user/ basic-notation.itely, global.itely,
6340 advanced-notation.itely, instrument-notation.itely: small
6341 additions (bugs and commonly tweaked properties).
6343 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6345 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6346 detection of mingw build.
6347 (MINGW_BUILD): opps.
6349 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6351 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6354 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6356 * scm/music-functions.scm (skip->rest): add skip->rest
6358 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6360 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6363 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6364 config dirs. Aids debugging.
6365 (display_config): also display config files.
6367 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6369 * VERSION: release 2.7.27
6371 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6372 for determining bar size.
6374 * lily/staff-symbol.cc (print): place lines at distance line-positions
6376 * scm/define-grob-properties.scm (all-user-grob-properties): add
6379 * lily/staff-symbol.cc (height): new function.
6381 * input/regression/staff-line-positions.ly: new file.
6383 2006-01-06 Graham Percival <gpermus@gmail.com>
6385 * input/test/add-staccato.ly: remove reference to old file.
6387 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6389 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6390 lilypond binary too.
6392 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6394 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6396 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6398 * scripts/midi2ly.py: Bugfix: Declare datadir.
6400 * make/ly-rules.make:
6401 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6402 that seems to be gone). Fixes make web.
6404 * The grand 2005-2006 replace.
6406 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6408 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6410 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6411 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6412 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6413 like -dgs-font-load.
6415 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6416 remove absolute path to lilypond binary.
6418 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6420 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6422 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6424 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6426 * mf/GNUmakefile: remove broken dvips map symlink.
6428 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6431 * configure.in: Cosmetic fixes.
6433 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6435 * Documentation/user/music-glossary.tely (Pitch names): Added
6436 Spanish pitch names and durations, thanks to Ernesto Gancedo
6438 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6440 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6441 init. Fixes verbose printing of .scm files.
6443 * stepmake/aclocal.m4: add spaces before - options.
6445 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6447 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6448 of path search in local block variable.
6450 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6452 * configure.in (NCSB_DIR): --enable-ncsb-dir
6453 (LINK_GXX_STATICALLY): denko.
6455 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6457 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6458 use locate to find c059033l.pfb.
6460 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6462 * lily/tie-formatting-problem.cc
6463 (problem::generate_base_chord_configuration): Use my_round (was
6466 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6467 do not invoke mbrtowc.
6469 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6471 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6473 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6475 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6477 * Documentation/user/invoking.itely (svg): revise.
6479 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6481 * lily/lexer.ll: use sourcefilename iso. renameinput.
6483 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6485 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6486 <PostScriptName>.ttf instead of c059XXXttf.
6488 * lily/program-option.cc (LY_DEFINE): special support for
6489 --verbose, so it works before option init too.
6491 * mf/GNUmakefile (local-install): oops.
6493 * lily/lyric-hyphen.cc (print): oops.
6495 * buildscripts/pfx2ttf.fontforge: new file.
6497 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6498 ($(outdir)/%.ttf): new rule.
6500 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6503 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6506 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6508 * VERSION: release 2.7.26
6510 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6512 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6514 * lily/font-config.cc (init_fontconfig): verbosity.
6516 * THANKS: add Muziekacademie Lede.
6518 * scripts/musicxml2ly.py (print_voice_definitions): new function
6519 (print_score_setup): new function
6520 (convert): read part definition to output staves properly.
6522 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6525 * python/musicexp.py (Output_printer.__init__): use _ in data
6527 (Output_printer.unformatted_output): new function: no formatting,
6529 (Duration.get_length): remove isinstance() checks for
6530 Output_printer everywhere.
6532 * input/regression/lyrics-bar.ly (texidoc): add
6533 Separating_line_group_engraver.
6535 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6537 * lily/relocate.cc (framework_relocation): New function,
6538 factored from set_relocation ().
6539 (prefix_relocation): Rename from set_relocation ().
6540 (setup_paths): Use it.
6542 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6544 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6545 numbers. Patch by Erlend Aasland.
6547 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6549 * lily/font-config.cc (init_fontconfig): print warning if cache
6550 file is not existant.
6552 * lily/main.cc: don't use #ifdef but #if
6554 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6556 * lily/grob-property.cc (internal_set_property): don't abort on
6557 calculation-in-progress.
6559 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6561 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6562 connect-to-neighbor property not connect-to-other
6564 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6565 (LY_DEFINE): oops. don't forget protection.
6567 * flower/parse-afm.cc (Module): strip AFM handling completely.
6569 * lily/stencil-expression.cc: idem.
6571 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6573 * lily/function-documentation.cc (ly_add_function_documentation):
6574 use static member iso. Protected_scm
6576 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6578 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6580 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6582 * lily/relocate.cc (set_env_dir): New function.
6583 (set_relocation): Use it to fix setting PANGO_PREFIX.
6585 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6587 * input/regression/stem-direction-context.ly: remove rest.
6589 * lily/melody-engraver.cc (process_music): restart for bar lines.
6590 (acknowledge_slur): restart for slurs.
6592 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6594 * Documentation/user/invoking.itely: describe how to view SVG
6595 output using Inkscape which replace embedded fonts with OTF fonts.
6597 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6599 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6601 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6603 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6606 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6608 * VERSION (PACKAGE_NAME): release 2.7.25
6610 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6612 * input/regression/stem-direction-context.ly: new file.
6614 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6616 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6619 * ly/engraver-init.ly: add Melody_engraver
6621 * lily/beam.cc (calc_direction): use default-direction
6622 iso. get_default_direction()
6624 * scm/define-grob-properties.scm (all-user-grob-properties): add
6625 default-direction property.
6627 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6629 * lily/stem.cc (calc_default_direction): remove
6630 Stem::get_default_direction, use default-direction with callback
6633 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6635 * lily/melody-engraver.cc: new file. Acknowledge stems for
6636 interpolated stem directions.
6638 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6640 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6642 * lily/slur-configuration.cc (fit_factor): more robust check for
6643 point in curve X-extent.
6645 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6646 (outside_slur_callback): check for 'outside avoidance.
6648 * lily/slur-configuration.cc (score_extra_encompass): don't use
6649 bound->column() == avoid->column() for checking extents, as this
6650 doesn't work for accidentals.
6652 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6653 DynamicText hardcoding.
6655 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6656 crash if bound stem is NULL
6658 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6661 2005-12-22 Graham Percival <gpermus@gmail.com>
6663 * scm/define-markup-commands.scm: typo. @code{\raise}
6666 * darwin.patch: now used again, includes a
6667 required patch from fink.
6669 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6671 * po/TODO: mention gtranslator along with kbabel.
6672 * po/fi.po: update translations.
6674 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6676 * lily/relocate.cc (setup_paths): Bugfix.
6678 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6680 * lily/slur-configuration.cc (score_extra_encompass): don't use
6681 "avoid" choice for avoid-slur.
6683 * stepmake/bin/install.py (dest): don't create existing dir.
6685 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6687 * stepmake/bin/install.py: Remove file before copying.
6690 * stepmake/aclocal.m4: Do not substitute INSTALL.
6692 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6694 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6695 depend on link-tree.
6697 * lily/relocate.cc (setup_paths): only check path for non-absolute
6698 dir without directory part.
6700 * flower/file-name.cc (is_absolute): new method.
6701 (is_absolute): check root_ too.
6703 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6705 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6706 relocation code. Oops, don't comment out too much.
6708 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6711 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6714 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6716 * .cvsignore: Add install-sh.
6718 * autogen.sh (srcdir): Typo.
6720 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6722 * autogen.sh (srcdir): urg. Touch install-sh.
6724 * stepmake/bin/install-sh (Module): remove.
6726 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6728 * lily/include/relocate.hh: new file.
6730 * lily/relocate.cc: new file. Contain relocation logic.
6732 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6733 (main): read LILYPOND_VERBOSE as the first thing.
6735 * stepmake/aclocal.m4: remove INSTALL variable.
6737 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6738 separate target for making font symlinks.
6739 (documentation-dir): use $(if $(findstring )) for switching off
6742 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6743 something if DOCUMENTATION is no.
6745 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6747 * VERSION: release 2.7.24
6749 * lily/script-column-engraver.cc (stop_translation_timestep):
6750 delay adding to script-column.
6752 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6754 * python/convertrules.py (conv): rule for number-visibility
6756 * lily/slur-configuration.cc (score_extra_encompass): different
6757 distance measure for avoid and inside avoidance.
6758 (score_extra_encompass): use 1/(distance+eps) as penalty.
6760 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6761 encompass objects for generating slur curves.
6763 * lily/slur.cc: use details iso. slur-details property.
6765 * input/regression/slur-tuplet.ly: new file.
6767 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6769 * flower/include/offset.hh (class Offset): new operator /=
6771 * lily/tuplet-number.cc (print): new file, new interface.
6773 * scm/define-grob-properties.scm (all-user-grob-properties):
6774 remove number-visibility property.
6776 * lily/tuplet-bracket.cc (calc_control_points): new function
6777 (calc_connect_to_neighbors): new function.
6778 (print): remove text handling for tuplet numberdef.
6780 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6783 * lily/lily-guile.cc (robust_scm2booldrul): new function
6785 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6787 * lily/tuplet-bracket.cc (calc_position_and_height): use
6788 staff-padding to control whether tuplet brackets are over staves.
6790 * lily/grob.cc (suicide): clear dim_caches_.
6792 * lily/dimension-cache.cc (clear): new function.
6794 * lily/grob.cc (extent): swap order of min-extent and extent
6795 calculations. This fixes hara kiri staves.
6797 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6799 * lily/main.cc: Nitpick: relocation is not based on path, but on
6800 directory (location).
6802 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6804 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6806 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6808 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6810 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6812 * stepmake/stepmake/generic-vars.make (Module): idem.
6814 * stepmake/stepmake/executable-targets.make (default): use it.
6816 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6818 * make/GNUmakefile: don't install make rules.
6820 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6822 (prepend_env_path): more verbosity.
6824 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6826 * GNUmakefile.in: add dir argument for find command.
6828 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6829 fixes weird line numbers for point & click.
6831 * lily/source-file.cc (get_counts): init line/column/char counts.
6833 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6835 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6837 2005-12-16 Graham Percival <gpermus@gmail.com>
6839 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6840 minor fixes from Fredric. Thanks!
6842 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6844 * ly/music-functions-init.ly: add \bar and \clef music function
6846 * lily/lily-lexer.cc: idem.
6848 * lily/parser.yy (FIXME): remove BAR and CLEF.
6850 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6852 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6854 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6855 function arguments too
6857 * lily/main.cc (set_relocation): new function.
6859 * scripts/musicxml2ly.py (convert): add \version
6861 * lily/tie.cc: remove get_default_attachments()
6863 * VERSION (PACKAGE_NAME): release 2.7.23
6865 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6866 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6868 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6870 * lily/tie-formatting-problem.cc (score_ties): new function
6871 (get_variations): new function. Try flipping dirs for collisions.
6872 (generate_optimal_chord_configuration): new function. 1-opt search
6873 for better configuration.
6875 * lily/tie-configuration.cc: new file.
6877 * lily/tie.cc: junk Tie::get_configuration()
6879 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6880 (score_ties_configuration): new function.
6881 (generate_ties_configuration): new function.
6882 (generate_base_chord_configuration): new function.
6883 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6884 (set_manual_tie_configuration): Move body from tie-column-format.cc
6886 * input/regression/tie-dot.ly: new file.
6888 * lily/tie-formatting-problem.cc (score_configuration): score
6891 * lily/tie-helper.cc (get_transformed_bezier): new function
6893 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6895 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6896 -undefined suppress iso. -framework Python
6898 * scm/define-grobs.scm (all-grob-descriptions): set
6899 springs-and-rods (thanks Joe Neeman!)
6901 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6903 * input/no-notation/display-lily-tests.ly (test):
6904 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6905 changed from \tag #'(a b) to \tag #'a \tag #'b
6907 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6909 * Documentation/topdocs/NEWS.tely: strip out-www.
6911 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6913 * config.make.in (AR): add AR and RANLIB
6915 * flower/libc-extension.cc: include cassert
6917 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6920 2005-12-11 Graham Percival <gpermus@gmail.com>
6922 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6924 * stepmake/stepmake/python-modules-vars.make: define
6925 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6927 * THANKS: added Johannes Schindelin.
6929 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6931 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6933 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6934 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6936 * lily/parser.yy: reorganize file layout.
6938 * ly/music-functions-init.ly: add tweak music function.
6940 * lily/grob-info.cc (ultimate_music_cause): new function:
6941 recursively lookup causes.
6943 * lily/parser.yy (chord_body_element): allow music functions for
6944 post-events, allow music functions for chord elements.
6946 * lily/font-config-scheme.cc (display_fontset): add cast.
6948 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6949 #'(a b) -> \tag #'a \tag #'b rule.
6951 * python/musicexp.py (Output_printer.dump_version): new function
6953 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6955 * lily/parser.yy (FIXME): remove \tag
6956 (FIXME): remove tag_music() function.
6958 * lily/lily-lexer.cc: remove \tag
6960 * ly/music-functions-init.ly: define music-function "tag"
6962 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6964 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6966 * VERSION (PATCH_LEVEL): release 2.7.22
6968 * input/regression/lyric-hyphen-retain.ly: renew.
6970 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6973 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6974 iso. minimum-length property for rods.
6976 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6977 LyricSpace item to keep lyrics spaced apart.
6979 * ly/engraver-init.ly: remove Separating_line_group_engraver
6981 * Documentation/user/music-glossary.tely: do setfilename before
6984 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6986 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6987 See xref documentation, for example.
6989 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6991 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6992 pending_skip iso. ly_voice[-1]
6993 (main): add if __main__ for debugging.
6995 * python/musicxml.py (Accidental.__init__): new class.
6997 * scripts/musicxml2ly.py (progress): new function
6998 (musicxml_key_to_lily): don't barf on modeless keys.
6999 (create_skip_music): new function.
7000 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7001 (musicxml_note_to_lily_main_event): new function.
7003 * python/musicexp.py (Music.__init__): add comment field.
7004 (NestedMusic.append): new routine.
7005 (SequentialMusic.print_ly): print comment.
7006 (ArpeggioEvent.ly_expression): new class
7007 (BeamEvent.ly_expression): new class
7008 (NoteEvent.__init__): support for cautionary/forced accs.
7010 * lily/lookup.cc (slur): normal order for array loop.
7012 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7015 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7018 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7020 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7022 * scripts/lilypond-book.py: Introduce option
7023 --preserve-line-breaks, for usage with srcltx
7025 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7027 * scm/output-lib.scm (print-circled-text-callback): draw circle
7028 around text using make-circle-markup.
7030 * Documentation/user/*: strip out-www from file names.
7032 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7034 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7035 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7037 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7039 * Documentation/user/GNUmakefile: idem.
7041 * Documentation/user/macros.itexi: strip out-www
7043 * python/rational.py: python 2.3 compat.
7045 * VERSION (PATCH_LEVEL): release 2.7.21
7047 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7048 option formatting, lilypond style.
7050 * python/musicexp.py: grab from Ikebana: a library for composing
7051 ly music expressions.
7052 (Output_printer): class for advanced .ly printing.
7055 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7056 convert to pythonesque structure.
7058 * python/rational.py: PD rational number class.
7060 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7062 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7064 * lily/part-combine-iterator.cc: Minor bugfix
7066 * THANKS: Update bughunters
7068 2005-12-02 Werner Lemberg <wl@gnu.org>
7070 * mf/README: Document process for proper mf2pt1 conversion.
7072 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7075 * mf/feta-harmonica.mf: Removed. Unused.
7077 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7079 * scripts/lilypond-book.py (do_file): fix thinkos.
7081 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7083 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7084 ($(outdir)/parser.cc):
7085 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7087 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7089 * ly/titling-init.ly (tagline): it should be a space between
7090 "Music engraving by LilyPond" and the version number.
7092 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7094 * VERSION (PACKAGE_NAME): release 2.7.20
7096 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7098 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7100 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7102 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7104 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7106 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7108 * kpath-guile/: remove directory
7110 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7111 file. Encapsulate kpathsea using commandline tools.
7113 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7116 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7118 * Documentation/user/advanced-notation.itely (Setting automatic
7119 beam behavior): Correct a few typos. Thanks to David Bobroff.
7121 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7122 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7124 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7126 * scripts/*.py: gmane address for bugs.
7128 2005-11-28 Pal Benko <benkop@freestart.hu>
7130 * make/ly-rules.make: add -f switch to mv
7132 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7134 * lily/bar-line.cc: interpret it
7136 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7138 * configure.in (--disable-documentation): New switch.
7140 * GNUmakefile.in: Use it.
7142 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7144 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7146 * scripts/lilypond-book.py (do_file): search chunks for
7149 * GNUmakefile.in: add copy step in between so we can lose the
7150 out-www directories.
7152 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7154 * lily/pango-font.cc (pango_item_string_stencil): put
7155 geometry.width into glyph-string too.
7157 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7159 * scm/define-music-display-methods.scm (RevertProperty):
7160 (OverrideProperty): Use grob-property-path property, a list of
7161 symbols, instead of grob-property, which used to be a single
7163 (BassFigureEvent): a figure can be a plain number, not necessarily a
7166 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7168 * VERSION: release 2.7.19
7170 * lily/figured-bass-engraver.cc (process_music): check
7171 figuredBassCenterContinuations first.
7173 * scm/translation-functions.scm (format-bass-figure): make double
7176 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7179 * lily/system-start-delimiter-engraver.cc: move from
7180 Nested_system_start_delimiter_engraver, rename
7181 Nested_system_start_delimiter_engraver ->
7182 System_start_delimiter_engraver.
7184 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7185 bracket type from hierarchy.
7187 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7189 * lily/rest.cc (y_offset_callback): read staff-position.
7191 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7192 mark after-line-breaking-callback as internal.
7194 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7196 2005-11-25 Werner Lemberg <wl@gnu.org>
7198 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7200 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7202 * stepmake/bin/add-html-footer.py (do_file): add google
7204 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7205 staff if first_start_ is true.
7207 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7209 * scripts/midi2ly.py (split_track): add __repr__ members.
7210 (track_first_item): only return Item if not None. This fixes a
7211 problem when dumping a track that starts with an empty channel.
7213 * python/midi.c: doc module.
7215 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7217 * Documentation/user/global.itely (Creating MIDI files): Fix
7218 compilation problem.
7220 2005-11-22 Graham Percival <gpermus@gmail.com>
7222 * Documentation/user/basic-notation.itely: clarify dynamic
7225 * Documentation/user/advanced-notation.itely: add unicode
7226 escape control example, whatever that is. :)
7228 * Documentation/user/global.itely: added "removing dynamics
7231 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7233 * VERSION (PATCH_LEVEL): release 2.7.18
7235 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7236 System_start_delimiter_engraver by
7237 Nested_system_start_delimiter_engraver.
7239 * lily/nested-system-start-delimiter-engraver.cc (struct
7240 Bracket_nesting_node): new class.
7241 (struct Bracket_nesting_group): new class
7242 (struct Bracket_nesting_staff): new class.
7243 (process_music): create hierarchy of grobs. This allows separate
7244 tuning of different SSDs.
7246 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7247 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7249 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7251 * lily/side-position-interface.cc (aligned_side): multiply
7254 * lily/script-engraver.cc (make_script_from_event): allow setting
7257 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7259 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7261 * scm/define-grobs.scm (all-grob-descriptions): new grob
7262 NestedSystemStartDelimiter.
7264 * input/regression/system-start-heavy-bar.ly: new file.
7266 * lily/nested-system-start-delimiter-engraver.cc: new file.
7268 * lily/nested-system-start-delimiter.cc: new file.
7270 * input/regression/system-start-nesting.ly: new file.
7272 * scm/define-grobs.scm (all-grob-descriptions): use X side
7273 positioning for positioning braces for nested contexts.
7275 * lily/system-start-delimiter.cc (print): don't divide extent by
7277 (print): use style iso. glyph.
7278 (staff_bracket): translate glyph inside routine already.
7280 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7282 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7285 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7287 * scm/define-context-properties.scm
7288 (all-user-translation-properties): rename figuredBassFormatter
7289 from newFiguredBassFormatter.
7291 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7293 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7295 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7297 * lily/beam.cc (calc_beaming): new function.
7298 (calc_shorten): new function.
7300 * THANKS: add Edward Neeman.
7302 * input/regression/accidental-clef-change.ly: new file.
7304 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7306 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7308 * lily/clef-engraver.cc (inspect_clef_properties): reset
7309 localKeySignature for clef changes.
7311 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7313 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7314 add dummy definition that works in Linux and add information in
7315 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7317 * Documentation/user/changing-defaults.itely (Modifying context
7318 plug-ins): Add index for \with.
7320 * Documentation/user/music-glossary.tely (dal segno): Updated
7321 example to version >=2.6.
7323 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7325 * Documentation/user/instrument-notation.itely (Printing chord
7326 names): Reorder \chordmode and \repeat in one example.
7328 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7330 * VERSION: release 2.7.17
7332 * Documentation/topdocs/NEWS.tely (Top): add note about
7335 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7336 new function. Search region of 3 positions for best tie.
7337 (score_configuration): new function.
7338 (score_aptitude): new function.
7339 (generate_configuration): new function.
7340 (get_configuration): new function.
7341 (Tie_formatting_problem): new function
7343 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7345 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7347 * THANKS: add Eduardo Vieira & Ralph Little
7349 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7352 * lily/include/tie-formatting-problem.hh (class
7353 Tie_formatting_problem): add Tie_details to
7354 Tie_formatting_problem. Update calling conventions.
7356 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7359 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7361 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7363 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7364 scm/define-context-properties.scm: Maintenance bugfix: make
7365 ligature brackets work again by removing obsolete ligature
7366 primitive callback push/pop.
7368 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7369 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7372 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7374 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7375 used and do not call it a path.
7376 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7378 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7380 * lily/include/tie-formatting-problem.hh (class
7381 Tie_formatting_problem): new file.
7383 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7385 * Documentation/misc/ChangeLog-2.3: new file.
7387 * lily/audio-staff.cc (output): degarianize.
7389 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7391 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7392 Unset PYTHONOPTIMIZE. Fixes install if set.
7394 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7396 * python/convertrules.py (conv): add warning about drums.
7398 * make/stepmake.make: include toplevel-version.make after config.make.
7400 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7401 also allow python2.4
7403 * config.make.in (configure-srcdir): remove GXX GCC vars.
7405 * stepmake/aclocal.m4: don't do non-srcdir build with
7406 symlinks. Use inclusion, so the src directory name can be changed.
7408 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7410 * make/mutopia-vars.make:
7411 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7414 2005-11-13 Werner Lemberg <wl@gnu.org>
7416 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7417 but the affected path. This ensures that the (overlapping) outlines
7418 have the same direction, which is a necessary prerequisite for
7419 FontForge's algorithm to remove overlaps.
7422 * mf/feta-haak.mf: Formatting.
7423 (draw_bracket): Slightly modify outline to avoid an unnecessary
7425 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7426 them from the affected paths.
7428 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7430 * mf/README: remove xpm / accordion notes.
7432 * lily/tie-column-format.cc (set_chord_outline): add dots into
7433 skyline extents. This fixes tie formatting if the left head has dots.
7435 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7436 space inside the staff.
7437 (get_configuration): shift another position if necessary in case
7440 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7442 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7443 buildscript-dir iso. $(depth)/buildscripts.
7445 * tex/GNUmakefile (local-uninstall): remove
7446 music-drawing-routines.ps juggling.
7448 * stepmake/stepmake/install-targets.make (local-install-files):
7449 prepend src-dir to install targets.
7451 * lily/system-start-delimiter-engraver.cc
7452 (acknowledge_system_start_delimiter): use
7453 add_offset_callback(). This fixes translation of nested
7456 * lily/grob-closure.cc (add_offset_callback): only encaps in
7457 simple_closure if it's a procedure.
7459 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7462 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7463 remove-empty where pertinent.
7465 2005-11-12 Graham Percival <gpermus@gmail.com>
7467 * Documentation/user/instrument-notation.itely: added
7468 Cameron Horsburgh's multiple stanzas docs. Thanks!
7470 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7473 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7474 make picture in builddir, not srcdir.
7476 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7478 * VERSION: release 2.7.16
7480 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7483 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7485 * Documentation/user/examples.itely (Piano templates): Minor
7486 modification to the Piano centered lyrics example.
7488 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7490 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7493 * Documentation/user/point-and-click.itely: simplify p&c
7494 instruction: don't configure firefox. Put lilypond-invoke-editor
7495 in front of the browser.
7497 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7498 (run-browser): new function.
7500 * lily/parser.yy (Lily_lexer): recognize Book
7502 * lily/book.cc (clone): new function
7504 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7506 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7508 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7509 Maintenance bugfix: reduce number of font related warnings by
7510 updating naming conventions for glyph-name.
7512 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7514 * scm/define-grobs.scm (all-grob-descriptions): add
7515 rhythmic-grob-interface to TabNoteHead.
7517 * scm/layout-beam.scm (check-quant-callbacks): remove
7520 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7522 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7523 alignment of centered divisiones.
7525 * scm/scripts.scm (articulations): Maintenance bugfix:
7526 follow-into-staff -> quantize-position.
7528 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7529 plica head in porrectus deminutus.
7531 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7533 * make/lilypond.fedora.spec.in (Group): add %clean section.
7535 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7536 less then 1/5th of total length.
7537 (print): use gap too. Fixes tupletUp-single-bracket.ly
7539 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7540 events into EventChord. This fixes textspanners on mm rests. Fixes
7543 * lily/side-position-interface.cc (get_axis): read side-axis
7544 (set_axis): set side-axis.
7546 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7547 properties everywhere.
7549 * lily/spacing-spanner.cc (breakable_column_spacing): add
7550 average-spacing-wishes. Take maximum if not set.
7551 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7553 * scm/define-grobs.scm (all-grob-descriptions): add
7554 average-spacing-wishes.
7556 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7557 offset callbacks. This fixes alignment for Fingering objects.
7559 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7560 space for key - timesig combination.
7562 * input/regression/script-stem-tremolo.ly (Module): new file.
7564 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7567 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7568 Fixes: c-tremolo-script.ly.
7570 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7572 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7574 * scm/define-grobs.scm (all-grob-descriptions): remove
7575 self-X-offset. Fixes alignment of octavate-8.
7577 * scripts/lilypond-book.py (datadir): look in
7578 LILYPONDPREFIX/share/lilypond/current/
7580 * GNUmakefile.in: symlink current to <VERSION>.
7582 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7584 * lily/main.cc: eps listed as a backend.
7586 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7588 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7590 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7592 * lily/include/score.hh (class Score): remove texts_ member.
7594 * lily/beam.cc (set_stem_lengths): force direction callback.
7595 (print): read quantized-positions, so we can force
7596 Beam::set_stem_lengths to occur.
7597 (rest_collision_callback): use common X parent.
7599 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7601 * flower/file-path.cc (find): Bugfix: Return name of file found.
7603 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7604 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7605 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7607 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7609 * flower/offset.cc: idem.
7611 * mf/*.mf: update email address.
7613 * lily/font-config-scheme.cc: new file.
7615 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7617 * lily/*: cs.uu.nl -> xs4all.nl
7619 * VERSION (PATCH_LEVEL): release 2.7.15
7621 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7624 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7626 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7628 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7630 * lily/staff-performer.cc (process_music): add audio
7631 elements. This makes MIDI instrument changes work once again.
7633 * lily/main.cc (LY_DEFINE): add gmane address.
7635 * lily/beam.cc: remove calc_positions()
7637 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7638 original_ in private scope.
7639 (class Grob): drop pscore_ pointer, change to output_def pointer.
7640 (class Grob): cleanup class definition.
7642 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7644 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7646 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7647 absolute. Better diagnostics.
7649 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7650 This makes lilypond run from the build directory using argv0
7651 relocation (without any --prefix or LILYPONDPREFIX setting).
7653 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7655 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7657 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7658 with simple-closure.
7660 * lily/self-aligment-interface.cc (set_align_self): new function
7661 (set_center_parent): new function.
7663 * lily/side-position-interface.cc (set_axis): new function.
7665 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7668 * scm/define-grob-properties.scm (all-user-grob-properties):
7669 remove [XY]-offset-callbacks add [YX]-offset
7671 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7673 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7674 entry for time signatures after breathing signs. Bug report by
7677 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7679 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7680 not absolute, make it absolute using PATH.
7682 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7684 * python/midi.c (initmidi): Fix type for mingw.
7686 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7688 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7690 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7693 * stepmake/aclocal.m4: Support python cross compiling.
7695 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7698 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7700 * scm/output-lib.scm (chain-grob-member-functions): replace
7703 * lily/chained-callback.cc (Module): remove file.
7705 * lily/rest-collision.cc (force_shift_callback_rest): change to
7708 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7710 * lily/grob.cc (y_parent_positioning): remove axis argument from
7711 parent_positioning callbacks.
7712 (Grob): junk init code
7713 (get_offset): use generic property callbacks for
7714 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7715 (axis_parent_positioning): new function
7716 (axis_offset_symbol): new function
7717 (chain_offset_callback): new function
7718 (add_offset_callback): new function
7720 * lily/beam.cc (rest_collision_callback): change signature; this
7721 is now a chained callback.
7723 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7724 callback administration.
7726 * lily/simple-closure.cc: new file. Smob type that allows "grob
7729 (ly:make-simple-closure FUNC A B)
7731 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7734 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7737 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7739 * lily/rest.cc (polyphonic_offset_callback): remove.
7741 * lily/script-engraver.cc (try_music): remove bool* argument.
7743 * scm/script.scm (default-script-alist): set quantize-position
7746 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7748 * lily/side-position-interface.cc (aligned_side): move staff
7749 position quantization from
7750 Side_position_interface::quantised_position().
7751 (quantised_position): remove
7753 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7755 * input/regression/beam-quant-standard.ly: reindent, set
7756 debug-beam-quanting to #t.
7758 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7759 10000 if this is a "hard" concave beam.
7761 * lily/beam.cc (calc_least_squares_positions): change from
7762 calc_least_squares_dy
7763 (set_stem_lengths): this is now a chained callback.
7765 * lily/context-property.cc (execute_general_pushpop_property):
7766 bugfix override with procedure should have effect.
7768 * scm/define-grob-properties.scm (all-internal-grob-properties):
7769 remove position-callbacks.
7771 * scm/define-grobs.scm (all-grob-descriptions): use
7772 ly:make-callback-chain for positions property.
7774 * scm/layout-beam.scm (check-quant-callbacks): return list of
7777 * scm/lily.scm (type-p-name-alist): add callback-chain
7779 * lily/lily-guile.cc (type_check_assignment): type check failure
7780 is warning not message.
7782 * lily/grob-property.cc (try_callback): walk callback chain if
7785 * lily/chained-callback.cc: new file. new smob type.
7787 * lily/lily-guile.cc (procedure_arity): new function.
7789 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7791 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7793 2005-10-25 John Mandereau <john.mandereau@free.fr>
7795 * Documentation/user/instrument-notation.itely (Figured bass):
7796 describe new features
7798 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7800 * lily/beam.cc (calc_least_squares_dy): use property callback.
7802 * lily/beam-concave.cc (calc_concaveness): use property callback.
7804 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7806 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7810 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7812 * scm/layout-page-layout.scm (page-headfoot): annotate
7815 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7817 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7818 doesn't take y-space.
7820 * scm/paper.scm (paper-alist): fix A7 dimensions.
7822 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7824 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7825 src-wildcard, remove $(wildcard).
7827 * po/GNUmakefile (PO_FILES):
7828 * ps/GNUmakefile (PS_FILES):
7829 * tex/GNUmakefile (TEX_FILES):
7830 * cygwin/GNUmakefile (POSTINSTALLS):
7831 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7832 some wildcard calls.
7834 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7836 * THANKS: add Thomas Bushnell.
7838 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7840 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7841 (lilypond-main): Redirect to gui-main if 'gui is set.
7843 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7844 for alternative installations kludging s/share/lib/g
7847 * SConstruct (libdir_package_version): Define.
7849 * python/SConscript:
7850 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7853 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7855 * lily/main.cc: clarify --safe.
7857 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7859 * VERSION: release 2.7.14
7861 * Documentation/user/*.itely: remove minimumVerticalExtent.
7863 * scm/define-grobs.scm (all-grob-descriptions): remove
7864 RemoveEmptyVerticalGroup
7866 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7868 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7871 * python/convertrules.py (conv): add rules.
7873 * lily/grob.cc: remove is_empty()
7875 * lily/grob-property.cc: remove add_to_list_property().
7877 * scripts/convert-ly.py (datadir): add prefix switching hack to
7880 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7881 space-function tweak.
7883 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7885 * scm/define-grob-properties.scm (all-user-grob-properties):
7886 remove callback property.
7888 * lily/include/grob.hh (class Grob): remove property_callbacks_
7889 member. Properties of procedure type are assumed to be callbacks.
7891 * lily/ligature-engraver.cc (override_stencil_callback):
7892 rewrite. Use noteHeadLigaturePrimitive as source.
7894 * scm/define-grob-properties.scm (all-internal-grob-properties):
7895 remove ligature-primitive-callback
7897 * lily/include/dimension-cache.hh (class Dimension_cache): make
7898 class, with Grob as friend.
7900 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7901 has_extent_callback()
7903 * scm/translation-functions.scm (format-new-bass-figure): read
7904 figuredBassPlusDirection
7906 * scm/define-context-properties.scm
7907 (all-user-translation-properties): add figuredBassPlusDirection.
7909 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7911 * lily/align-interface.cc (set_ordered): new function.
7913 * lily/grob.cc (flush_extent_cache): rewrite.
7915 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7916 Interval pointer directly.
7918 * lily/main.cc (setup_paths): insert extra / .
7919 (setup_paths): junk cff entry.
7921 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7924 * lily/axis-group-engraver.cc (finalize): remove
7925 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7927 * lily/grob.cc (Grob): don't set extent from ctor.
7928 (extent): use property callbacks.
7930 * lily/axis-group-interface.cc: remove set_axes() function.
7932 * lily/grob-property.cc (del_property): new function.
7934 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7936 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7938 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7940 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7942 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7944 * mf/SConscript: Updates.
7946 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7948 * stepmake/stepmake/*:
7952 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7953 from any directory in build-dir. Cleanups.
7955 * make/srcdir.make.in: Remove.
7957 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7959 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7962 * lily/SConscript: Remove ttftools.
7964 * SConstruct: Resurrect.
7966 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7968 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7971 * lily/paper-book.cc (add_score_title): put Paper_score title into
7974 * scm/translation-functions.scm (format-new-bass-figure): also
7975 allow plus in combination with _
7977 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7979 * VERSION: 2.7.13 released.
7981 * lily/note-collision.cc (check_meshing_chords): don't wipe
7982 stencil, merely set transparent.
7984 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7985 (Top): document #'callbacks.
7986 (Top): document nested \override.
7988 * input/regression/figured-bass.ly: update for slash and pluses.
7990 * input/regression/figured-bass-continuation-forbid.ly (Module):
7993 * scm/translation-functions.scm (format-new-bass-figure): use
7994 slashed-digit if diminished is set.
7995 (format-new-bass-figure): add + if 'augmented is set.
7997 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7999 * input/test/piano-staff-distance.ly: remove file.
8001 * Documentation/user/advanced-notation.itely (Formatting cue
8002 notes): use length-fraction for making stems/beams smaller.
8004 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8007 * lily/new-figured-bass-engraver.cc: new property
8008 centerFiguredBassContinuations
8010 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8013 * lily/context-property.cc (execute_general_pushpop_property):
8016 * input/regression/override-nest.ly: new file.
8018 * python/convertrules.py (FatalConversionError.subber): conversion
8019 rule for #'callbacks
8021 * input/regression/override-nest.ly: new function.
8023 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8026 * lily/context-property.cc (lookup_nested_property): new function.
8027 (evict_from_alist): new function.
8028 (general_pushpop_property): new function.
8029 (execute_general_pushpop_property): rewrite. Support nested
8032 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8034 * lily/beam.cc: use length-fraction too.
8036 * scm/define-grob-properties.scm (all-user-grob-properties):
8037 remove property flag-width-function
8038 (all-user-grob-properties): remove space-function.
8040 * scm/layout-beam.scm: remove flag-width-function.
8042 * lily/beam.cc: remove flag-width-function
8044 * scm/layout-beam.scm: remove beam dir functions.
8046 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8048 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8049 for easier grace tweaks.
8051 * lily/beam.cc: remove dir-function.
8053 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8055 * lily/grob.cc: remove spacing-procedure.
8057 * lily/note-head.cc (calc_stem_attachment): new function.
8058 (internal_print): use callback to get glyph-name.
8060 * lily/grob-property.cc (get_interfaces): new function.
8062 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8064 * lily/stem.cc (calc_stem_end_position): new function.
8065 (calc_length): new function.
8066 document details for stem.
8067 remove Stem::get_direction()
8069 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8071 * lily/grob-property.cc (set_callback): new function.
8073 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8075 * lily/item-scheme.cc: new file.
8077 * lily/bar-line.cc (before_line_breaking): remove function.
8078 remove bar-size-procedure, break-glyph-function
8080 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8082 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8084 * lily/system-start-delimiter.cc (print): suicide from
8085 here. Remove after_line_breaking_callback.
8087 * lily/script-interface.cc (calc_direction): use callback for direction.
8089 * lily/side-position-interface.cc (aligned_side): don't use
8090 Side_position_interface::get_direction directly. Use callback.
8092 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8094 (get_print_stencil): rename from get_stencil: create stencil with
8095 transparency, color and cause.
8097 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8099 * python/convertrules.py (conv): insert temporary warning rule.
8101 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8103 * lily/grob-property.cc (try_callback): remove marker if applicable.
8105 * lily/grob.cc: elucidate doc about after/before-line-breaking
8107 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8109 * lily/stem.cc (height): idem.
8111 * lily/stem-tremolo.cc: idem.
8113 * lily/slur.cc (height): don't use get_uncached_stencil()
8115 * lily/rest.cc (y_offset_callback): use offset callback
8116 iso. after-line-breaking callback.
8118 * lily/grob.cc: change after/before-line-breaking-callback to
8119 after/before-line-breaking dummy properties.
8121 * lily/include/grob.hh: remove Grob_status.
8123 * scm/define-context-properties.scm
8124 (all-user-translation-properties): remove verticalAlignmentChildCallback
8126 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8127 (calc_direction): use callback
8128 (calc_positions): use callback.
8130 * lily/tie.cc (calc_direction): use callback. Only call parent
8131 positioning for more than one tie.
8133 * lily/tie-column.cc (calc_positioning_done): use callback
8135 * lily/slur-scoring.cc (calc_control_points): use callback
8137 * lily/slur.cc (calc_direction): use callback.
8139 * lily/note-collision.cc (force_shift_callback): remove.
8141 * lily/dot-column.cc (force_shift_callback): remove. Use
8142 other_axis_parent_positioning.
8144 * lily/grob.cc (other_axis_parent_positioning): new function.
8145 (same_axis_parent_positioning): new function
8147 * lily/align-interface.cc (alignment_callback): remove function.
8149 * lily/note-collision.cc (calc_positioning_done): use callback.
8151 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8152 (calc_direction): idem.
8153 remove print function.
8155 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8157 * lily/dot-column.cc (calc_positioning_done): use callback.
8159 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8161 * lily/beam.cc (calc_direction): use pseudo-property for beam
8163 (calc_positions): use callback
8165 * lily/align-interface.cc (calc_positioning_done): use
8166 callback. Fold fixed distance and normal alignment in one function.
8168 * lily/stem.cc (calc_stem_end_position): use callback.
8169 (calc_positioning_done): idem.
8170 (calc_direction): idem.
8171 (calc_stem_end_position): idem
8172 (calc_stem_info): idem.
8174 * lily/grob-property.cc (get_property_data): new function:
8175 (try_callback): new function.
8177 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8180 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8182 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8184 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8188 * lily/include/*.hh (Module): compile fixes.
8190 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8192 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8193 as an argument for char-syntax: use (char-syntax (or nil 0))
8194 instead of (char-syntax nil), thanks to Milan Zamazal.
8196 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8198 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8201 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8204 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8206 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8207 add class_name() method.
8209 * lily/music-scheme.cc: remove ly:music-name.
8211 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8213 * cygwin/postinstall-lilypond.sh: Remove cruft.
8215 * cygwin/postremove-lilypond.sh: Remove.
8217 * cygwin/GNUmakefile (default): Remove postremove rules.
8219 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8221 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8224 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8227 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8228 consider break index for broken spanner.
8230 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8231 characters from string before splitting.
8233 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8235 * scm/framework-ps.scm (output-preview-framework): use
8236 is-book-title to determine whether to chop off the booktitle.
8238 * lily/paper-book.cc (systems): init from book-title-properties
8239 (add_score_title): init score-title-properties.
8241 * ly/paper-defaults.ly: add {score,book}-title-properties.
8243 * scm/document-backend.scm (lookup-interface): error message if
8244 using unknown interface.
8246 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8249 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8251 (make_bracket): new function.
8253 * scm/lily.scm (define-scheme-options): add paper-size option.
8255 * ly/declarations-init.ly (laissezVibrer): get paper size from
8258 * scm/translation-functions.scm: use \fontsize for changing the
8261 * scm/define-grobs.scm (all-grob-descriptions): set
8262 between-length-limit to 1.0
8264 * lily/tie-helper.cc: add between_length_limit_ detail property.
8266 * mf/feta-bolletjes.mf: typos.
8268 * lily/note-head.cc (internal_print): don't shadow idx
8269 parameter. This fixes wrong attachment for do shape heads.
8271 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8273 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8275 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8277 * scm/layout-slur.scm: rename from slur.scm
8279 * scm/layout-page-layout.scm: rename from page-layout.scm
8281 * scm/layout-beam.scm: rename from beam.scm
8283 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8284 bass-figure-interface
8286 * lily/new-figured-bass-engraver.cc (process_music): add
8287 implicitBassFigures property.
8289 * scm/define-markup-commands.scm (pad-x): new markup.
8291 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8292 minimumVerticalExtent on FiguredBass context.
8294 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8295 case the continuation crosses a line break.
8297 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8299 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8300 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8301 absolute file name bug.
8303 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8305 * VERSION (PACKAGE_NAME): release 2.7.12
8307 * input/regression/figured-bass-continuation-center.ly: new file.
8309 * input/regression/beam-outside-beamlets.ly: new file.
8311 * lily/beam.cc (set_beaming): don't clip edges.
8312 (connect_beams): don't clip edges.
8314 * lily/beaming-info.cc (clip_edges): new function.
8316 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8318 * Documentation/user/instrument-notation.itely (Figured bass):
8319 demonstrate extenders, update seealso links.
8321 * scm/titling.scm (marked-up-headfoot): change tagline
8322 handling. tagline = ##f will blank the tagline as well.
8324 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8326 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8328 * lily/new-figured-bass-engraver.cc (struct
8329 New_figured_bass_engraver): add new_music_found_ member.
8331 * lily/lilypond-version.cc (Lilypond_version): deal with
8332 incorrectly formatted version strings.
8334 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8335 New_figured_bass_engraver by default.
8337 * lily/ttf.cc (print_trailer): only define glyph names when
8338 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8340 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8342 * lily/horizontal-bracket.cc (make_bracket): new function.
8344 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8345 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8346 BassFigureLine, BassFigureAlignment
8348 * lily/new-figured-bass-engraver.cc (process_music): new file.
8350 * lily/figured-bass-continuation.cc: new file.
8352 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8355 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8357 * scripts/lilypond-book.py: Bug fix, put the quote around the
8358 actual score for LaTeX documents.
8360 * scm/define-grobs.scm (all-grob-descriptions): Change
8361 collapse-height of the SystemStartBracket grob to 5.0,
8362 so the bracket disappears for single stave score lines (similarly
8363 to SystemStartBraces).
8365 * Documentation/user/advanced-notation.itely (Polymetric
8366 notation): Clarify the use of compressMusic.
8368 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8369 that the grace spacer note in other staves need the same duration
8370 and document the stroke-style property.
8372 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8374 * Documentation/user/global.itely (Vertical spacing): document
8375 alignment-extra-space and fixed-alignment-extra-space.
8377 * Documentation/topdocs/NEWS.tely (Top): add entry.
8379 * input/regression/alignment-vertical-spacing.ly: new file.
8381 * python/convertrules.py (conv): add rule.
8383 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8385 * lily/align-interface.cc (stretch_after_break): new
8386 function. Read fixed-alignment-extra-space property.
8387 (align_elements_to_extents): read alignment-extra-space property.
8389 * lily/lily-guile.cc (robust_scm2dir): new function.
8391 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8392 (annotate-space-left): new function. Annotate space left on page.
8393 (annotate-y-interval): new function.
8394 (paper-system-annotate-last): new function. Annotate bottom-space.
8396 * mf/feta-beugel.mf (y):
8398 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8400 * VERSION (PACKAGE_NAME): release 2.7.11
8402 * scm/lily-library.scm (interval-translate): new function
8403 (interval-center): new function.
8405 * scm/page-layout.scm (paper-system-annotate): new function. Add
8406 arrows for dimensions.
8408 * scm/stencil.scm (dimension-arrows): new function.
8410 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8412 * input/regression/page-spacing.ly: add annotatespacing
8414 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8415 (LY_DEFINE): new function ly:paper-system-set-property!
8417 * Documentation/user/global.itely (Paper size): explain how to add
8420 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8421 correspond to GS's definition.
8423 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8425 (print): only connect to next bracket if the next one is alive.
8426 (print): set padding to 0.0 if the bound is a breakable
8427 column. This makes tupletFullLength brackets reach up to the staff
8428 line if it doesn't connect to the next line.
8430 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8432 * lily/bar-number-engraver.cc: correct docs.
8434 * scm/output-lib.scm (first-bar-number-invisible): rename from
8435 default-bar-number-visibility
8437 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8439 * scm/define-music-properties.scm (all-music-properties): remove
8442 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8444 * po/fi.po: refresh.
8446 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8448 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8450 (disappear): bugfix.
8452 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8454 * lily/include/paper-system.hh (class Paper_system): remove
8455 staff_extents_ member.
8457 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8459 * lily/include/paper-system.hh (class Paper_system): remove
8460 number_ variable. Remove is_title_. Remove break_before_penalty_
8462 * lily/paper-book.cc (systems): use 'number property iso. number_
8465 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8466 remove ly:paper-system-number.
8468 * scm/lily-library.scm (paper-system-title?): new function.
8470 * lily/book.cc (process): bugfix: flip ?: cases.
8472 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8475 * ly/music-functions-init.ly: add outputProperty music function.
8477 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8479 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8481 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8483 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8485 * lily/paper-system.cc (internal_get_property): new function.
8487 * Documentation/user/global.itely (Vertical spacing): refer to
8490 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8493 * input/regression/page-spacing.ly: new file.
8495 * input/regression/page-top-space.ly: new file.
8497 * lily/spacing-spanner.cc: cmath -> math.h
8499 * lily/paper-system.cc (read_left_bound): new function. Read
8500 line-break-system-details from left bound to determine extents.
8502 * Documentation/user/programming-interface.itely (Using LilyPond
8503 syntax inside Scheme): change applyxxx -> applyXxx.
8505 * ly/music-functions-init.ly: add outputProperty music function.
8507 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8509 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8511 * python/convertrules.py (conv): rule
8513 * ly/music-functions-init.ly: applyxxx -> applyXxx
8515 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8518 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8520 * flower/include/real.hh: include <math.h> iso. <cmath>
8522 * flower/include/offset.hh: include real.hh
8524 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8526 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8527 fix example, now that 'interfaces is no longer directly available.
8529 * lily/book.cc (process): don't crash if paper == NULL.
8533 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8535 * scm/define-music-types.scm (music-descriptions): set length and
8536 start-callback for QuoteMusic
8538 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8540 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8541 arguments. Fixes compilation error with gcc 3.3.
8543 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8545 * VERSION: release 2.7.10
8547 * stepmake/stepmake/python-module-rules.make
8548 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8550 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8553 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8555 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8556 -Werror. Otherwise GCC barfs over various optimizations.
8558 * scm/define-grob-properties.scm (all-internal-grob-properties):
8559 add note-head property
8561 * Documentation/user/instrument-notation.itely (Laissez vibrer
8564 * input/regression/laissez-vibrer-ties.ly: new file.
8566 * lily/laissez-vibrer-engraver.cc: new file.
8568 * lily/include/tie-column-format.hh: new file.
8570 * lily/tie-column-format.cc: new file.
8572 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8574 * lily/laissez-vibrer-tie.cc: new file.
8576 * lily/include/laissez-vibrer-tie.hh: new file.
8578 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8580 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8582 * scm/define-grobs.scm (all-grob-descriptions): add
8583 LaissezVibrerTie, LaissezVibrerTieColumn
8585 * lily/tie-column.cc (set_tie_config_directions): new function
8586 (final_shape_adjustment): new function.
8587 (shift_small_ties): new function.
8589 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8591 * lily/include/tie.hh (struct Tie_details): add x_gap_
8592 (struct Tie_configuration): add head_position_
8594 * lily/tie-column.cc (set_chord_outline): new function.
8596 * mf/cmr.enc.in: remove file.
8598 2005-09-11 Graham Percival <gpermus@gmail.com>
8600 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8602 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8604 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8605 reduce aliasing effects.
8607 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8610 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8612 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8614 * flower/include/real.hh: std::fabs too.
8616 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8618 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8620 * lily, flower: Include C++ iso C headers. Import namespace std
8623 * lily/side-position-interface.cc:
8625 * lily/note-head.cc:
8626 * lily/include/includable-lexer.hh:
8627 * flower/include/string-data.icc: Remove using std::*.
8629 * lily, flower: Include C++ iso C headers. Import namespace std
8632 * lily/side-position-interface.cc:
8634 * lily/note-head.cc:
8635 * lily/include/includable-lexer.hh:
8636 * flower/include/string-data.icc: Remove using std::*.
8638 * Documentation/user/instrument-notation.itely (Entering lyrics):
8639 Multiple latin-1->utf-8 conversion fix.
8641 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8643 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8645 * lily/tie.cc (get_configuration): also avoid dots for non-space
8648 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8650 * Documentation/user/instrument-notation.itely: Bugfix.
8652 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8654 * tex/GNUmakefile: don't install texinfo.tex
8656 * tex/ : cleanup: remove unused files.
8658 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8660 * flower/include/real.hh: using std::{isnan,isinf}
8662 * VERSION (PATCH_LEVEL): release 2.7.9
8664 2005-09-05 Graham Percival <gpermus@gmail.com>
8666 * Documentation/user/ instrument-notation.itely,
8667 advanced-notation.itely: minor tweaks.
8669 * input/test/script-chart.ly: add item padding.
8671 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8673 * flower/offset.cc: use math.h iso. <cmath>
8675 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8678 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8679 (widen-left-stencil-edges): new function. Fix alignment problems
8680 with LaTeX includegraphics.
8682 * lily/text-interface.cc (interpret_markup): use abort().
8684 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8686 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8688 * lily/tie.cc (get_configuration): update bezier shape as we
8690 (get_configuration): don't move large ties if we're outside of the
8693 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8695 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8697 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8699 * .cvsignore: Add auto-generated configure files and then some.
8701 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8703 * scm/define-grobs.scm (DynamicLineSpanner): Add
8704 X-extent-callback. Fixes hairpin-slur collision.
8706 2005-08-31 Graham Percival <gpermus@gmail.com>
8708 * Documentation/user/advanced-notation.itely,
8709 basic-notation.itely: minor changes.
8711 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8713 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8714 \linebreak between each .eps file if \betweenLilyPondSystem is
8717 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8718 music): Document the \linebreak
8720 * Documentation/user/lilypond-book.itely,
8721 input/tutorial/lbook-latex-test.tex,
8722 Documentation/user/examples.itely: Remove \usepackage{graphics}
8724 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8726 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8728 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8731 * scripts/lilypond-book.py (PREAMBLE_LY): define
8732 inside-lilypond-book
8733 (modify_preamble): new function. Insert \RequirePackage{graphics}
8734 when no {graphics found in preamble.
8736 2005-08030 Graham Percival <gpermus@gmail.com>
8738 * Documentation/user/basic-notation.itely, global.itely,
8739 tutorial.itely: misc small changes.
8741 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8743 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8746 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8748 * lily/tie-column.cc (new_directions): put Tie down on center
8751 * lily/script-interface.cc (before_line_breaking): use
8752 Grob::programming_error
8754 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8756 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8759 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8761 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8763 2005-08-29 Werner Lemberg <wl@gnu.org>
8765 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8766 the `*.scale.pfa' files to avoid warnings.
8768 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8770 * lily/tempo-performer.cc (process_music): idem.
8772 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8774 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8776 * Documentation/user/advanced-notation.itely (Text markup): not a
8779 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8781 * lily/staff-performer.cc (initialize): add tempo/name to
8785 2005-08-26 Graham Percival <gpermus@gmail.com>
8787 * Documentation/user/advanced.itely: add text-only example.
8789 * Documentation/user/invoking.itely: add index entries for
8792 * Documentation/user/ tutorial.itely, basic-notation.itely:
8793 small fixes suggested by Steve D. Thanks!
8795 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8797 * input/regression/markup-bidi-pango.ly: new file.
8799 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8800 standard. Remove #ifdef. Remove memleak.
8801 (text_stencil): use text_dir to decide how to composite items.
8802 (text_stencil): determine uniform text direction for the entire
8805 * scripts/lilypond-book.py (output_name): remove
8806 latex_filter_cmd. Non-portable to non-Unix systems.
8807 (get_latex_textwidth): use File.write and os.unlink() instead.
8809 * THANKS: add Vicente & Trevor.
8811 * lily/grob.cc (discretionary_processing): look up origin for
8812 programming_error too.
8814 * input/regression/tie-broken.ly: new file.
8816 * lily/tie-column.cc (set_chord_outlines): set outline for line
8819 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8821 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8822 unscaled transform, just translate stencils.
8824 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8827 * scm/define-markup-commands.scm (wordwrap-string): use
8829 (wordwrap-stencils): idem.
8832 (wordwrap-stencils): translate last line to right for
8833 text-direction = LEFT.
8835 * scm/define-grob-properties.scm (all-user-grob-properties): add
8838 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8840 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8841 when copying a Lily_parser object.
8843 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8845 * scm/define-markup-commands.scm (null): add null markup.
8847 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8849 * lily/item.cc: Add documentation of center-invisible
8851 2005-08-24 Graham Percival <gpermus@gmail.com>
8853 * Documentation/user/advanced-notation.itely: add info about
8856 * Documentation/user/programming-interface.itely: fix example
8857 involving raised text.
8859 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8861 * lily/beam.cc (print): fix X start/end points of isolated
8864 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8866 * lily/multi-measure-rest.cc (set_text_rods): new function.
8868 * lily/vertical-align-engraver.cc (process_music): call
8869 Align_interface::set_axis(). This forces #'elements to be ordered,
8870 preventing random vertical reordering of staves.
8872 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8873 add avoid-slur property.
8875 * Documentation/user/basic-notation.itely (Measure repeats): add
8876 countPercentRepeats example.
8878 * Documentation/user/advanced-notation.itely (Other text markup
8879 issues): remove remark about normal-font. We have \normal-text
8881 * input/regression/tie-chord.ly: add note about remaining bugs.
8883 * lily/tie.cc (print): try Tie_column::set_directions () if
8884 control-points not yet defined.
8886 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8888 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8889 extent. This fixes braces falling out of the EPS bbox.
8891 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8894 2005-08-23 Graham Percival <gpermus@gmail.com>
8896 * {various} : change #up->#UP and #down->#DOWN.
8898 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8900 * Documentation/user/advanced-notation.itely: clarify
8901 what objects handles text on a multimeasure rest.
8903 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8905 * VERSION (PATCH_LEVEL): release 2.7.7
8907 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8909 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8911 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8913 * input/regression/*.ly: formatting clean-up. Default layout
8914 before music expression.
8916 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8917 romanze28-2 example.
8919 * scm/ps-to-png.scm: remove dir-re function.
8920 (make-ps-images): generate page names, instead of globbing them.
8921 This brings down LilyPond memory usage for make web by a factor
8924 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8925 don't use glob. With 3000 files, globbing
8926 Documentation/user/out-www/ can take too much time.
8928 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8930 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8932 * input/regression/tie-manual.ly: new file
8934 * input/regression/tie-chord.ly: update.
8936 * flower/include/interval.hh (struct Interval_t):
8938 * lily/tie.cc (distance): new function
8939 (height): new function.
8940 (init): new function
8941 (Tie_details): new struct.
8943 * lily/skyline.cc (skyline_height): new function.
8945 * lily/tie-column.cc (set_chord_outlines): new function.
8946 (new_directions): read tie-configuration
8948 * lily/skyline.cc: fix ASCII art.
8950 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8952 * python/convertrules.py (string_or_scheme): Fix spelling error
8954 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8956 * lily/tie-column.cc (set_directions): set directions only once.
8957 (add_configuration): new function.
8959 * lily/tie.cc (set_control_points): new function
8961 * lily/tie-column.cc (new_directions): new function.
8963 * ly/music-functions-init.ly: set 'pitch property
8964 iso. trill-pitch. This makes \relative work with \pitchedTrill
8966 * lily/tie.cc (get_configuration): new function. Don't generate
8967 control points, rather, generate configuration.
8968 remove head-pair property.
8970 * lily/include/tie.hh (struct Tie_configuration): new struct.
8972 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8974 * Documentation/topdocs/NEWS.tely: clarify.
8976 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8978 * lily/tie.cc: remove minimum-length
8980 * scm/define-grob-properties.scm (all-user-grob-properties):
8981 remove staffline-clearance, y-offset
8983 * input/regression/tie-dots.ly (Module): remove.
8985 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8986 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8988 * input/regression/tie-single.ly: new file.
8990 2005-08-21 Graham Percival <gpermus@gmail.com>
8992 * ly/bagpipe.ly: fix compile problem.
8994 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8996 * lily/midi-item.cc (name): new method.
8998 * lily/staff-performer.cc (acknowledge_audio_element): use
8999 signature of baseclass.
9001 * lily/engraver-group.cc (do_announces): move recursion call out
9004 * lily/drum-note-performer.cc (class Drum_note_performer): use
9005 process_music everywhere.
9007 * ly/performer-init.ly: add default children everywhere.
9009 * lily/paper-book.cc (output): call paper-book-write-midis
9010 directly: always write MIDI, even if no \layout {} block.
9012 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9014 * VERSION (PACKAGE_NAME): release 2.7.6
9016 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9017 about not being able to handle repeat.
9019 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9021 * Documentation/user/examples.itely (Piano templates):
9022 * lily/include/performer-group.hh: Remove last traces of
9023 Performer_group_performer. Fixes make web.
9025 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9027 * Documentation/user/examples.itely (Piano templates): change
9028 Engraver_group_engraver -> Engraver_group
9030 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9031 scm_stand_in_procs is not weak_any.
9033 * lily/volta-bracket.cc (print): don't use strcmp().
9035 * lily/volta-engraver.cc (process_music): use
9036 Text_interface::is_markup() for setting the 'text property of the
9039 * input/mutopia/claop.py (accents): update syntax to 2.6
9041 * scm/define-context-properties.scm
9042 (all-user-translation-properties): add countPercentRepeats.
9044 * Documentation/user/basic-notation.itely (Measure repeats): add
9045 isolated percent example.
9047 2005-08-18 Graham Percival <gpermus@gmail.com>
9049 * input/ {various}: change direction #1, #-1 to
9050 #up/#down or \fooUp, \fooDown.
9052 * Documentation/user/music-glossary.tely: #-1 to #down.
9054 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9055 to #up, #-1 to #down.
9057 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9059 * lily/include/engraver-group.hh: rename.
9061 * lily/include/performer-group.hh: rename.
9063 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9065 * input/test/script-abbreviations.ly: Removed some old LaTeX
9068 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9070 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9071 Remove functions. Remove if 1: constructs, reindent.
9073 * scripts/convert-ly.py (add_version): Add functions from
9076 * scm/script.scm (default-script-alist):
9077 s/priority/script-priority. Fixes script stacking. Backportme.
9078 (Fermata): Very low priority.
9080 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9082 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9084 * input/regression/slur-script.ly: remove padding tweaks. Add
9087 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9088 time sigs and related stuff.
9090 * scm/define-grob-properties.scm (all-user-grob-properties): add