1 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3 git commit e5d9c526aec8d0c7c7727068b13c346c475ac7c3
7 move server/emacsclient to elisp/
9 git commit f6191da666fd8897411e866594616cd0f7ae6350
11 * buildscripts/git-update-changelog.py (Commit.note_del_file):
14 * elisp/server.el.patch:
17 git commit 80844c903201b9df79ae81d4edcfbd299e08a9f7
19 * elisp/emacsclient.patch:
22 git commit 64179afe25bf5723fe9bb5a6631799c050d12de2
24 * buildscripts/git-update-changelog.py:
27 git commit 614460c52e72c96824da0a583297123e510f6fff
32 git commit 6ca40e8913957dd9fa510855ae1c4efacde09603
35 * buildscripts/git-update-changelog.py:
36 script to update ChangeLog with Git messages.
38 git commit ef70710d3cf52502900408aa1f55a2354ed4e8ab
40 * lily/beam-engraver.cc:
41 * input/regression/rest-pitched-beam.ly:
42 don't set callback if staff-position set. Fixes #126.
44 git commit 6dcaa230251aa4f95e4153bd4de021c65207b798
46 * lily/bar-number-engraver.cc:
48 * lily/fingering-engraver.cc:
49 * lily/grob-property.cc:
51 * lily/include/grob.hh:
52 * lily/include/lily-guile-macros.hh:
53 * lily/mark-engraver.cc:
54 * lily/melody-engraver.cc:
55 * lily/script-column.cc:
56 * lily/tie-formatting-problem.cc:
58 internal_get_property_data() using ly_symbol2scm()
60 git commit 914e47b38f98b87c2622a5bbd8237ca97f97da34
62 * stepmake/stepmake/generic-targets.make:
63 create .gitignore in outdir.
65 git commit 122da86232bb745d50cddbd893e3cc48c3af6216
70 2006-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
72 * input/test/vertical-extent.ly:
73 * python/convertrules.py (conv): verticalExtent -> VerticalAxisGroup.
75 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
77 * stepmake/bin/add-html-footer.py (compose): remove setgcos
79 2006-10-28 Han-Wen Nienhuys <hanwen@lilypond.org>
81 * GNUmakefile.in (install-help2man): install-help2man target.
83 2006-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
85 * SConstruct (configure): Do not check for /bin/sh.
87 2006-10-27 Han-Wen Nienhuys <hanwen@lilypond.org>
89 * mf/GNUmakefile: explicit dependencies for emmentaler .otf-table
92 * Documentation/topdocs/NEWS.tely (Top): add FretBoards example.
94 * input/regression/fret-boards.ly: new file.
96 * po/de.po: new po courtesy translation team.
98 * scripts/lilypond-book.py (get_option_parser): add newline to doc
101 2006-10-27 Mats Bengtsson <mabe@drongo.s3.kth.se>
103 * ly/gregorian-init.ly (neumeDemoLayout): update
104 minimumVerticalExtent -> VerticalAxisGroup #'minimum-Y-extent
106 * scm/define-context-properties.scm, ly/engraver-init.ly: Remove
107 obsolete verticalExtent / extraVerticalExtent / minumumVerticalExtent
109 2006-10-27 Erlend Aasland <erlenda@gmail.com>
111 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
112 Yet another build fix.
114 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
116 * SConstruct (lilypondprefix): use sorted() for list_sort()
119 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
121 * flower/SConscript: Unit test rules.
123 * flower/test-std.cc: Compile fix.
125 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
127 * python/midi.c (pymidi_parse_track): warning fixes.
129 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
130 include dot-column.hh
132 2006-10-26 Graham Percival <gpermus@gmail.com>
134 * Documentation/user/{basic-, global}: minor changes from mailist.
136 2006-10-26 Erlend Aasland <erlenda@gmail.com>
138 * scm/define-grobs.scm: trivial beautification
140 * lily/tie-performer.cc: no need to #include "pqueue.hh"
142 * lily/source-file.cc: put multibyte var inside #if clause
144 * scm/define-grob-interfaces.scm:
145 * scm/define-grob-properties.scm:
146 Build fix (string-fret-finger-combinations)
148 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
151 * Documentation/user/lilypond-book.itely: Build fix.
153 2006-10-26 Joe Neeman <joeneeman@gmail.com>
155 * lily/system.cc (get_paper_system):
156 * lily/paper-book.cc (systems):
157 move most of the backwards compatibility stuff into
160 * Documentation/topdocs/NEWS.tely: add 2 entries for the
163 * Documentation/user/page.itely: remove time-scaled-music
164 bug for the Page_turn_engraver
166 * lily/paper-book.cc (set_system_penalty): backwards
167 compatibility (breakbefore) for the old page breaker
169 2006-10-25 Graham Percival <gpermus@gmail.com>
171 * Diocumentation/user/instrument-notation.itely: added more
172 info about stanzas; thanks Geoff!
174 * Documentation/user/ {basic, advanced}: small fixes from
177 * THANKS: add some bug reporters.
179 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
181 * scm/define-context-properties.scm (all-user-translation-properties):
182 noteToFretFunction: Add.
184 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
185 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
187 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
189 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
192 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
193 Remove bashism in delete.
195 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
197 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
199 * scm/translation-functions.scm (determine-frets-mf): flatten let*
201 * scm/define-context-properties.scm
202 (all-user-translation-properties): add maximumFretStretch property.
204 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
206 * lily/source-file.cc (get_counts): use multibyte variable.
208 * scm/translation-functions.scm (determine-frets-mf): new
209 function: compute fret numbers.
211 * scm/output-lib.scm (string-frets->description) new function.
212 (fret-board::calc-stencil): new function
214 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
216 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
218 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
220 * lily/tab-note-heads-engraver.cc: cleanups.
222 * lily/fretboard-engraver.cc: new file
224 * ly/engraver-init.ly: add FretBoards context
226 2006-10-24 Joe Neeman <joeneeman@gmail.com>
228 * lily/grob.cc (pure_relative_y_coordinate)
229 (pure_height): use the new call_pure_function stuff
231 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
234 * lily/side-position-interface.cc (pure_y_aligned_side): add an
237 * lily/simple-closure.cc (ly_eval_simple_closure): make
238 simple-closure evaluatable from scheme
239 (evaluate_with_simple_closure): make simple-closures pure-
242 * lily/slur.cc (pure_outside_slur_callback): new function
244 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
245 fits in with previous changes that made the page forces much
248 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
249 and pure-Y-extent into this new function.
250 (pure-conversions-alist): add outside-slur-callback
252 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
254 * Documentation/user/advanced-notation.itely (Instrument names):
255 Remove obsolete bug workaround for instrument names on piano
258 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
260 * Documentation/user/lilypond-book.itely (Integrating DocBook and
261 music): patch by Bertalan Fodor for docbook.
263 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
264 of $(LILYPOND). Prevents lilypond run for .txt files.
266 * INSTALL.txt: gitness.
268 * .cvsignore: update to force gitness.
270 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
272 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
273 detect suicide in nested tuplets.
275 2006-10-23 Werner Lemberg <wl@gnu.org>
277 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
278 typo in argument to FT_Get_X11_Font_Format.
280 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
282 * stepmake/stepmake/po-vars.make: more gitness.
284 * flower/polynomial.cc (check_sol): no empty if bodies.
286 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
288 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
290 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
292 * Documentation/user/examples.itely (Transcription of mensural
293 music): Added more comments in .ly source. Suggest to remove
294 Forbid_line_break_engraver to allow line breaking at all bars.
296 * Documentation/user/instrument-notation.itely (Ancient
297 articulations): Updated @refbugs regarding episem.
299 * Documentation/user/instrument-notation.itely (Gregorian square
300 neumes ligatures): Added \augmentum dots. Updated @refbugs
301 regarding \augmentum.
303 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
305 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
308 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
311 * ly/gregorian-init.ly: Added \augmentum macro.
313 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
315 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
317 * lily/pango-font.cc (pango_item_string_stencil): use
318 FT_Get_X11_Font_Format()
320 2006-10-22 John Mandereau <john.mandereau@free.fr>
322 * po/fr.po: update translation.
324 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
326 * VERSION (PATCH_LEVEL): bump version
328 * input/regression/horizontal-bracket-break.ly: new file.
330 * scm/define-grobs.scm (all-grob-descriptions): calc
333 * lily/horizontal-bracket.cc (make_bracket): support
334 connect-to-neighbor. Fix #118
336 * VERSION: release 2.9.26-2
338 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
340 * VERSION (PACKAGE_NAME): release 2.9.26
342 * buildscripts/output-distance.py (test_basic_compare): add
344 (FileLink.multi_img_cell): new function, glob multi-page png
347 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
349 * po/lilypond.pot: update.
351 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
353 * Documentation/user/global.itely (File structure): remove
356 * lily/parser.yy (FIXME): remove ADDQUOTE
358 * Documentation/user/global.itely (Extracting fragments of
359 notation): new node, about clip systems.
361 * Documentation/user/lilypond-book.itely (Many quotes of a large
362 score): ref to clip systems.
364 * Documentation/user/instrument-notation.itely (Entering lyrics):
365 add note about lyric ties and required font.
367 * lily/open-type-font.cc (glyph_list): format errors.
369 * Documentation/user/programming-interface.itely (Scheme
370 procedures as properties): more doco on simple-closure and scheme
372 (Input variables and Scheme): use lilypond[verbatim], document
375 * Documentation/user/page.itely (Displaying spacing): use \book
376 explicitly, so arrows show .
377 (Line breaking): add note about Forbid_line_break_engraver
379 * Documentation/user/tweaks.itely (Common tweaks): also set length
380 to prevent tie squeezing.
381 (Default files): use @var{}
383 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
384 (Generating LilyPond files): add FOMUS.
386 2006-10-20 Joe Neeman <joeneeman@gmail.com>
388 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
389 Y-offset for TextScript and Script
391 * lily/text-engraver.cc (make_item):
392 * lily/script-engraver.cc (make_script_from_event):
393 remove call to Side_position_interface::set_axis since all scripts
394 now have this set by default
397 * lily/prob.cc: use variables
399 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
401 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
402 at typography, rather analyse stream event duration.
404 * Documentation/user/page.itely (Page formatting): set a6 paper
405 for system separator example.
407 * lily/arpeggio.cc (Module): idem.
409 * lily/accidental-placement.cc: add script-priority property.
411 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
413 * lily/ttf.cc (print_trailer): if all else fails: use
414 glyphIndexXXXX as glyph name. Fixes #117.
416 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
417 entry if cmap contains glyph.
418 (get_index_to_charcode_map): remove from Pango_font class, use
419 global filename -> font mapping.
420 (get_glyph_index_name): new function.
421 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
424 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
426 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
429 * scm/define-grob-properties.scm (all-user-grob-properties):
430 remove outdated doc. Fixes #116
432 * lily/completion-note-heads-engraver.cc (process_music): always
433 clone input events; otherwise we may overwrite input 'duration
434 property. Fixes #115.
436 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
439 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
442 * VERSION (PATCH_LEVEL): bump version.
444 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
446 * lily/engraver.cc (internal_make_grob): use variables.
448 * flower/string-convert.cc (dec2double): clean-up warnings.
450 * configure.in (CXXFLAGS): add -Werror.
452 * VERSION (PACKAGE_NAME): release 2.9.25
454 2006-10-18 Joe Neeman <joeneeman@gmail.com>
456 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
457 line even if we precede a forced break.
459 * lily/optimal-page-breaking.cc (try_page_spacing): square line
460 forces too. Make page-spacing weight default to 10 because the
461 changes to vertical springs decreased the page force/line force
462 proportions. Also, take the average of line force and page force
463 instead of just the sum.
465 * lily/constrained-breaking.cc (initialize): make the stiffness
466 of the vertical springs depend on the height of the system. This
467 prevents pages with only a few large systems from getting huge
470 * Documentation/user/page.itely (Page formatting): document the
471 change in default page-spacing-weight
473 * lily/include/constrained-breaking.hh: initialise bottom_padding_
475 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
477 * input/typography-demo.ly (melody): remove superfluous slur.
479 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
480 add piano-pedal-script-interface
482 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
484 * scripts/lilypond-book.py: DocBook support.
486 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
488 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
490 (stop_translation_timestep): set bound to currentMusicalColumn if
491 not set yet. Fixes #102
493 * lily/piano-pedal-bracket.cc: formatting.
495 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
497 * lily/piano-pedal-align-engraver.cc: new class
498 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
501 2006-10-18 Heikki Junes <hjunes@gmail.com>
503 * po/fi.po: Update Finnish translation (before the next release).
505 2006-10-17 Joe Neeman <joeneeman@gmail.com>
507 * lily/system.cc (get_paper_system): reinstate the backwards-
508 compatible page breaking for the old page breaker.
510 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
512 * lily/recording-group-engraver.cc: removed
514 * lily/context.cc, lily/translator-group.cc: Don't touch
515 Context::implementation_ if it's null
517 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
519 * scm/paper.scm: only use left-margin if defined.
521 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
523 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
525 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
526 strokeFingerOrientations
528 * lily/script-column.cc (row_before_line_breaking): also handle
529 accidentals and arpeggios in horizontal script stacking.
531 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
534 * input/regression/script-stack-horizontal.ly: trim.
536 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
538 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
541 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
542 'text if string argument.
544 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
546 * scm/define-context-properties.scm
547 (all-user-translation-properties): change to strokeFingerOrientations
549 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
551 * lily/parser.yy: remove debug output
553 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
555 * ly/paper-defaults.ly: set left/right margin.
557 * scm/paper.scm (set-paper-dimensions): use left-margin and
558 right-margin for computing linewidth.
560 * Documentation/topdocs/NEWS.tely (Top): idem.
562 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
565 * scm/define-markup-commands.scm (tied-lyric): increase negative
566 space: space syllables tighter.
568 * VERSION (PATCH_LEVEL): bump version.
570 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
573 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
575 * COPYING: further clarification
577 * VERSION: release 2.9.24
579 * input/regression/script-stack-horizontal.ly: add version.
581 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
583 * input/regression/lyric-tie.ly (texidoc): use different words.
585 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
587 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
589 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
590 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
592 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
594 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
596 * Doxyfile: remove file.
598 * scm/define-grob-interfaces.scm (string-finger-interface): add
599 string-finger-interface
601 * lily/general-scheme.cc (LY_DEFINE): move
602 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
604 * Documentation/topdocs/NEWS.tely (Top): add note for
605 string-finger feature.
607 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
610 * scm/output-lib.scm (string-finger::calc-text): read 'digit
613 * input/regression/script-stack-horizontal.ly: new file.
615 * ly/engraver-init.ly: add Script_row_engraver.
617 * lily/script-column.cc (order_grobs): refactor: separate axis
619 (row_before_line_breaking): new function.
621 * lily/script-row-engraver.cc (Script_row_engraver): new file.
623 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
625 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
627 * Documentation/user/instrument-notation.itely: Cleanup: Remove
628 annoying skip notes from mensural ligature example. Update
629 @refbugs for ligatures and mensural ligatures.
631 * lily/coherent-ligature-engraver.cc,
632 lily/include/coherent-ligature-engraver.hh,
633 lily/mensural-ligature-engraver.cc,
634 lily/vaticana-ligature-engraver.cc: Revise code for item
635 reparentizing. There should now be less programming_error
638 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
640 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
641 Maintenance bugfix: Don't create empty Stencil (), but empty box
642 instead. This fix should eliminate some programming_error
645 * ly/engraver-init.ly (MensuralStaff): Set default accidental
648 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
649 \layout block _before_ score.
651 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
653 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
655 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
657 2006-10-13 Erlend Aasland <erlenda@gmail.com>
659 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
661 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
663 * VERSION (PATCH_LEVEL): bump version.
665 * COPYING: clarify exception note.
667 * lily/main.cc: remove remark about "COPYING".
669 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
670 system-count starts at 0 for each clip-region. Change name to
671 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
672 layout block, per score.
674 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
676 * lily/input-smob.cc: add equal_p for Input
678 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
681 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
683 * lily/prob.cc: Add equal_p predicate for Prob
685 * lily/translator.cc: small cleanup
687 * scm/document-music.cc: use data from translator listener
688 registration to generate documentation for event classes
690 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
692 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
694 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
696 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
698 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
700 * Documentation/topdocs/INSTALL.texi: Thinko.
702 * .cvsignore: Update.
704 * lexer-gcc-3.1.sh: Remove.
706 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
707 Update anonymous cvs access. Remove comment about gcc 3.0.4.
709 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
711 * VERSION: release 2.9.23
713 * lily/paper-column-engraver.cc (stop_translation_timestep): also
716 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
718 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
720 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
722 * input/regression/clip-systems.ly (Notes): new file.
724 * scm/lily.scm (define-scheme-options): add clip-systems option.
726 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
728 (dump-stencil-as-EPS): move bbox calculation from previous
730 (output-framework): use -dclip-systems
732 * scm/lily-library.scm (filtered-map): new function
734 * scm/framework-ps.scm (clip-system-EPS): new function.
735 (clip-system-EPSes): new function.
737 * lily/paper-column.cc: add rhythmic-location to interface
739 * scm/define-grob-properties.scm (all-user-grob-properties): add
740 rhythmic-location property.
742 * scm/clip-region.scm: new file: rhythmic-location data type and
743 system-clipped-x-extent function.
745 * ly/init.ly: use (scm clip-region)
747 * lily/paper-column-engraver.cc (stop_translation_timestep): set
748 rhythmic-location for paper column grobs.
750 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
752 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
754 * ly/engraver-init.ly: Remove obsolete comment on
757 * Documentation/user/instrument-notation.itely: Tune Ancient
758 Articulations figure, such that the episem actually shows.
760 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
761 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
763 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
766 2006-10-12 Graham Percival <gpermus@gmail.com>
768 * Documentation/user/ {some}: minor edits that were lost somehow.
770 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
772 * VERSION (PACKAGE_NAME): bump version.
774 * input/regression/lyric-tie.ly (texidoc): new file.
776 * Documentation/topdocs/NEWS.tely (Top): add new feature.
778 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
780 * scm/define-markup-commands.scm (tied-lyric): new function: split
781 string along ~ and reattach with U+203F (tie character) and
784 * scm/output-lib.scm (lyric-text::calc-text): new function.
786 * lily/lyric-engraver.cc (process_music): don't set 'text.
788 * scm/output-lib.scm (string-finger::calc-text): new function
789 (lyric-text::print): new function.
791 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
792 generic for fingering & string number. Use for string-finger.
794 * scm/define-music-types.scm (music-descriptions): add
797 * lily/fingering-engraver.cc (listen_string_finger): new function
799 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
801 * scm/define-context-properties.scm
802 (all-user-translation-properties): add stringFingerOrientations
804 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
806 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
807 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
809 * lily/dots.cc: Added style property for dots.
811 * mf/parmesan-heads.mf: Fix typo in comment.
813 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
814 adding longa head to feta font and removing obsolete default
817 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
819 * scm/output-lib.scm (fingering::calc-text): use origin
820 event-property, not music-property.
822 * lily/lilypond.rc.in: spell my name correctly.
824 2006-10-10 Joe Neeman <joeneeman@gmail.com>
826 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
827 already have a non-empty extent. Fixes estimation for Hara-kiri
830 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
832 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
835 * lily/ligature-engraver.cc: Remove unused #include.
837 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
838 Bugfix: remove method check_for_prefix_loss(Item *) from global
839 namespace to avoid namespace pollution.
841 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
843 * VERSION: release 2.9.22
845 * ly/generate-documentation.ly: update option name.
847 * lily/dynamic-text-spanner.cc (print): revert fix.
849 * scm/define-grob-interfaces.scm
850 (trill-pitch-accidental-interface):
851 add trill-pitch-accidental-interface
853 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
854 dereference if it's really a duration.
856 * lily/figured-bass-engraver.cc (process_music): clear spanner if
857 useBassFigureExtenders is not set.
858 (listen_bass_figure): record as new event if
859 useBassFigureExtenders not set. Fixes #103.
861 * scm/stencil.scm (circle-stencil): don't center stencil argument,
862 instead: move circle. Fixes #107.
864 * scm/define-grobs.scm (all-grob-descriptions): set
865 allow-loose-spacing for PaperColumn and
866 NonMusicalPaperColumn. Kludge for #110.
868 * lily/spaceable-grob.cc: add allow-loose-spacing property.
870 * lily/spacing-determine-loose-columns.cc (is_loose_column):
871 allow-loose-spacing property.
873 * scm/define-markup-commands.scm (postscript): gsave & grestore
874 around embedded PS. Do setlinewidth too. Fixes #109.
876 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
878 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
879 code. This patch fixes ligature brackets that were not at all
882 2006-10-08 Graham Percival <gpermus@gmail.com>
884 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
886 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
888 * scm/define-context-properties.scm: clarified docs (bug 91).
890 * Documentation/user/basic-notation.itely: document volta brackets
891 not aligning (bug 63).
893 * Documentation/user/ global.itely invoking.itely: ignore or
894 add warnings about texstr.
896 2006-10-08 John Mandereau <john.mandereau@free.fr>
898 * po/fr.po: update translation.
900 * po/: update msgids.
902 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
904 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
906 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
908 * Documentation/user/page.itely (Two-pass vertical spacing): add
909 documentation for two-pass spacing technique.
911 2006-10-06 Graham Percival <gpermus@gmail.com>
913 * Documentation/user/convert-ly.txt: new file; new
914 storage place for this file (moved from bugs/ CVS).
916 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
918 * lily/note-head.cc: Fixed programming_error message.
920 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
922 * scm/define-grobs.scm (pure-conversion): move pure-callback
925 * scm/script.scm (default-script-alist): set avoid-slur for turn,
926 marcato, stopped, thumb.
928 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
930 * lily/completion-note-heads-engraver.cc (process_music): don't
931 skimp on memory usage.
933 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
936 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
937 parenthesis item. This fixes premature Y-extent triggering. Fixes
940 * VERSION (PATCH_LEVEL): bump version.
942 2006-10-04 Graham Percival <gpermus@gmail.com>
944 * Documentation/user/advanced-notation.itely: added
945 info about instrument names for piano or other contexts,
948 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
950 * mf/feta-bolletjes.mf (solfa_quarter_width): use
951 solfa_base_notewidth as unit for non-DO-notes too.
953 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
955 * VERSION: release 2.9.21
957 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
960 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
962 * python/lilylib.py (progress): Minor fix.
964 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
966 * lily/note-name-engraver.cc: doc engraver.
968 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
970 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
972 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
975 * lily/stem-engraver.cc (make_stem): don't set duration-log
977 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
978 write snippet-names binary.
980 * python/lilylib.py (system): use os.system for mingw32
982 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
985 * scm/backend-library.scm: update email address.
987 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
990 * scm/define-grobs.scm (all-grob-descriptions): use callback to
993 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
994 handle dot creation separately.
996 * lily/tab-note-heads-engraver.cc (process_music): idem.
998 * lily/drum-note-engraver.cc (process_music): idem.
1000 * lily/note-heads-engraver.cc (process_music): idem.
1002 * lily/rest-engraver.cc: don't set duration-log.
1004 * scm/output-lib.scm (string-number::calc-text): new function.
1005 (note-head::calc-duration-log): new function.
1007 * lily/fingering-engraver.cc (make_script): remove 'text setting.
1009 * scm/output-lib.scm (fingering::calc-text): new function.
1011 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
1013 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
1014 and include-eps-font -> include-eps-fonts
1016 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
1018 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
1020 * lily/timing-translator.cc: list properties.
1021 (start_translation_timestep): update internalBarNumber too.
1023 * scm/define-context-properties.scm
1024 (all-user-translation-properties): add internalBarNumber.
1026 * input/regression/spacing-no-note.ly: new file.
1028 * buildscripts/output-distance.py (link_file): verbosity for OSError.
1030 * lily/book.cc: #include cleanup.
1032 * lily/include/lily-guile-macros.hh: add assert to
1033 scm_or_str2symbol(SCM).
1035 * VERSION (PATCH_LEVEL): bump version.
1037 * lily/spacing-spanner.cc (musical_column_spacing): handle
1038 musical->nonmusical spacing case, where there is no spacing
1039 wish. Fixes issue #61.
1041 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
1042 (pango_item_string_stencil): use logical rect horizontally (to
1043 preserve spaces), ink_rect vertically (for time signatures).
1045 * lily/font-metric.cc (word_stencil): new interface function
1047 * input/regression/utf-8-mixed-text.ly: new file.
1049 * lily/percent-repeat-engraver.cc (listen_percent): remove
1052 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
1053 non-dynamic scripts. Fixes #30.
1055 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
1057 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
1059 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
1060 SCM_UNDEFINED for non-existent data.
1062 * lily/side-position-interface.cc (general_side_position): allow
1063 optional current_offset argument for chaining, so combinations of side-position
1064 and outside slur callback don't add up. Fixes issue #92.
1066 * lily/pango-font.cc (pango_item_string_stencil): use
1067 logical_rect. This prevents spaces after words from disappearing,
1070 * VERSION: release 2.9.20
1072 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
1074 * scm/define-grob-properties.scm (all-user-grob-properties):
1075 mention stencil as user settable.
1077 2006-10-02 Joe Neeman <joeneeman@gmail.com>
1079 * Documentation/user/page.itely (Page formatting):
1080 document auto-first-page-number
1082 * lily/page-breaking.cc (find_chunks_and_breaks):
1083 * lily/paper-score.cc (calc_breaking): Follow changes to the
1084 Constrained_breaking interface
1086 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
1087 here backwards, as an optimisation
1088 (initialize): new function; move most of the code in resize () here
1089 (combine_demerits): cache ragged_right_
1090 (Constrained_breaking): constructor now takes the Paper_score
1092 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
1094 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
1095 avoid parser lookahead for 0-ary functions.
1097 * lily/translator.cc: Extract event classes from
1098 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
1100 2006-10-02 Heikki Junes <hjunes@gmail.com>
1102 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
1105 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
1107 * scm/layout-page-layout.scm (page-breaking-wrapper): new
1108 function. Call the page breaking function selected in the
1109 `page-breaking' \paper variable, then the post processing function
1110 chosen using the `page-post-process' \paper variable.
1111 (line-height): new function. Return the height of a system.
1112 (line-minimum-position-on-page): new function. Return the position
1113 of a system on page (using the previous line position), only
1114 considering between system padding.
1115 (stretchable-line?): new function. Says whether a line can be
1116 stretched (ie. is not a title nor a single staff system).
1117 (page-maximum-space-left): new function. Computes space left on a
1118 page, when all systems are separated by their padding.
1120 * lily/page-breaking.cc (breaking::make_pages): Move page post
1121 processing function call to page breaking wrapper (common to all
1124 * lily/paper-book.cc (book::pages): call the page breaking
1125 wrapper, instead of the page breaker directly
1127 * ly/paper-defaults.ly: Add \paper variables for page breaking
1128 wrapper and page post processing function. Make
1129 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1130 `system-maximum-stretch-procedure' variable for holding a function
1131 computing the maximum stretch a system allows.
1133 * scm/layout-page-dump.scm (write-page-breaks): computes the
1134 stretch to apply to systems on a page to minimize left
1135 space. Dump this stretch length.
1137 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1138 the system-stretch property of the tweak data to stretch the
1140 (includePageLayoutFile): Void function which includes the
1141 generated page-layout file if it exists and if the page layout
1142 dumping is not asked.
1143 (scoreTweak): if the score tweak named by the argument exists,
1146 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1148 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1149 handle correctly the case where there are multiple \noPageBreaks
1152 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1154 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1156 * abc2ly.py fix so that entering " -- " will translate to a -- in
1157 the lilypond instead of a " - - "
1159 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1161 * lily/align-interface.cc: fix typo
1163 * lily/dynamic-text-spanner.cc (print): Add a special case for
1164 trill spanner right sides.
1166 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1168 * lily/align-interface.cc (get_extents_aligned_translates): add
1169 support for padding variable.
1171 * lily/break-align-interface.cc (self_align_callback): oops: use
1172 loop variable in guard.
1174 * input/regression/repeat-percent-grace.ly: new file.
1176 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1177 remember first currentCommandColumn of a grace run. Fixes issue 70.
1179 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1180 move class definition to CC file.
1182 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1184 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1185 measure-long repeats.
1187 * flower/include/international.hh: include stdarg.h
1189 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1191 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1192 put_systems_on_pages to return an empty result, we need to assign
1193 demerits properly in that case.
1194 (put_systems_on_pages): Make the number of pages depend on the
1195 evenness of page_number. Add auto-first-page-number.
1196 (calc_subproblem): ensure that the page-number is even for the
1197 left-hand page. Warn if the first page-turn doesn't fit onto the
1198 first (right-hand) page.
1200 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1201 (min_page_count): make this publicly accessible
1202 (min_page_count): fix a bug when there are forced page breaks that
1203 was introduced when I made this loop run backwards
1204 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1205 replace space_systems_on_min_pages with these two. The logic in
1206 space_systems_on_min_pages was getting too convoluted and is better
1207 contained in page-turn-page-breaking.
1209 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1211 (breakable_column): typo
1213 * lily/source-file.cc (get_line): fix off-by-one error
1214 and clean up some of the logic
1216 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1218 * lily/page-breaking.cc (make_pages): honour the first-page-number
1221 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1223 * VERSION (PACKAGE_NAME): bump version.
1225 2006-09-26 Pal Benko <benko.pal@gmail.com>
1227 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1228 (the latter is the same as petrucci-f which is kept for compatibility)
1230 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1232 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1234 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1236 * lily/global-context.cc (run_iterator_on_me): break out of loop
1237 if moment doesn't increase.
1239 * scm/define-grob-properties.scm (all-user-grob-properties): add
1242 * lily/accidental.cc (after_line_breaking): read forced property.
1244 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1247 * input/regression/accidental-forced-tie.ly: new file.
1249 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1251 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1253 * lily/figured-bass-engraver.cc: only listen to rest events if
1254 ignoreFiguredBassRest is not set.
1256 * scm/define-context-properties.scm
1257 (all-user-translation-properties): add ignoreFiguredBassRest property
1259 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1261 * lily/paper-book.cc (get_system_specs):
1262 (set_system_penalty): fix breakbefore.
1263 We used to set a penalty on the system after the break, now we
1264 set a permission on the system before the break
1266 * lily/grob-property.cc: add scm debugging hooks into
1267 property modification
1269 * lily/context-property.cc:
1271 rename make_foo_from_properties to internal_make_foo and
1272 move it from context-property.cc to a member function of
1275 * lily/include/lily-guile-macros.hh:
1276 overload ly_symbol2scm macro so that there is no more need
1279 * lily/volta-repeat-iterator.cc:
1280 * lily/tweak-engraver.cc:
1281 * lily/tuplet-bracket.cc:
1282 * lily/span-bar-engraver.cc:
1283 * lily/script-engraver.cc:
1284 * lily/prob-scheme.cc:
1285 * lily/pointer-group-interface.cc:
1287 * lily/grob-scheme.cc:
1288 * lily/grob-property.cc:
1290 * lily/context-property.cc:
1291 * lily/break-substitution.cc:
1292 * lily/break-align-engraver.cc:
1293 * lily/axis-group-interface.cc:
1294 * lily/align-interface.cc:
1295 remove calls to internal_FOO
1297 * lily/system-start-delimiter-engraver.cc:
1298 * lily/parenthesis-engraver.cc:
1299 * lily/accidental-engraver.cc:
1300 remove calls to make_foo_from_properties
1302 2006-09-23 Graham Percival <gpermus@gmail.com>
1304 * Documentation/user/programming-iterfaces.itely: fix
1305 def-music-function -> define-music... leftover.
1307 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1309 * lily/page-spacing.cc (min_page_count): by running the loop
1310 backwards, we can calculate ragged_last properly.
1312 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1314 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1315 printfirst-page-number -> print-first-page-number
1317 * python/convertrules.py: corresponding rule.
1319 * Documentation/user/page.itely (Page formatting): Document the
1320 default values of all page layout parameters.
1322 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1324 * lily/lexer.ll: remove limitation on music function arity. New
1325 mode extratoken, which inserts extra EXPECT_* tokens after
1326 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1328 * lily/parser.yy: Change grammar for music function accordingly.
1330 * lily/include/lily-parser.hh: New method get_state, new member
1331 hidden_state. Works around a problem when parser fetches
1332 MUSIC_FUNCTION token but not the following EXPECT_* token.
1334 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1337 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1338 references to Music; use ASSIGN_EVENT_ONCE everywhere
1340 * lily/grob-info.cc: junk *music_cause
1342 * lily/music.cc: copy eventified articulations to stream event
1344 * lily/part-combine-iterator.cc: Cleanup using enums
1346 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1349 * lily/include/engraver.hh: Junk music.hh include
1351 * lily/stream-event.cc: Changed constructors
1353 2006-09-21 Graham Percival <gpermus@gmail.com>
1355 * Documentation/user/tweaks.itely (Fitting music onto fewer
1356 pages): change settings to avoid warning messages.
1358 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1360 * Documentation/user/tweaks.itely (Fitting music onto fewer
1361 pages): Add between-system-space setting.
1363 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1365 * lily/accidental-placement.cc (calc_positioning_done): don't
1366 trigger Y-extent calculation too early. Use pure_height instead.
1368 * lily/scale.cc (LY_DEFINE): new file.
1370 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1372 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1373 that happen at the start of a score: having a zero-length
1374 chunk was messing up min_system_count calculations.
1376 * lily/source-file.cc (get_line): lower_bound, not
1377 binary_search. Fixes problem where point-and-click would
1378 always point to the first line.
1380 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1382 * lily/accidental-placement.cc (calc_positioning_done): also put
1383 stems into accidental support.
1385 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1388 * scm/script.scm (default-script-alist): avoid-slur and
1389 slur-padding for portato script.
1391 * lily/stem-tremolo.cc (translated_stencil): new function.
1392 (height): use new function. Fixes tremolos on whole notes.
1394 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1397 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1399 * scripts/abc2ly.py (try_parse_comment): idem.
1401 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1402 bar_string iso. string.find()
1406 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1409 2006-09-18 Graham Percival <gpermus@gmail.com>
1411 * Documentation/user/basic-notation.itely: add bug
1412 warning about ties and octavation/clef.
1414 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1416 * VERSION (PACKAGE_NAME): release 2.9.18
1418 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1420 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1421 figure out midi file names right here.
1423 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1425 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1427 * scm/backend-library.scm: option naming: gs-font-load*s*
1429 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1432 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1434 * scm/define-music-types.scm (music-descriptions): remove
1435 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1436 Music::to_event doesn't complain.
1438 * lily/accidental-placement.cc (ape_compare):
1439 * lily/semi-tie.cc (compare):
1440 * lily/note-column.cc (shift_compare): replace by XXX_less
1442 * lily/tie-formatting-problem.cc (set_chord_outline):
1443 * lily/tie-column.cc (calc_positioning_done):
1444 * lily/system.cc (post_processing)
1446 * lily/stem.cc (note_head_positions)
1447 (calc_positioning_done):
1448 * lily/spanner.cc (do_break_processing)
1449 (find_broken_piece):
1450 * lily/span-bar.cc (print):
1451 * lily/semi-tie-column.cc (calc_positioning_done):
1452 * lily/rest-collision.cc (calc_positioning_done):
1453 * lily/program-option.cc (get_help_string):
1454 * lily/note-collision.cc (get_clash_groups):
1455 * lily/new-fingering-engraver.cc (position_scripts):
1456 * lily/keyword.cc (Keyword_table):
1457 * lily/hara-kiri-group-spanner.cc (request_suicide):
1458 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1459 * lily/accidental-placement.cc (calc_positioning_done):
1461 * lily/beam.cc (get_beam_segments):
1462 * lily/grob-array.cc (remove_duplicates):
1465 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1466 ragged-last-bottom = ##f (test the new page breaker)
1468 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1470 * scm/define-context-properties.scm
1471 (all-internal-translation-properties): remove properties that
1472 were used to communicate page-turn stuff to the paper-column
1475 * lily/lily-guile.cc (robust_scm2string): new function
1477 * lily/paper-column-engraver.cc: Clean up page turn stuff
1479 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1480 instead of cluttering up paper-column-engraver.cc
1482 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1484 * scm/layout-page-dump.scm (scm): export utility function names,
1485 to allow user writing cutsom dumping functions.
1487 * scm/layout-page-layout.scm: export utility function names to
1488 enable custom page breaking function writing. Tabify.
1489 (line-next-space): use ?-suffix only for predicates
1490 (page-maximum-space-to-fill): new function. Return the space
1491 between first and bottom system of a page, to give to
1493 (space-systems): use a space-to-fill argument (for instance as
1494 computed by page-maximum-space-to-fill) instead of computing
1495 internaly this space with the page height. That way, the caller
1496 can adjust the space to use.
1497 (make-page-from-systems, walk-paths): compute space to fill before
1498 calling space-systems.
1500 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1502 * scm/script.scm (default-script-alist): set paddings for every
1503 type here, increase for portato mark.
1505 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1508 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1510 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1511 use spanner::set-spacing-rods
1513 * lily/note-column.cc: reformat.
1515 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1516 step positioning for note/rest combinations.
1518 * input/regression/rest-note-collision.ly: new file.
1520 * scm/define-grobs.scm (all-grob-descriptions): add
1523 * flower/include/std-vector.hh: switch off again.
1525 * VERSION (PATCH_LEVEL): bump to 2.9.18
1527 * flower/include/std-string.hh: idem.
1529 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1531 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1533 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1536 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1538 * Documentation/user/page.itely: update page breaking documentation
1540 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1542 * lily/note-collision.cc (calc_positioning_done): only access
1543 first head if available.
1545 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1547 * scm/framework-ps.scm (output-preview-framework): use new name.
1549 * lily/program-option.cc (internal_set_option): use new names.
1551 * Documentation/user/SConscript (lilypond_book_flags): update -d
1554 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1555 output into other programs): new variable names.
1557 * scm/lily.scm (define-scheme-options): uniformize var names.
1559 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1560 tuplets_ is non-empty before popping.
1562 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1564 * lily/spanner.cc (find_broken_piece):
1565 * lily/spacing-spanner.cc (get_columns):
1566 * lily/source-file.cc (get_line):
1567 * lily/simple-spacer.cc (get_column_description):
1568 * lily/keyword.cc (lookup):
1569 use the new binary search.
1571 * flower/include/std-vector.hh: replace binary_search with
1572 a more STL-like version
1574 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1576 * lily/tie-performer.cc: remove unused last_event_ property.
1577 (class Tie_performer): add now_tied_heads_ property for
1578 partially-tied heads.
1579 (acknowledge_audio_element): when adding an Audio_note, put the
1580 note in now_tied_heads_ if the audio note is partially tied.
1581 (stop_translation_timestep): always include entries in
1582 now_tied_heads_ in heads_to_tie_.
1584 * lily/drum-note-performer.cc (process_music): look for tie-events
1585 in the articulations; pass to Audio_note constructor.
1587 * lily/note-performer.cc (process_music): look for tie-events in
1588 the articulations; pass to Audio_note constructor.
1590 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1593 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1594 include initializer in constructor.
1596 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1598 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1599 unless they are breakable. This fixes discrepancies between the forces
1600 calculated here and the forces calculated in get_line_configuration.
1602 * lily/grob.cc (pure_relative_y_coordinate): fix some
1603 mis-estimation that was happening with piano staves.
1605 * lily/constrained-breaking.cc (resize): don't choke if we get a
1606 measure that won't fit on a line.
1607 (combine_demerits): don't consider uniformity when ragged
1609 * lily/page-spacing.cc (solve): why the f* were there two of these?
1610 (calc_subproblem): properly handle the case where a system is taller
1613 * lily/system.cc (get_paper_system): ensure that all the permissions
1614 and penalties are passed to the paper systems.
1616 * lily/page-breaking.cc (create_system_list): support system-count.
1618 * scm/define-grobs.scm (pure-print-callbacks): add
1619 ly:script-interface::print
1621 * lily/page-spacing.cc (min_page_count): fix calculation of min
1622 pages if we are ragged and there are non-zero springs.
1624 * scm/layout-page-layout.scm: if the pure-height estimates are under
1625 the real height, allow space-systems to ignore padding if it is
1626 needed in order to fit the systems on one page
1628 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1630 (solve): fix performance problem. Make sure we always get at least
1633 * lily/page-breaking.cc (make_pages): include write-page-breaks
1636 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1638 * scm/define-grobs.scm: add the new slur-callback
1639 fix pure-relevant to not exclude grobs whose extent is already
1642 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1645 * lily/slur.cc (pure_height): new callback to estimate the height
1648 2006-09-02 Graham Percival <gpermus@gmail.com>
1650 * Documentation/user/invoking.itely: small update on
1651 MacOS X notes; thanks Trevor!
1653 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1655 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1657 * lily/lexer.ll: accept EOF in all states.
1659 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1661 * lily/source-file.cc (Source_file): always 0-terminate character
1662 array, to prevent Flex from barfing.
1664 * lily/global-context.cc (get_output): robustness: don't crash if
1665 no Score context found.
1667 * lily/include/book.hh (class Book): idem.
1669 * lily/include/context-def.hh (struct Context_def): idem.
1671 * lily/include/score.hh (class Score): don't derive from Input.
1673 * lily/book.cc (Book): add a copy ctor.
1675 * buildscripts/output-distance.py (FileLink.calc_distance): count
1676 orphans in distance too.
1678 * python/midi.c (midi_parse_track): robustness: don't read past
1681 * ly/performer-init.ly: add Control_track_performer, move
1682 Tempo_performer and Time_signature_performer to Score.
1684 * lily/score-performer.cc (acknowledge_audio_elements): override
1685 from base class: add to audio-columns
1687 * lily/control-track-performer.cc (add_text): new file: generate
1690 * lily/performance.cc: move output_header_track to
1691 Control_track_performer ()
1693 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1695 * lily/include/midi-item.hh (class Midi_channel_item): insert
1696 class into hierarchy, for items that can have a channel setting. Dehungarify.
1698 * lily/include/performer.hh (class Performer): remove
1699 play_element(); move functionality into announce/acknowledge.
1701 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1703 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1704 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1706 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1708 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1711 * lily/all-font-metrics.cc: remove TFM support.
1713 * lily/include/tfm.hh: remove TFM support, TFM reader.
1715 * lily/include/binary-source-file.hh: remove Binary_source_file.
1717 2006-08-27 Graham Percival <gpermus@gmail.com>
1719 * Documentation/topdocs/NEWS.itely: add @c marker for
1720 stuff I've processed.
1722 * Documentation/user/ various: info from NEWS.
1724 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1726 * lily/paper-column-engraver.cc (finalize): Oops, this change
1727 should have gone in on 2006-08-23
1729 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1731 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1732 quotes to quote arguments. Fixes Windows problem.
1734 * python/lilylib.py (progress): idem
1736 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1738 * scripts/musicxml2ly.py: fix for importing
1739 minor key signatures from MusicXML. (Phillip Kirlin)
1741 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1743 * python/musicxml.py:
1744 (Attributes.get_key_signature): now correctly retrieves mode from
1747 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1749 * lily/parser.yy (output_def_body): take ownership of identifier
1752 * Documentation/user/advanced-notation.itely (Metronome marks):
1753 update use of \tempo in \midi.
1755 * VERSION: release 2.9.16
1757 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1759 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1762 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1764 * input/regression/tie-chord-partial.ly: clarify example.
1766 * scm/define-music-properties.scm (all-music-properties): remove
1769 * ly/music-functions-init.ly: remove \untied.
1771 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1772 stream events and music events.
1773 (stop_translation_timestep): search acknowledged heads for
1776 * input/regression/tie-chord-partial.ly: new file.
1778 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1779 for \char markup command.
1781 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1783 * scm/define-music-types.scm (music-descriptions): consistency:
1784 Use solo-{one,two}-event iso. solo-[12]-event.
1786 * lily/part-combine-engraver.cc (process_music):
1787 Use solo-{one,two}-event iso. solo-[12]-event.
1789 * ly/declarations-init.ly (partCombineListener): add Timing as
1792 * flower/std-string.cc (string_copy): use copy ()
1794 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1796 2006-08-24 Graham Percival <gpermus@gmail.com>
1798 * Documentation/user/changing-defaults.itely, global.itely,
1799 lilypond-book.itely, page.itely: minor changes from mailist.
1801 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1803 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1806 * scm/define-context-properties.scm
1807 (translator-property-description): robustness: detect type errors
1808 in property definitions.
1810 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1811 after getting it from SCM.
1813 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1816 * lily/include/performer.hh (class Performer): strip get_tempo()
1819 * lily/midi-def.cc: strip file.
1821 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1823 * lily/include/context-def.hh (struct Context_def): use
1824 VIRTUAL_COPY_CONSTRUCTOR().
1826 * lily/source-file.cc: smobification.
1828 * lily/include/source-file.hh (class Source_file): smobify
1829 Source_file. Trim redundant members.
1831 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1832 clones after creation. This plugs a huge memory leak.
1834 * python/convertrules.py (FatalConversionError.sub_tempo):
1835 complete rule for \midi{ \tempo }
1837 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1839 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1841 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1843 * input/regression/optimal-page-breaking-hstretch.ly: test for
1844 ragged-last-bottom also
1846 * lily/paper-column-engraver.cc (finalize): make the end of a score
1847 breakable by default. This is to balance out a change in behaviour
1848 of the page-turn-breaker which no longer makes the end of a score
1851 * lily/paper-book.cc (pages): set the systems_ once the pages are
1854 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1855 Page_breaking interface.
1857 * lily/page-breaking.cc (class Page_breaking): make the interface
1858 more consistent and provide abstractions for dealing with
1861 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1862 algorithm. Use the new interface to Page_breaking.
1864 * lily/page-spacing.cc: better support for ragged-bottom and
1867 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1869 * python/convertrules.py (conv): warning on \tempo{}
1871 * ly/performer-init.ly: set tempoWholesPerMinute.
1873 * ly/midi-init.ly: remove \midi
1875 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1878 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1879 tempoUnitDuration for determining what to print.
1881 * lily/lyric-extender.cc: typo.
1883 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1885 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1888 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1890 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1891 eps-pad-boxes is set.
1893 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1895 * THANKS: update sponsors.
1897 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1899 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1901 * input/regression/tie-chord-untied.ly: new file.
1903 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1905 * scm/define-music-properties.scm (all-music-properties): add
1908 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1910 (headertext_nopics): sanitize no-examples text.
1912 * scm/page.scm (make-page-stencil): don't rely on extents of
1913 page-stencil. This fixes spurious space around .EPS files produced
1914 with the EPS backend.
1916 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1918 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1920 * lily/hara-kiri-engraver.cc (process_music): remember
1921 keepAliveInterfaces after processing \set
1923 * lily/lyric-extender.cc (print): support left/right-padding for
1926 * scm/documentation-generate.scm (string-append): revert lilypond/
1929 2006-08-20 Graham Percival <gpermus@gmail.com>
1931 * Documentation/user/lilypond.tely: clarification to
1932 license presentation (not to actual license).
1934 * Documentation/user/basic-notation.itely,
1935 instrument-notation.itely: minor changes.
1937 * input/ {regression, test}/+.ly: clarification to
1938 text (you can click on examples). Thanks, Mats!
1940 * input/manual/bar-lines.ly: adds ||: repeats.
1942 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1944 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1946 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1948 * Documentation/user/lilypond.tely: strip lilypond/ from info
1949 links, rename to category LilyPond
1951 * lily/pango-font.cc (description_string): new function.
1953 * VERSION: release 2.9.15
1955 * lily/spacing-engraver.cc (stop_translation_timestep): use
1956 Dscho's fix for spacing spanner.
1958 * scm/define-music-types.scm (music-descriptions): use
1959 apply-output-event for ApplyOutputEvent
1961 * lily/output-property-engraver.cc (listen_apply_output): rename
1962 from listen_layout_instruction.
1964 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1967 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1969 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1970 commandline args with contains, split by \n.
1972 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1973 write snippet-names file, call with -dread-file-list. Fixes
1974 command limitations on 64-bit systems.
1976 * input/regression/stencil-color-rotation.ly: new file.
1978 * lily/include/translator.hh (struct Acknowledge_information):
1979 revert: don't use Protected_scm in global objects, as GUILE can't
1980 handle gc_unprotect from automated destructors on MacOS X.
1982 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1983 color, not the original stencil. Fixes combinations of
1984 color/transparency/rotation.
1986 * scripts/lilypond-book.py (main): add --formats=eps for
1989 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1990 crash if spacing_ is nonexistent.
1992 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1994 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1995 \catcode`\@=12 in the LaTeX output.
1997 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1999 * scm/define-music-types.scm (music-descriptions):
2000 use sustain-event iso. sustain-pedal-event.
2002 2006-08-11 Joe Neeman <joeneeman@gmail.com>
2004 * scripts/convert-ly.py: honour the -n command-line switch
2006 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2008 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
2009 break specification.
2011 2006-08-10 Joe Neeman <joeneeman@gmail.com>
2013 * Documentation/user: convert-ly the user manual
2015 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2017 * stepmake/aclocal.m4: version check patch (thanks MWD)
2019 * ly/music-functions-init.ly: robustness. Don't crash if
2020 currentBarNumber is not a number.
2022 * VERSION (PATCH_LEVEL): bump.
2024 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2026 * stepmake/aclocal.m4: better version check; handle fooX.Y
2029 * ly/performer-init.ly: instrument name fixup.
2031 * input/manual/chord-names-jazz.ly (banterProperties):
2032 instrumentName update
2034 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
2036 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
2038 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
2039 function. Use hash tables to check membership.
2041 * lily/general-scheme.cc (LY_DEFINE): new function.
2043 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
2045 * lily/include/translator.hh (struct Acknowledge_information): add
2048 * ly/music-functions-init.ly: change name to BreathingEvent
2050 * input/regression/*.ly: apply it.
2052 * python/convertrules.py (conv): better instrumentName conversion
2055 * scm/define-music-types.scm (music-descriptions): add
2056 line-break-event to LineBreakEvent music
2058 * lily/music.cc (to_event): don't crash if music type not set.
2060 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
2063 * lily/spacing-engraver.cc (stop_translation_timestep): set
2064 spacing for proportional notation too.
2066 * scm/translation-functions.scm (format-bass-figure): inspect
2069 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
2071 2006-08-08 Joe Neeman <joeneeman@gmail.com>
2073 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
2075 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
2077 * scm/layout-page-layout.scm (make-page-from-systems): new function
2078 (optimal-page-breaks): use the new page-breaking calling convention
2080 * scm/define-context-properties.scm (all-user-translation-properties):
2083 * lily/paper-column-engraver.cc (stop_translation_timestep): add
2084 revokePageTurns functionality. If there is a special barline within
2085 the breakable region, break there instead of at the end of the region.
2087 * lily/paper-book.cc (pages): use the new page-breaking calling
2090 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
2092 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
2094 * scripts/lilypond-book.py: insert \sourcefileline command in
2095 output, so lilypond error messages refer to the spot in the
2096 original .lytex / .itely sourcefile.
2098 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2100 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
2101 space to next column for distance to fixed col.
2103 * VERSION (PACKAGE_NAME): release 2.9.14
2105 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
2108 * lily/accidental-engraver.cc (process_acknowledged): don't create
2109 accidental for trill span event. This fixes spurious accidentals
2112 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2114 * scm/define-grob-properties.scm (all-user-grob-properties):
2115 Clarify documentation of side-axis and direction. Thanks to Paul
2116 for the inspiration.
2118 * lily/bar-line.cc: Add documentation for "||:" also in the
2119 interface documentation.
2121 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2123 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2125 * lily/paper-column.cc (set_system): new function.
2127 * lily/spacing-engraver.cc (stop_translation_timestep): store
2128 SpacingSpanner refs in Paper_column.
2130 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2131 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2133 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2135 * lily/beam-engraver.cc (listen_beam): add method for
2136 Grace_beam_engraver too.
2138 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2140 * python/convertrules.py: Fix indentation bug that broke
2141 conversion of files older than 1.3.117.
2142 Fix escape error in the description for 2.9.6.
2144 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2146 * lily/*-engraver.cc: convert all try_music functions to listen_*
2149 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2150 enums to represent pedal types, and calculate more data statically.
2152 * scm/part-combiner.scm (recording-group-emulate): create a
2153 softcoded substitute for recording-group-engraver.cc.
2155 * lily/music.cc: make a common transpose function for events and
2158 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2159 ManualMelismaEvent, and obsoletes Melisma_translator.
2161 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2163 * input/test/instrument-name-align.ly: update version.
2165 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2167 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2168 Doc the --pdf flag to lilypond-book.
2170 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2172 * Documentation/topdocs/NEWS.tely (Top): add description.
2174 * input/regression/tuplet-full-length-note.ly: add file.
2176 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2177 always store axis group.
2179 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2181 * input/regression/instrument-switch.ly: new file.
2183 * lily/instrument-switch-engraver.cc (process_music): new file.
2185 * ly/engraver-init.ly: add Instrument_switch_engraver
2187 * ly/music-functions-init.ly: \instrumentSwitch
2189 * scm/define-context-properties.scm
2190 (all-user-translation-properties): add instrumentCueName
2192 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2194 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2196 * ly/music-functions-init.ly: music function \transposition.
2198 * lily/parser.yy (command_element): softcode \transposition.
2200 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2201 (process_music): oops.
2203 * lily/instrument-name-engraver.cc (start_spanner): new
2204 function. Create spanner when property changes.
2205 (stop_spanner): new function.
2207 * python/convertrules.py (conv): add rule.
2209 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2210 shortInstrumentName iso. instr.
2212 * scm/output-ps.scm (dashed-line): add phase argument to
2215 * lily/bar-line.cc (dashed_bar_line): new function.
2216 (compound_barline): support \bar "dashed".
2218 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2219 --output=DIR to DIR/BASE if it is a dir.
2221 * flower/file-name.cc (file_part): new function
2222 (dir_part): new function
2224 * lily/lily-parser-scheme.cc (LY_DEFINE):
2226 * DEDICATION: update
2228 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2230 * lily/instrument-name-engraver.cc: formatting.
2232 * python/convertrules.py (conv): bugfix for \epsfile.
2234 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2238 * lily/gourlay-breaking.cc: Oops, these should have been included
2241 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2243 * scripts/*.py (program_name): cleanup relocation snippets.
2245 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2247 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2249 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2250 page-breakable by default
2252 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2253 correctly calculated for a single-system page
2255 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2256 bigger than the second number
2258 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2259 acknowledge that we aren't satisfying constraints)
2261 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2264 * lily/grob.cc (pure_height): add minimum-Y-extent
2266 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2269 * lily/constrained-breaking.cc: convert code to use new Matrix class
2270 (get_best_solution): new function
2272 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2273 is a page with no systems
2275 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2277 * VERSION (PACKAGE_NAME): release 2.9.13
2279 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2282 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2284 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2286 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2289 * scm/define-grob-properties.scm (all-user-grob-properties):
2290 remove grace-space-factor.
2292 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2293 grace-spacing-interface
2294 (spacing-options-interface): add.
2296 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2298 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2300 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2301 GraceSpacing object.
2303 * lily/note-spacing.cc: fix prop list formatting
2305 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2306 beaming for grace notes too.
2308 * input/regression/spacing-grace.ly: update.
2310 * lily/grace-spacing-engraver.cc: new file.
2312 * lily/spacing-spanner.cc: add strict-grace-spacing.
2314 2006-07-20 Graham Percival <gpermus@gmail.com>
2316 * lily/parser.yy: compile fix.
2318 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2320 * scm/define-grobs.scm (all-grob-descriptions): typo.
2322 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2323 .eps extension from includegraphics.
2325 * scripts/lilypond-book.py (main): add support for --pdf.
2327 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2328 callback to compute common shortest duration.
2329 (set_springs): typo.
2331 * scm/define-grob-properties.scm (all-user-grob-properties): add
2332 strict-grace-spacing.
2334 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2335 support float_grace_columns_.
2337 * lily/spacing-options.cc (init_from_grob): new file.
2339 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2341 * input/regression/spacing-loose-grace.ly: new file.
2343 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2345 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2346 tupletFullLengthNote too. Choose right bound depending on value.
2348 * input/regression/tuplet-full-length-note.ly: new file.
2350 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2352 * lily/*-performer.cc: Converted try_music to listen_*
2354 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2355 as a stream-event internally. Introduce event_cause (), deprecate
2358 * scm/define-music-types.scm: Removed BusyPlayingEvent
2360 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2362 * Documentation/user/advanced-notation.itely (Font selection):
2363 Document how to get a list of available fonts using 'lilypond
2364 -dshow-available-fonts blabla'.
2366 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2368 * GNUmakefile.in: filter lily-XXX.pdf files.
2370 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2372 * scm/define-grob-properties.scm (all-internal-grob-properties):
2373 remove delta-pitch. Use delta-position everywhere.
2375 * scm/output-lib.scm (fall::print): use new order.
2377 * scm/output-ps.scm (path): reorder arguments.
2379 * scm/output-svg.scm (path): support for path primitive.
2381 * input/regression/bend-after.ly: new file.
2383 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2384 recipe for eps -> pdf conversion.
2386 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2388 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2391 2006-07-19 Graham Percival <gpermus@gmail.com>
2393 * input/manual/screech-boink.ly: moved to here.
2395 * input/screech-boink.ly: deleted.
2397 * scm/define-grob-properties.scm: clarify doc string.
2399 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2401 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2403 * scm/output-ps.scm (path): define path.
2405 * scm/define-stencil-commands.scm
2406 (ly:register-stencil-expression): add path.
2408 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2410 * ly/engraver-init.ly: add Fall_engraver
2412 * lily/parser.yy (music_function_event): allow musicfunction
2413 without music arg as music_function_event.
2415 * lily/grob-scheme.cc (LY_DEFINE):
2416 ly:grob-robust-relative-extent. New function.
2418 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2420 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2422 * scm/output-lib.scm (fall::print): new function
2424 * lily/fall-engraver.cc (stop_fall): new file.
2426 * ly/music-functions-init.ly: alphabetise.
2428 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2431 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2433 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2435 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2438 * lily/translator-group.cc (connect_to_context): non const error message.
2440 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2442 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2445 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2447 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2449 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2452 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2454 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2456 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2458 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2460 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2462 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2464 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2466 * scm/layout-page-layout.scm: Define module, tidy code, use more
2467 functions iso. a single big one.
2469 * scm/layout-page-dump.scm: move page dump functions used in two
2470 pass spacing to this file. Define module.
2472 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2475 * ly/paper-defaults.ly: use module layout-page-layout.
2477 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2479 * lily/music.cc: Revised MusicEvent event class. It now contains
2480 event data directly instead of encapsulating it in music. The
2481 previously used class is renamed to OldMusicEvent.
2483 * lily/stream-event.cc: Stream events are now probs.
2485 * lily/translator-group.cc, lily/translator.cc: Translators can
2486 now listen directly to stream events, by using macros
2487 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2489 * lily/arpeggio-engraver.cc: Converted to use new event system
2491 * THANKS: Corrected spelling mistake.
2493 2006-07-12 Graham Percival <gpermus@gmail.com>
2495 * Documentation/user/SConscript, make/lilypond-vars.make,
2496 input/GNUmakefile: doc build looks in input/manual instead
2499 * input/manual/ GNUmakefile, SConscript: build files for
2502 * input/test/ various: some files moved to input/manual/
2504 * Documentation/user/basic-notation.itely: small updates;
2505 thanks Kieren and Charles!
2507 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2509 * VERSION (PACKAGE_NAME): release 2.9.11
2511 * Documentation/topdocs/NEWS.tely (Top): update prop value
2513 * Documentation/user/basic-notation.itely (Tuplets): new property
2516 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2518 * python/convertrules.py (conv): tweaks.
2520 * VERSION (PATCH_LEVEL): bump version.
2522 * python/convertrules.py (conv): add rule for
2523 tupletNumberFormatFunction.
2525 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2526 tupletNumberFormatFunction.
2528 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2529 text through 'text callback.
2531 * lily/time-scaled-music-iterator.cc (construct_children): copy
2532 tweaks generated events.
2534 * scm/define-context-properties.scm
2535 (all-user-translation-properties): remove tupletNumberFormatFunction
2537 * lily/tuplet-engraver.cc (process_music): don't read
2538 tupletNumberFormatFunction
2540 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2543 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2545 * lily/global-context-scheme.cc: Separated ly:run-translator into
2548 * lily/score-engraver.cc, lily/score-performer.cc,
2549 scm/define-context-properties.scm: Make paper/midi output
2550 accessable as a context property.
2552 * lily/score-translator.cc, lily/score-context.cc: Removed.
2554 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2556 * scm/ps-to-png.scm (Module):
2557 * scm/framework-tex.scm (Module):
2558 * scm/framework-ps.scm (Module):
2559 * scm/backend-library.scm (Module):
2560 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2561 "dDEVICEHEIGHTPOINTS".
2563 2006-07-04 Graham Percival <gpermus@gmail.com>
2565 * Documentation/user/ various: general improvements to
2566 "working with lilypond files" section.
2568 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2570 * lily/sequential-iterator.cc: Change the default get_music_list
2571 to read elements-callback music property
2573 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2574 processing of multimeasure rests. Softcoded
2575 sequential-music-iterator.
2577 * lily/sequential-music-iterator.cc: Removed.
2579 2006-06-28 Graham Percival <gpermus@gmail.com>
2581 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2583 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2585 * lily/parser.yy: Wrap non-post-events in EventChords before
2586 assigning them to identifiers.
2588 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2590 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2591 gives correct vertical placement of \bar ":" in all staff
2592 sizes. Thanks Martial!
2594 2006-06-26 Graham Percival <gpermus@gmail.com>
2596 * Documentation/user/invoking.itely : minor update from mailist.
2598 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2600 * lily/ various: Introduce stream events of types Prepare,
2601 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2602 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2604 * lily/global-context*.cc: Time is now -inf before iteration
2607 * lily/include/context.hh: Removed unique_, init_
2609 * Documentation/topdocs/NEWS: Make the feathered beam example
2610 avoid triggering a bug.
2612 2006-06-24 Graham Percival <gpermus@gmail.com>
2614 * Documentation/user/ various: small additions from mailist.
2616 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2618 * ly/performer-init.ly: Add some missing links in the context
2619 hierarchy for MIDI output. There are probably some more missing!
2621 2006-06-21 Graham Percival <gpermus@gmail.com>
2623 * Documentation/user/ various: minor spelling fixes;
2624 thanks Dave Luttinen!
2626 * Documentation/user/ various: small clarifications;
2627 thanks Anthony Youngman!
2629 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2631 * po/fr.po: add \n appropriately.
2633 * lily/lexer.ll: remove ? from version-seen?
2635 2006-06-19 John Mandereau <john.mandereau@free.fr>
2637 * po/fr.po; update translation, by Jean-Charles Malahieude and
2640 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2642 * THANKS: add Markus Schneider.
2644 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2645 Staff_symbol_engraver
2647 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2648 replace staff_engraver
2650 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2653 * lily/staff-collecting-engraver.cc
2654 (acknowledge_end_staff_symbol): new function
2656 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2658 * lily/staff-collecting-engraver.cc
2659 (acknowledge_end_staff_symbol): new function.
2661 * lily/main.cc: switch on relocation by default.
2663 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2665 * lily/spacing-spanner.cc (musical_column_spacing): set
2666 compound_fixed_note_space to 0.0. Document why.
2668 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2669 range of inverse_hooke_
2670 (Simple_spacer): init completely.
2672 (get_line_configuration): don't use cols.resize(); it introduces
2675 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2677 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2679 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2680 try. Divide by beatlength.
2682 * input/regression/beaming-ternary-metrum.ly: update doc.
2683 add beatLength hack.
2685 * scm/music-functions.scm (make-time-signature-set): add
2686 standard-beat-grouping.
2688 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2690 * input/regression/tie-whole.ly: new file.
2692 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2693 cross center of note head in case of invisible stem.
2695 2006-06-16 Graham Percival <gpermus@gmail.com>
2697 * Documentation/user/ various: small fixes from mailist.
2699 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2701 * lily/breathing-sign.cc (offset_callback): idem.
2703 * lily/align-interface.cc (align_to_fixed_distance): remove
2706 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2709 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2711 * VERSION (PACKAGE_NAME): release 2.9.9
2713 * ly/lilypond-book-preamble.ly: add \version
2715 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2717 * scripts/lilypond-book.py (PREAMBLE_LY): include
2718 lilypond-book-preamble.ly
2720 * lily/stem.cc (get_beaming): return max of 0 and
2721 scm_ilength. Fixes slurring from/to beams.
2723 * ly/lilypond-book-preamble.ly: new file.
2725 * lily/slur.cc: add inspect-index feature.
2727 2006-06-13 Graham Percival <gpermus@gmail.com>
2729 * Documentation/user/tutorial.itely: trivial fix.
2731 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2733 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2734 all non-event music in the parser via MAKE_SYNTAX.
2736 * lily/parser-scheme.cc: Add ly:parser-error function
2738 * scm/paper.scm: fix typo
2740 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2744 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2747 * buildscripts/output-distance.py (test_compare_signatures):
2749 (read_signature_file): use new signature format.
2751 * scm/stencil.scm (write-system-signature): simpler signature
2754 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2757 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2758 stem_end_position, but estimate instead.
2760 * lily/tuplet-bracket.cc (calc_positions): look at
2761 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2762 brackets narrower than beams.
2764 * lily/lexer.ll: set version-seen? even if version is
2767 * lily/rest.cc (y_offset_callback): bugfix: decide position
2768 override based on scm_is_number(). Fixes \rest on center staff
2771 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2772 patterns for 16th triplets.
2774 2006-06-10 Graham Percival <gpermus@gmail.com>
2776 * Documentation/user/ page.itely, global.itely: editing
2779 * Documentation/user/ various: findex -> funindex.
2781 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2783 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2784 insert extra tuplet events.
2786 2006-06-10 Graham Percival <gpermus@gmail.com>
2788 * Documentation/user/programming-interfaces.itely: add
2791 * python/convertrules.py: add annotatefoo -> annotate-foo
2794 * Documentation/user/global.itely: start editing.
2796 * Documentation/user/page.itely: major editing, new spacing
2799 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2801 * scm/define-markup-commands.scm (wordwrap-markups): use
2802 output-def 'line-width if undefined.
2804 * HACKING: trim outdated info.
2806 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2808 * scm/define-grobs.scm (all-grob-descriptions): Add
2809 line-spanner-interface to all grobs that already have
2810 text-spanner-interface or dynamic-text-spanner-interface
2812 * scm/page.scm: Rename annotate{headers,systems,page}->
2815 * input/regression/page-spacing.ly,
2816 input/regression/page-layout-manual-position.ly: idem
2818 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2820 * lily/line-spanner.cc: cleanup property list.
2822 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2823 generator expressions (2.3 compat).
2825 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2827 * lily/vertical-align-engraver.cc: Make sure that the
2828 align{Above,Below}Context properties are included in the automatic
2831 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2833 * scm/paper-system.scm (paper-system-annotate): also annotate the
2834 estimated pure-Y-extent
2836 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2838 * lily/system.cc (break_into_pieces): set the estimated height
2839 of each child system
2841 * lily/stem.cc (pure_height): new pure-Y-extent callback
2843 * lily/staff-symbol-referencer.cc (callback): don't destroy
2844 the staff-position property
2846 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2847 consider_suicide into two functions
2849 * lily/constrained-breaking.cc (resize): use the new pure
2850 callbacks to estimate the height of a system
2852 * lily/axis-group-interface.cc (pure_group_height): new
2853 side-effect-free VerticalAxisGroup height-callback
2855 * lily/align-interface.cc (get_extents_aligned_translates):
2856 split align_elements_to_extents into two functions
2857 (get_pure_child_y_translation): new function
2859 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2861 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2863 * lily/paper-score.cc: cache break_indices and columns
2865 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2867 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2869 * lily/font-config.cc (init_fontconfig): do the init if
2870 cache_file, but don't look at cache_file.
2872 * input/regression/quote-tie.ly: new file.
2874 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2875 to Head_event_tuple, so we deal gracefully with ties on
2878 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2881 2006-06-08 Graham Percival <gpermus@gmail.com>
2883 * input/test/ smart-transpose.ly, reverse-music.ly:
2884 \applyMusic to music functions update, thanks Michael!
2886 2006-06-07 Graham Percival <gpermus@gmail.com>
2888 * input/test/ add-staccato.ly, add-text-script.ly,
2889 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2890 music functions update, thanks to Michael Meixner.
2892 * Documentation/user/music-glossary.tely: small fix
2895 * Documentation/user/ various: minor additions from mailist.
2897 * Documentation/user/lilypond.tely, basic-notation.itely:
2898 small test of @funindex. (works here)
2900 * input/test/font-table.ly: reduce size to partially
2901 de-ugly version in manual.
2903 * Documentation/user/page.itely: new file (split former
2904 "global issues" into "page settings" and "non-musical
2907 * Documentation/user/ various: fix @ref{}s to match
2908 new chapter names (above).
2910 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2912 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2914 2006-06-06 Graham Percival <gpermus@gmail.com>
2916 * Documentation/user/advanced-notation.itely: add example
2917 for segno/coda on barline.
2919 * tex/texinfo.tex: merge from upstream.
2921 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2923 * scripts/lilypond-book.py (process_snippets): Argument fix.
2926 * buildscripts/builder.py:
2929 * Documentation/user/SConscript: More SCons fixes.
2931 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2933 * lily/font-config.cc (init_fontconfig): Only initialize if
2934 global cache_file is found.
2936 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2938 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2941 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2943 * VERSION (PACKAGE_NAME): release 2.9.8
2945 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2946 function. Delay ledger modifying ledgered grobs to
2947 stop_translation_timestep(), to ensure that we're ledgering
2948 according to the new spanner.
2949 (acknowledge_staff_symbol): don't check for non-NULL
2950 staff_sym->get_bound()
2952 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2955 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2958 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2959 directly from srcdir/stepmake/aclocal.m4
2961 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2964 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2966 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2968 * lily/simple-spacer.cc (get_line_configuration): add
2969 keep-inside-line rods
2970 (struct Column_desc): add constructor
2971 (struct Rod_desc): add constructor
2972 (get_line_forces): check for forced page breaks here too
2974 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2975 support/elements cycles between InstrumentNames and AxisGroups
2977 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2979 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2981 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2982 make-txt-files target.
2984 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2985 make-txt-files target.
2987 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2989 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2992 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2994 * Documentation/user/instrument-notation.itely,
2995 input/regression/breathing-sign-ancient.ly,
2996 input/test/divisiones.ly: Removed redundant property settings for
2999 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
3000 fix lyrics alignment problems. They are implemented now as scheme
3001 functions that add the appropriate unicode char to the first lyric
3002 event rather than adding a separate lyric event. Minor edit of
3005 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3007 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
3008 pollute src dir with built .txt files, but install directly from
3009 Documentation/topdocs/out/
3011 * buildscripts/output-distance.py
3012 (ComparisonData.create_html_result_page): put version/directories
3015 * Documentation/topdocs/NEWS.tely (Top): document spacing section
3018 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
3019 Patch by Karl Hammar
3021 * buildscripts/readlink.py: add file.
3022 Patch by Karl Hammar
3024 2006-06-06 Joe Neeman <joeneeman@gmail.com>
3026 * lily/tuplet-number.cc (print): prevent stencil from being
3029 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3031 * scm/stencil.scm (write-system-signature): explicitly
3032 -well, superfluously- close output port.
3034 * buildscripts/output-distance.py (main): oops. Add extra argument.
3036 2006-06-05 Graham Percival <gpermus@gmail.com>
3038 * Documentation/user/music-glossary.tely: clarified example
3039 from Francisco Vila, thanks!
3041 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3043 * input/regression/spacing-section.ly: new file.
3045 * lily/input.cc (programming_error): new function.
3047 * lily/spacing-engraver.cc (try_music): new function. Accept
3048 spacing-section-event
3050 * lily/spacing-spanner.cc (set_springs): take slices of all
3051 columns for spacing.
3053 * lily/include/paper-column.hh (class Paper_column): add
3054 Paper_column::compare.
3056 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
3058 * scm/define-music-types.scm (music-descriptions): add
3061 * lily/music-iterator.cc (report_event): use programming_error for
3062 sending non-event error.
3064 * lily/input.cc (programming_error): new function
3066 * buildscripts/output-distance.py (main): use compare-XXX for
3068 (main): --threshold option, default at 0.30
3070 * output-distance.py (main): add --threshold option.
3072 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
3074 * scm/paper-system.scm (paper-system-annotate): fix problem when
3075 annotating an empty system
3077 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3079 * GNUmakefile.in: reinstate old web tar/copying.
3081 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3083 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
3084 nothing changes. (Erik S)
3086 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
3089 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
3091 * scm/define-markup-commands.scm (whiteout): do not force
3092 foreground color of argument markup to black.
3094 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
3095 the left of the arrow, instead of below the arrow name, so that,
3096 when two little arrows are vertically stacked, their dimensions
3097 and name should not overlap. Add a color key parameter.
3099 * scm/paper-system.scm (paper-system-annotate): Annotate
3100 next-space+next-padding instead of next-space. Annotate space
3101 between next-padding and next-space+padding, respectively, and
3102 following system extent and refpoint-Y-extent. Use colors.
3104 * scm/page.scm (annotate-page): translate annotations slightly to
3107 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3109 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
3110 fix for x-staff slurs. Thanks Joe!
3112 * buildscripts/output-distance.py
3113 (SystemLink.output_expression_change_count): keep track of changed
3114 details, and dump in details html page.
3116 * input/regression/figured-bass-staff.ly: add note about setting
3117 properties in Staff context.
3119 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3120 add slurs and ties to support too.
3122 * buildscripts/output-distance.py (main): set dest_dir
3123 argument. Add --max-count option.
3125 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3127 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3128 shortcuts for special unicode chars that are useful in chant
3129 notation. Revised exisiting and added new comments.
3131 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3133 * make/mutopia-rules.make: remove duplicate recipe.
3135 2006-06-02 Werner Lemberg <wl@gnu.org>
3137 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3138 Add support for U+0132 (IJ) and U+0133 (ij).
3140 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3142 * buildscripts/output-distance.py (FileLink): new class. collect
3143 info systems from one .ly file.
3144 (FileLink.link_files_for_html): further tweaks.
3146 2006-06-02 Graham Percival <gpermus@gmail.com>
3148 * tex/texinfo.tex: partial fix for @funindex.
3150 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3153 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3155 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3157 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3158 @example too. Backportme.
3160 2006-06-02 Graham Percival <gpermus@gmail.com>
3162 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3163 from Werner Lemberg.
3165 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3167 * Documentation/user/music-glossary.tely: additional spanish
3168 updates and a lyrics fix in an example.
3170 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3172 * scm/define-grob-properties.scm: Previous patch contained
3173 spurious line from another patch not yet committed. Fixed.
3175 * scm/define-grob-properties.scm: Add missing doc strings for
3178 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3180 * buildscripts/output-distance.py
3181 (ComparisonData.write_text_result_page): separate the scores, sort
3184 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3187 * buildscripts/output-distance.py (me_path): use argv[0] for
3189 (ComparisonData.img_cell): use colored borders.
3191 * scm/stencil.scm (write-system-signature): escape newlines too.
3192 (write-system-signature): use (1,-1) interval for empty interval
3194 2006-01-01 Graham Percival <gpermus@gmail.com>
3196 * Documentation/user/music-glossary.tely: Spanish updates
3197 from Francisco Vila.
3199 * Documentation/user/lilypond-book.itely: addition from
3202 * Documentation/user/ various: edits, small additions
3205 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3207 * GNUmakefile.in (tree-lib-prefix-current):
3208 (tree-share-prefix-current): Use version number in tree, add
3211 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3213 * GNUmakefile.in: write VERSION, again.
3215 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3216 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3218 * stepmake/aclocal.m4: robuster version detection.
3220 * buildscripts/output-distance.py
3221 (ComparisonData.create_html_result_page): copy only if file
3222 exists, fixup src paths.
3224 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3226 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3228 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3229 Another datarootdir reto.
3231 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3232 available. This should be moved to postinstall-lilypond-doc.
3234 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3236 * GNUmakefile.in: simplify local-WWW-post.
3237 remove -type l from find.
3239 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3240 fixes. Don't follow symlinks.
3241 (ComparisonData.create_html_result_page): remove previous results.
3242 insert ../python in path.
3244 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3246 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3248 * config.make.in (datadir): Add datarootdir to silence autoconf.
3250 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3252 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3254 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3256 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3257 slash beams too wide.
3259 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3261 * VERSION: release 2.9.7
3263 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3265 * lily/relocate.cc (read_relocation_dir): Do not blindly
3268 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3270 * lily/parser.yy: replace THIS by PARSER
3272 * Documentation/index.html.in: add link to test-results.html page.
3274 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3276 * scm/translation-functions.scm (format-bass-figure): translate
3277 digits over 10 to the left
3279 * scm/define-markup-commands.scm (translate-scaled): new markup.
3281 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3284 * ly/engraver-init.ly: add Figured_bass_engraver
3286 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3288 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3290 * lily/score-engraver.cc (announce_grob): only note START announces.
3292 * lily/include/engraver-group.hh (Translator_group):
3293 acknowledge_hash_table_ is now drul.
3295 * lily/engraver.cc (announce_end_grob): new method.
3297 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3299 * lily/translator-dispatch-list.cc (create): take start_end argument.
3301 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3302 acknowledge_static_array_ to drul
3304 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3306 * scm/define-grob-interfaces.scm
3307 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3309 * scm/define-grobs.scm (all-grob-descriptions): add
3310 BassFigureAlignmentPositioning
3312 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3313 number stays up to date. Backportme.
3315 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3317 * Documentation/user/basic-notation.itely (Bar lines): Document
3320 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3322 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3324 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3325 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3328 * Resurrect `scons lily' build.
3330 * SConstruct (symlink_tree): Bugfix: link
3331 music-drawing-routines.ps to file iso directory.
3333 * lily/SConscript: Remove kpath-guile from LIBS.
3335 * SConstruct (libdir_package_version): Typo.
3336 (configure): Comment-out fontforge for lack of fontforge.pc .
3337 Also add libdir* to environment.
3339 2006-05-30 Graham Percival <gpermus@gmail.com>
3341 * Documentation/user/ various: minor additions from mailist and
3344 2006-05-30 Paco <fravd@ya.com>
3346 * Documentation/user/music-glossary.tely: numerous corrections and
3347 some new translations.
3349 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3353 * buildscripts/output-distance.py
3354 (ComparisonData.create_html_result_page): new routine: summarise
3355 results in HTML page with images.
3356 (ComparisonData.create_text_result_page): create summary text files too.
3358 * GNUmakefile.in (web-ext): package .signature files too. They
3361 * scm/stencil.scm (write-system-signature): typo.
3363 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3365 * scm/stencil.scm (write-system-signature): better escaping.
3366 only write signature for music systems, not for markup systems.
3368 * scm/framework-ps.scm (output-framework): dump-signatures support
3371 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3373 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3374 for -dno-point-and-click
3376 * lily/grob.cc (get_print_stencil): don't read
3377 point_and_click_global to determine whether to set grob-cause.
3379 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3381 * buildscripts/output-distance.py (main): new function.
3382 (ComparisonData): new class.
3384 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3385 careful with generating new LedgerLineSpanners.
3387 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3389 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3390 context. This fixes double ledger lines in output.
3392 * lily/system.cc (get_paper_system): remove 3 layer limit.
3394 * buildscripts/output-distance.py (SystemLink.distance): new
3395 file. Compare signatures.
3397 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3399 * lily/grob-array.cc (remove_duplicates): rename from
3400 uniq(). Sort before calling uniq() so it actually works.
3402 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3404 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3405 \version from lilypond file snippet.
3406 (Lilypond_file_snippet.ly): oops. typo.
3407 (find_toplevel_snippets): urgh. again.
3409 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3410 prevent duplicated broken items in output.
3412 * scm/framework-eps.scm (output-classic-framework): only dump if
3413 dump-signatures is set.
3415 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3417 * scm/stencil.scm (write-system-signature): new routine: write
3418 python parseable signature of a separate paper system.
3421 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3423 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3427 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3429 * translator-group.cc: send music events to engravers in
3430 non-bottom contexts.
3432 * tuplet-engraver.cc: process tuplet brackets in correct order.
3434 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3436 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3437 arg 2 might point us to a new binary (patch by Karl Hammar)
3439 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3441 * VERSION (PACKAGE_NAME): release 2.9.6
3443 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3445 * Documentation/user/*.itely: 2nd
3446 attempt: replace funindex -> findex globally.
3448 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3450 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3451 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3453 * scm/define-music-display-methods.scm: display methods for
3454 breaks. Fix \applyOutput.
3456 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3458 * Documentation/user/macros.itexi: comment out funindex expansion.
3460 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3463 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3464 Karl Hammar. Backportme.
3466 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3468 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3470 * Documentation/user/programming-interface.itely (Running a
3471 function on all layout objects): idem.
3473 * Documentation/user/introduction.itely (Automated engraving):
3474 update \applyOutput syntax
3476 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3477 remove debugging hook.
3479 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3482 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3484 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3485 TEXI2DVI_FLAGS to texi2dvi invocation.
3487 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3489 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3490 works. More work is done by iterator now, and engraver has been
3491 very much simplified.
3493 * lily/translator-group.cc: try_music is now invoked through a
3496 * lily/*-iterator.cc: Massive cleanups. Junked
3497 try_music_in_children globally. Renamed try_music to report_event,
3498 and made that method descend to a bottom context automatically.
3500 * lily/event-iterator.cc: New file.
3502 * lily/output-property-iterator.cc,
3503 lily/old-lyric-combine-music-iterator.cc: Removed.
3505 * python/convert-rules.py: Modified the syntax for \applyOutput.
3507 2006-05-23 Graham Percival <gpermus@gmail.com>
3509 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3512 * Documentation/user/ various: stuff that might have helped
3513 to fix the pdf creation, plus some minor doc additions.
3515 * Documentation/user/changing-defaults.itely: remove @b from
3516 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3518 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3520 * lily/beaming-pattern.cc (beamify): deal with negative start
3521 moments for beaming patterns.
3523 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3525 * lily/beaming-info.cc (beamify): new function: read beatLength
3526 and beatGrouping from context.
3528 * input/regression/beam-beat-grouping.ly (Module): new file.
3530 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3532 * lily/beam.cc (get_beam_segments): generate events for
3533 max_connect_ case too.
3534 (get_beam_segments): read Stem::max-beam-connect.
3536 * input/regression/beam-single-stem.ly: new file.
3538 * lily/stem.cc (set_beaming): use #f as signaling value for
3541 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3543 * lily/beam.cc (set_beaming): read clip-edges property.
3544 (calc_direction): don't suicide for single stem.
3546 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3547 argument, remove 1<<15 hack. Remove clip_edges()
3549 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3551 2006-05-21 Graham Percival <gpermus@gmail.com>
3553 * Documentation/user/basic-notation.itely: reorg.
3555 * Documentation/user/ various: minor fixes.
3557 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3559 * lily/stencil-expression.cc (register_stencil_head): opps, append
3560 to cdr of static SCM object.
3562 2006-05-19 Graham Percival <gpermus@gmail.com>
3564 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3565 update framework for command index. DOC WRITERS: use @funindex
3566 instead of @cindex @code{}.
3568 * Documentation/user/ various: replace @cindex @code{} => @funindex
3570 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3572 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3573 case positions is set manually.
3575 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3577 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3580 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3582 * Documentation/user/changing-defaults.itely (Contexts explained):
3583 use absolute dimension for @image.
3585 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3586 out image for illustration too.
3587 ($(outdir)/%.png): add more png <-> eps rules.
3589 2006-05-17 Graham Percival <gpermus@gmail.com>
3591 * Documentation/user/ various: remove trailing whitespace, cosmetic
3592 change to reduce changes produced by diff.
3594 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3596 * lily/main.cc (do_chroot_jail): correctness tweak.
3598 * python/lilylib.py (system): import subprocess in system () only.
3600 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3602 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3603 variable. Backportme.
3605 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3607 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3609 2006-05-17 Werner Lemberg <wl@gnu.org>
3611 * lily/lexer.ll (init_signature_has_table): Add
3612 `scm-scm-music-music'.
3614 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3615 (Generic_prefix_music_scm): Add rule for it.
3617 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3618 `quoted-transposition' property.
3620 * ly/music-functions-init.ly (transposedCueDuring): New function.
3622 * scm/define-music-properties.scm (all-music-properties): Updated.
3624 * Documenation/topdocs/NEWS.itely: Document it.
3626 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3628 * python/lilylib.py (system): move import subprocess to system()
3631 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3633 * VERSION (PATCH_LEVEL): release 2.9.5
3635 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3638 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3640 2006-05-16 Graham Percival <gpermus@gmail.com>
3642 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3644 * Documentation/user/ various: minor fixes.
3646 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3648 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3650 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3652 * Documentation/user/advanced-notation.itely (Instrument names):
3653 Modified obsolete instruction on how to move instrument names away
3654 from the staves. Hmm, at second thought the bug probably has been
3655 solved, so the full bug description should probably be removed.
3657 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3659 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3660 currentCommandColumn.
3662 * lily/hairpin.cc (print): also add padding for non-neighbor
3665 * scm/define-context-properties.scm
3666 (all-user-translation-properties): add hairpinToBarline
3668 * input/regression/hairpin-to-barline.ly: new file.
3670 * lily/context.cc (internal_send_stream_event): thinko fix.
3672 * lily/tie.cc (set_default_control_points): robustness fix.
3674 * python/musicxml.py (Part.interpret): don't complain about
3675 incomplete measures.
3677 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3678 new music if last_event_chord() returned None.
3680 * python/musicxml.py (Part.interpret): skip back over chord notes.
3682 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3684 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3685 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3686 lily/slash-repeat-engraver.cc,
3687 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3688 iterator sends PercentEvents
3690 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3691 rework tuplets: send start/stop events to engraver
3693 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3694 dispatchers event-source and events-below to Context
3696 2006-05-15 Graham Percival <gpermus@gmail.com>
3698 * Documentation/user/README.txt: update info for doc writers.
3700 * Documentation/user/programming-interface.itely: integrate
3701 Nicolas' fixes for chapter rewrite.
3703 * Documentation/user/ various: minor fixes.
3705 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3707 * lily/clef-engraver.cc: cleanup.
3709 * Documentation/user/GNUmakefile: dist context-example.eps too.
3711 * lily/key-engraver.cc (create_key): use
3712 explicitKeySignatureVisibility for cancellation too.
3714 * lily/font-config.cc (init_fontconfig): don't close file if
3717 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3719 * Documentation/topdocs/NEWS.tely: niente and rotation news
3721 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3723 * lily/include/stencil.hh
3724 * lily/stencil.cc (rotate): new function. Makes it possible
3725 to rotate a stencil around a given offset.
3727 * lily/grob.cc (get_print_stencil): add rotation support
3729 * lily/stencil-interpret.cc (interpret_stencil_expression):
3730 add rotation support
3732 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3734 * scm/define-grob-properties.scm: add 'rotation property
3736 * scm/define-markup-commands.scm: add rotate markup command
3738 * scm/output-ps.scm: add rotation support in PostScript backend
3740 * scm/output-svg.scm: add rotation support in SVG backend
3742 2006-05-13 Graham Percival <gpermus@gmail.com>
3744 * Documentation/user/music-glossary.itely: French correction.
3746 * Documentation/user/programming-interface.itely: major
3747 new docs, some reorg, some info from Nicolas.
3749 * Documentation/user/ various: small fixes.
3751 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3753 * Documentation/user/programming-interface.itely (Markup
3754 programmer interface): Remove duplicate text.
3756 2006-05-12 Graham Percival <gpermus@gmail.com>
3758 * Documentation/user/context-example.eps: new file.
3760 * Documentation/user/changing-defaults.itely: set up file to
3763 * Documentation/user/programming-interface.itely: changes
3766 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3768 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3770 2006-05-11 Graham Percival <gpermus@gmail.com>
3772 * Documentation/user/programming-interface.itely: first round of
3773 editing and merging emails from Nicolas.
3775 * Documentation/user/scheme-tutorial: minor edit.
3777 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3779 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3781 (Xml_node.message): use it.
3783 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3784 oops. Add duration argument.
3786 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3788 * lily/paper-column-engraver.cc (make_columns):
3789 * scm/define-grobs.scm: Revert my previous change and set the default
3790 in define-grobs.scm instead.
3792 2006-05-09 Graham Percival <gpermus@gmail.com>
3794 * Documentation/user/changing-defaults.itely: general editing,
3795 info about \set and \override.
3797 * Documentation/user/tweaking.itely, advanced-notation.itely:
3798 fixes from Dave Luttinen, thanks!
3800 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3802 * lily/paper-column-engraver.cc (make_columns): By default, a column
3803 needs to be breakable.
3805 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3807 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3809 (musicxml_time_to_lily): idem
3810 (musicxml_key_to_lily): idem
3811 (instrument_drumtype_dict): dict for supported drumtypes.
3812 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3813 moments and pending mm rests
3814 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3815 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3816 (musicxml_voice_to_lily_voice): add mode change.
3817 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3818 speed and less memory usage (factor 5 to 10).
3819 (convert): write -defs.ly and driver file separately so people
3820 can script their own part extraction.
3822 * python/musicxml.py (minidom_demarshal_node): new function:
3823 separate minidom handling.
3824 (lxml_demarshal_node): new function: support lxml.etree too.
3825 (Xml_node.message): new function: verbose error message, with XML
3826 path to offending node.
3827 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3828 (Part_list.generate_id_instrument_dict): new method: collect
3829 instrument names, to be able to set drum_type.
3830 (Part.interpret): handle underfull measures
3831 (Part.interpret): assign instrument names.
3833 * python/musicexp.py (Output_printer.close): new method
3834 (MusicWrapper.print_ly): new class: support other modes,
3836 (BarCheck.print_ly): new class. Support bar checks, with comments
3837 and fancy barchecks.
3838 (NoteEvent.__init__): also set drum_type for drum notes.
3839 (MultiMeasureRest.lisp_expression): dump mm rests.
3841 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3842 line-break-permission if forbidBreak is not set.
3844 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3846 * scm/define-context-properties.scm:
3847 * scm/define-grob-properties.scm:
3848 * scm/define-grobs.scm:
3849 * scm/define-music-display-methods.scm:
3850 * scm/define-music-properties.scm:
3851 * scm/define-music-types.scm:
3852 * scm/music-functions.scm:
3853 * ly/declarations-init.ly:
3854 * lily/include/constrained-breaking.hh:
3856 * lily/spaceable-grob.cc:
3857 * lily/simple-spacer.cc:
3858 * lily/paper-score.cc:
3859 * lily/paper-column.cc:
3860 * lily/paper-column-engraver.cc:
3862 * lily/gourlay-breaking.cc:
3863 * lily/constrained-breaking.cc:
3864 * python/convertrules.py:
3865 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3866 "page-break-penalty" and "line-break-permission".
3867 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3868 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3870 * lily/bar-engraver.cc:
3871 * lily/beam-engraver.cc:
3872 * lily/forbid-break-engraver.cc:
3873 * lily/ligature-engraver.cc:
3874 * lily/paper-column-engraver.cc:
3875 * lily/percent-repeat-engraver.cc:
3876 * lily/score-engraver.cc:
3877 * lily/score-engraver.hh:
3878 * lily/paper-column-engraver.hh:
3879 Inter-engraver communication regarding line breaks is done through context
3880 properties (Score.forbidBreak) instead of function calls.
3882 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3884 * VERSION (PACKAGE_NAME): release 2.9.4
3886 2006-05-08 Graham Percival <gpermus@gmail.com>
3888 * Documentation/user/working.itely: proofreading from Dave
3891 * Doucmentation/user/README.txt: updated with manual style info.
3893 * Documentation/user/ various: trim linewidth to 78 chars.
3895 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3897 * scm/define-grob-properties.scm (all-internal-grob-properties):
3898 remove chord-tremolo property.
3900 * lily/beam.cc (get_beam_segments): don't use stem position as
3901 base for broken ends.
3903 2006-05-06 Graham Percival <gpermus@gmail.com>
3905 * Documentation/user/putting.itely: proofreading from Dave
3908 * Documentation/user/ various: more reorg and clarifications.
3910 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3912 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3914 * ly/music-functions-init.ly: new function featherDurations
3916 * lily/beam.cc: read grow-direction for feathered beaming.
3918 * Documentation/topdocs/NEWS.tely (Top): typo.
3920 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3922 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3925 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3926 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3927 used by music streams.
3929 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3930 lily/stream-event.cc, lily/stream-event-scheme.cc,
3931 lily/listener.cc, lily/scheme-listener.cc,
3932 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3933 lily/include/stream-event.hh, lily/include/listener.hh,
3934 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3935 Created data structures for music streams.
3937 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3939 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3940 construction of a beam.
3943 * flower/include/std-vector.hh (default_compare): use only one comparison.
3945 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3946 (note-by-number): further attachment fixes.
3948 * scm/lily-library.scm (ordered-cons): new function.
3949 (interval-index): new function
3951 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3953 * lily/note-head.cc (get_stem_attachment): new function.
3955 * scm/define-markup-commands.scm (note-by-number): read 'style
3958 * input/regression/markup-note.ly: show note-head style option.
3960 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3963 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3965 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3967 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3969 * lily/include/constrained-breaking.hh: GCC 4 fix.
3971 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3973 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3974 Replace it with functions get_line_forces and get_line_configuration.
3975 (class Simple_spacer): Make data private.
3976 Rewrite compression algorithm to be faster and simpler.
3978 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3979 * lily/gourlay-breaking.cc (solve):
3980 * lily/constrained_breaking.cc (space_line):
3981 Change it to the new simple-spacer code.
3983 * lily/paper-score.cc (get_paper_systems):
3986 Delay breaking the systems until they are requested.
3987 (find_break_indices):
3988 Use vsize for indices.
3990 Move the "Calculating line breaks" message here.
3992 * lily/system.cc (pre_processing):
3993 Move the "Calculating line breaks" message away from here.
3994 (break_into_pieces):
3995 Allow multiple calls to this function in sequence (with touching-but-
3996 not-overlapping breakpoints).
3998 * lily/constrained-breaking.cc:
3999 Replace most of the get_XXXX functions with get_line_details.
4000 Only calculate the force for each line. Calculate configurations only
4001 for the lines we will actually use.
4002 Replace cols_ with lines_.
4004 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
4006 * mf/GNUmakefile (depth): remove FC_FIND.
4008 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
4010 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
4012 * scm/framework-ps.scm (write-preamble): new function.
4013 (write-preamble): load mac fonts via fondu, even if gs-font-load
4016 2006-05-03 Werner Lemberg <wl@gnu.org>
4018 * mf/GNUmakefile (FC_FIND): Fix typo.
4020 2006-05-03 Erlend Aasland <erlenda@gmail.com>
4022 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
4024 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4026 * stepmake/aclocal.m4: run python-config for crosscompiling
4029 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
4030 -f png for HTML, TEXINFO formats.
4032 * input/tutorial/lbook-html-test.html: new file.
4034 * lily/include/tie-formatting-problem.hh (class
4035 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
4036 [column, direction]. This fixes laissez vibrer ties.
4038 * flower/include/tuple.hh (struct Tuple2): new file.
4040 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
4041 $(FCMATCH), only if $(NCSB_DIR) not set.
4043 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
4045 * config.make.in (DOCUMENTATION): set FCMATCH.
4047 * autogen.sh (srcdir): don't set --with-ncsb-dir.
4049 2006-05-03 Graham Percival <gpermus@gmail.com>
4051 * Documentation/user/ various: final round of reorg.
4053 * Documentation/user/instrument-notation.itely: some more
4054 fixes from Eduardo, thanks!
4056 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
4058 * VERSION (PACKAGE_NAME): release 2.9.3
4060 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
4062 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
4064 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
4066 * scm/define-grob-properties.scm (all-user-grob-properties):
4067 Correct typo, thanks to Eduardo.
4069 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4071 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
4073 * buildscripts/lilypond-words.py (F): indent fix.
4075 * input/regression/tie-arpeggio-collision.ly: new file.
4077 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
4078 function: store outlines per column rank.
4080 * lily/include/tie-configuration.hh (class Tie_configuration): add
4081 column_ranks_ to specification and configuration, to distinguish
4082 between ties for different heads in arpegiated chords.
4084 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
4086 * *.py: more 4 space indents.
4088 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
4090 2006-05-01 Joe Neeman <joeneeman@gmail.com>
4092 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
4094 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
4096 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
4098 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
4100 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
4102 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
4104 * python/convertrules.py (conv): indent 4 for python files.
4106 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
4108 * Documentation/user/changing-defaults.itely (Creating contexts):
4109 Clarify \new semantics.
4111 2006-04-28 Graham Percival <gpermus@gmail.com>
4113 * Documentation/user/ various: major new sections in the
4114 Learning manual, slight reorg elsewhere.
4116 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4118 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4120 * scm/framework-ps.scm (output-framework): remove PageMedia
4122 2006-04-27 Graham Percival <gpermus@gmail.com>
4124 * Documentation/user/ tweaks.itely, working.itely: new
4125 files, being more advanced "learning manual" chapters.
4127 * Documentation/user/ tutorial, putting, lilypond: reorg.
4129 2006-04-26 Graham Percival <gpermus@gmail.com>
4131 * input/regression/lyric-combine-polyphonic.ly: fixed test
4132 (no more "can't find context `one'" error).
4134 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4136 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4138 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4140 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4142 * lily/relocate.cc (read_relocation_dir): new function.
4144 2006-04-26 Graham Percival <gpermus@gmail.com>
4146 * Documentation/user/instrument-notation.itely: a few more fixes
4147 from Eduardo, thanks!
4149 * Documentation/user/README.txt: new file; contains info on
4150 style that used to be in lilypond.tely.
4152 * Documentation/user/ various: first round of doc reorg.
4154 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4155 graphic; this probably causes problems on some pdf
4156 viewers, notably Adobe Acrobat.
4158 2006-04-24 Graham Percival <gpermus@gmail.com>
4160 * Documentation/user/instrument-notation.itely: many alterations
4161 to Vocal music, from Eduardo Viera.
4163 2006-04-23 Graham Percival <gpermus@gmail.com>
4165 * Documentation/user/instrument-notation.itely: fix \new
4166 instead of \context problem.
4168 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4170 * lily/relocate.cc (expand_environment_variables): new function.
4172 (read_relocation_file): id.
4174 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4176 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4178 * ly/engraver-init.ly: remove old comments from TabVoice
4180 2006-04-20 Graham Percival <gpermus@gmail.com>
4182 * Documentation/user/instrument-notation.itely: added Erlend's
4183 latest doc patch, thanks!
4185 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4187 * lily/include/slur.hh:
4189 * lily/phrasing-slur-engraver.cc:
4190 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4191 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4192 Slur_engraver:: and putting it in
4193 Slur::auxiliary_acknowledge_extra_object ().
4195 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4197 * lily/note-collision.cc: fix a comment
4199 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4201 * stepmake/bin/add-html-footer.py: fix footer position in
4202 generated html files: before </body> and </html> tags.
4204 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4206 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4207 Earlier successive `make' commands finally compiled ok.
4209 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4211 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4213 * lily/include/stem-tremolo.hh:
4214 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4218 * lily/include/lookup.hh: add rotated_box ()
4220 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4222 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4223 been generated. Fixes "can't get `--help'" bug after make clean.
4225 * THANKS: alphabetize contributors.
4227 2006-04-17 Graham Percival <gpermus@gmail.com>
4229 * Documentation/user/instrument-notation.itely: added Erlend's
4230 tabs and banjo doc patch. Thanks!
4232 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4234 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4236 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4238 * scm/output-lib.scm: add some more predefined string tunings.
4240 * Documentation/user/instrument-notation.itely: and doc them.
4242 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4244 * ly/engraver.ly: Remove obsolete comments.
4246 * ly/gregorian-init.ly: Define default layout block.
4248 * input/puer-fragment.ly: Updated and extended.
4250 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4252 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4253 pdf conversion behaviour.
4255 * flower/file-name.cc (dir_name)
4256 (get_working_directory): Move from relocate.cc.
4258 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4260 * lily/relocate.cc: Encapsulate sys/stat.h in
4263 2006-04-14 Graham Percival <gpermus@gmail.com>
4265 * Documentation/user/ various: small updates from Cameron
4266 and Juergen, thanks!
4268 * Documentation/user/ various: small updates of my own.
4270 * THANKS: 2.7 -> 2.8.
4272 2006-04-11 Graham Percival <gpermus@gmail.com>
4274 * scm/define-context-properties.scm: typo.
4276 * Documentation/user/ : many more small updates.
4278 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4280 * scm/define-music-types.scm: disposed "docme".
4282 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4284 * lily/hairpin.cc: make niente circles a bit smaller.
4286 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4288 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4289 get-pfa and get-*-fonts targets.
4291 2006-04-10 Graham Percival <gpermus@gmail.com>
4293 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4294 music-glossary, programming-interface: more minor fixes
4297 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4299 * scm/define-context-properties.scm: another old \property update.
4300 This time tested for compiling!
4302 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4304 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4306 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4308 * scm/define-context-properties.scm (all-user-translation-properties):
4309 * Documentation/user/global.itely (Page formatting): Compile fix.
4311 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4313 * Documentation/user/advanced-notation.itely (Polymetric
4314 notation): Update the example to use the "+" symbol and add link
4315 to input/test/compound-time.ly.
4317 2006-04-08 Graham Percival <gpermus@gmail.com>
4319 * scm/define-grob-properties.scm: clarify docs for #'direction.
4321 * scm/define-context-properties.scm: update old \property override.
4323 * Documentation/user/ advanced-notation, global, lilypond-book:
4324 more minor doc updates.
4326 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4328 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4330 * scm/backend-library.scm (search-gs): oops.
4332 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4334 * scripts/lilypond-book.py (output): use base, not filename for href.
4336 * scm/backend-library.scm: only look for gs.
4338 * scripts/lilypond-book.py (output): fix printfilename.
4340 * lily/parser.yy (music_function_musicless_prefix): fold together
4341 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4343 * lily/slur.cc (print): only set font-size if not set yet.
4345 * lily/slur-configuration.cc (add_score): improved layout of debug
4348 2006-04-05 David Feuer <David.Feuer@gmail.com>
4350 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4351 (draw_circle): Hopefully fixed regression.
4352 Improved documentation for several procedures.
4354 2006-03-04 Werner Lemberg <wl@gnu.org>
4356 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4358 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4360 * scripts/musicxml2ly.py (bindir): add dynamic
4363 2006-04-04 Graham Percival <gpermus@gmail.com>
4365 * Documentation/user/ basic-notation, advanced-notation, putting,
4366 instrument-notation, invoking, lilypond, THANKS: another ream of small
4367 fixes from the Doc Helpers.
4369 2006-04-03 David Feuer <David.Feuer@gmail.com>
4371 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4373 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4375 * Cleaned up interfaces between PostScript and Scheme, and moved
4376 computations from PostScript to Scheme:
4378 * music-drawing-routines.ps
4379 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4380 with stroke_and_fill throughout.
4381 (euclidean_length, print_letter, draw_box): Deleted unused
4382 procedures. If someone needs draw_box, implement it using
4383 draw_round_box; don't duplicate code.
4384 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4385 Refactored/cleaned up interfaces.
4388 * output-ps.scm: reordered arguments to PostScript functions to
4389 match new interfaces
4390 (glyph-string): Rewrote glyph-string.
4391 (grob-cause): Replaced string-append with format.
4392 (repeat-slash): Rewrote to do computation here.
4393 (round-filled-box): Rewrote to do computation here.
4395 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4397 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4399 * stepmake/stepmake/toplevel- targets.make: print help info about
4402 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4404 * input/regression/hairpin-circled.ly: new file
4406 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4408 * lily/hairpin.cc (print): add support for circled tip
4410 * scm/define-grob-properties.scm: add circled-tip parameter
4412 * scm/define-grobs.scm: init circled-tip to false
4414 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4416 * scm/music-functions.scm (quote-substitute): set
4419 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4421 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4424 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4426 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4428 2006-03-31 David Feuer <david.feuer@gmail.com>
4430 * scm/framework-ps.scm:
4432 * scm/output-ps.scm: glyph-string now produces smaller, more
4433 readable, and probably faster PostScript. Several findfont
4434 scalefont setfont instances changed to selectfont
4435 Hacked-up string-appends changed to formats.
4437 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4439 2006-03-30 Graham Percival <gpermus@gmail.com>
4441 * scm/lily-library.scm: make "no version" warning message more polite.
4443 * lily/music.cc: add double quotes to failed octave check.
4445 * Documentation/user/ advanced-notation, changing-defaults,
4446 instrument-notation, invoking, music-glossary: whole bunch of minor
4449 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4451 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4452 $(buildscriptdir) iso. depth.
4454 * VERSION (PACKAGE_NAME): release 2.9.1
4456 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4458 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4460 * VERSION (PATCH_LEVEL): bump version number.
4462 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4465 * lily/pango-font.cc (pango_item_string_stencil): use
4468 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4469 $(outdir)/emmentaler-%.svg): remove canary.
4471 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4472 glyphnames if we have a ttf font.
4474 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4476 * Documentation/user/advanced-notation.itely (Font selection):
4477 Corrected reference to the font-family-override.ly example.
4479 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4481 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4482 stem-tremolo object in the stem (or else the stem might not be
4485 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4487 * lily/ttf.cc (print_trailer): only print existing glyphs.
4489 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4491 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4492 position the tremolo based on the position of the notehead.
4494 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4495 notes and update the texidoc line with the new positioning rules.
4497 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4499 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4501 * scripts/lilypond-book.py (Module): set default for linewidth if
4504 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4506 * VERSION (PACKAGE_NAME): release 2.9.0.
4508 * input/regression/stem-tremolo-position.ly: new file.
4510 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4512 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4514 * lily/stem-tremolo.cc (print): position
4515 the tremolo depending only on the end of the stem
4516 and not on the notehead
4517 (raw_stencil): center, on the middle staff line, the
4518 flag that is closest to the end of the stem (previously
4520 (calc_width): add this callback to shorten a tremolo when
4521 it is beamed or it is stemup with a flag
4522 (style): add this callback to make a tremolo rectangular when
4523 it is beamed or it is stemup with a flag
4524 (rotated_box): this is like Lookup::beam but makes a rotated
4525 rectangle instead of a parallelogram
4527 * lily/stem.cc (calc_stem_info): make sure the stem
4528 is long enough to fit the tremolo
4529 (calc-length): reduce the length of tremolo stems since the
4530 tremolo code is now capable of better positioning
4532 * scm/define-grobs.scm: make calc_width the default beam-width
4533 callback for stem-tremolo and add the style callback
4535 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4537 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4540 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4542 * lily/ttf.cc (make_index_to_charcode_map): restore old
4545 2006-03-28 Werner Lemberg <wl@gnu.org>
4547 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4549 2006-03-28 Graham Percival <gpermus@gmail.com>
4551 * THANKS: update for 2.9, add section for Documentation helpers.
4553 * Documentation/topdocs/NEWS.tely: compile fix.
4555 * Documentation/user/ basic-notation, global, advanced-notation,
4556 examples.itely: minor fixes from mailist.
4558 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4560 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4563 * lily/ttf.cc (print_trailer): use it.
4565 * lily/pango-font.cc (get_unicode_name): new function.
4567 * lily/ttf.cc (make_index_to_charcode_map): move function from
4569 (print_trailer): substitute uniXXXX name if applicable.
4571 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4572 (pango_item_string_stencil): use it to generate uniXXXX names.
4574 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4575 note heads, for uniform widths in shape note output.
4576 (overdone_heads): hmm. remove them again.
4578 * scripts/lilypond-book.py (output): add links to filenames.
4580 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4582 * lily/note-collision.cc (get_clash_groups): only consider when
4583 Note_column::dir <> CENTER.
4585 * scripts/lilypond-book.py (get_option_parser): init output_name
4588 2006-03-24 Graham Percival <gpermus@gmail.com>
4590 * Documentation/topdocs/NEWS.tely: add @end itemize
4592 * Documentation/user/ global, advanced-notation: minor
4595 2006-03-23 Graham Percival <gpermus@gmail.com>
4597 * Documentation/user/ lilypond.tely, music-glossary,
4598 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4600 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4602 * mf/GNUmakefile: don't install .enc files.
4604 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4606 * VERSION (PATCH_LEVEL): bump to 2.9.0
4608 2006-03-22 Graham Percival <gpermus@gmail.com>
4610 * Documentation/user/advanced-notation.itely: minor fixes
4613 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4615 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4617 * branch lilypond_2_8
4619 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4621 * scripts/lilypond-book.py (samefile): new function, for windoze
4624 2006-03-21 Graham Percival <gpermus@gmail.com>
4626 * ly/engraver-init.ly: add info about StaffGroup.
4628 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4630 * input/regression/stem-direction-context.ly: idem.
4632 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4636 * input/regression/page-layout-twopass.ly: comment out \markup so
4639 * lily/instrument-name-engraver.cc (finalize): add to instrument
4640 name global System. This also fixes chopped instrument names, but
4641 doesn't crash when there are slurs/beams.
4643 * lily/slur-configuration.cc (add_score): disallow negative slur
4646 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4648 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4650 * lily/instrument-name-engraver.cc (process_music): kludge: add
4651 InstrumentName spanner to axis group of left bound. Fixes chopped
4652 off instrument names in EPS images.
4654 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4656 * scripts/abc2ly.py (option_parser): update to 2.7.40
4658 2006-03-20 Graham Percival <gpermus@gmail.com>
4660 * THANKS: move small doc contributors to SUGGESTIONS.
4662 * Documentation/user/ basic-notation, advanced-notation,
4663 global: small changes from mailist.
4665 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4667 * Documentation/user/advanced-notation.itely (Text marks): update
4668 for new rehearsalMarkAlignSymbol convention.
4670 * VERSION (PATCH_LEVEL): bump version.
4672 * input/test/instrument-name-align.ly: new file.
4674 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4676 * input/test/instrument-name-align.ly: new file. Document how to
4677 align instrument names.
4679 * lily/mark-engraver.cc: remove properties.
4681 * scm/define-context-properties.scm
4682 (all-user-translation-properties): remove align symbol properties
4683 for barnumber/reh. mark.
4685 * lily/break-align-interface.cc (self_align_callback): new
4686 interface, new function. Look at complete alignment. This handles
4687 tunable break alignments in case break-align-symbols are missing.
4689 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4691 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4693 * python/convertrules.py (conv): mark/bar number alignment rule.
4695 * lily/break-align-interface.cc (calc_positioning_done): also
4696 store offset from last visible break-alignment to its
4697 neighbor. This makes alignment on non-visible objects more reliable.
4699 * po/lilypond.pot (Module): ran po-replace.
4701 * input/regression/tie-single-manual.ly (Module): new file.
4703 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4704 look at has_manual_position_.
4705 (from_ties): set has_manual_position_ if tie has staff-position set.
4707 * lily/tuplet-bracket.cc (calc_positions): idem.
4709 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4712 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4714 * scm/define-markup-commands.scm (smallCaps): new markup command
4715 for turning a text to small caps using smaller font size and upper
4718 2006-03-17 Graham Percival <gpermus@gmail.com>
4720 * Documentation/user/ examples, instrument-notation,
4721 advnaced-notation: minor fixes from mailist.
4723 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4725 * Documentation/user/tutorial.itely (First steps): change example
4728 2006-03-17 Graham Percival <gpermus@gmail.com>
4730 * Documentation/user/ examples, advanced: minor changes from mailist.
4732 * THANKS: add Geoff Horton, for documentation stuff.
4734 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4736 * python/lilylib.py (system): revert have_select kludge.
4738 * Documentation/user/tutorial.itely (Commenting input files):
4739 update version numbers in doc.
4741 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4742 bound-padding to multi-measure-interface
4744 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4746 * input/test/engraver-example.ily: update version number.
4748 * VERSION (PACKAGE_NAME): release 2.7.39
4750 * lily/note-spacing.cc (get_spacing): heighten threshold where
4751 accidentals/arpeggios influence previous spacing fully.
4753 * lily/rest.cc (y_offset_callback): only use direction if
4754 staff-position wasn't set before.
4756 * lily/bar-number-engraver.cc: add support for
4757 barNumberAlignSymbol.
4758 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4760 * lily/pointer-group-interface.cc (set_ordered): new function.
4761 (add_unordered_grob): new function.
4763 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4764 to ordered, unless the opposite has been proved. This fixes
4765 random reordering of large object groups across linebreaks,
4768 * lily/main.cc (do_chroot_jail): printf format fix.
4770 * lily/tie-formatting-problem.cc (generate_configuration):
4771 multiply y-shift for dot with direction.
4773 * scm/define-markup-commands.scm (note-by-number): put (magstep
4774 size) in y-attach too.
4776 * Documentation/topdocs/NEWS.tely (Top): show override.
4778 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4779 direction for stems.
4781 2006-03-15 Graham Percival <gpermus@gmail.com>
4783 * Documentation/user/ changing-defaults, global: minor
4786 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4788 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4790 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4791 breakable items after uniformly stretched notes.
4793 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4794 outline with outer edge of note heads. This prevents infinity
4795 problems with tied whole notes.
4797 * scripts/lilypond-book.py (do_file): use os.popen
4799 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4801 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4803 * Documentation/user/invoking.itely: Add ragged-right to bug report
4806 2006-03-14 Graham Percival <gpermus@gmail.com>
4808 * Documentation/user/global.itely: small fix from mailist.
4810 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4812 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4813 file descriptor returned by tempfile.mkstemp() when writing
4814 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4817 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4819 * po/fi.po: newline bugfix.
4821 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4823 * scm/paper.scm (paper-alist): Rounding fixes.
4825 2006-03-13 Graham Percival <gpermus@gmail.com>
4827 * Documentation/user/ changing-defaults, instrument-notation,
4828 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4830 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4834 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4836 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4839 * python/lilylib.py (print_environment): move ps_page_count to
4842 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4844 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4846 * scm/framework-ps.scm (embed-document): new function. Use to
4849 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4851 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4853 * Documentation/user/instrument-notation.itely (Setting simple
4854 songs): Added \book{...} around the full example, so the separate
4855 markups are included in the printed example.
4857 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4859 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4862 * python/lilylib.py (system): rewrite system() using
4863 subprocess. Remove >& redirection trickery.
4865 2006-03-11 Graham Percival <gpermus@gmail.com>
4867 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4868 notation-appendices.itely: minor fixes from mailist.
4870 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4872 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4873 unsplit man also needs images.
4875 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4877 * VERSION (PACKAGE_NAME): 2.7.38 released.
4879 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4881 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4884 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4886 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4887 respects the Score.skipTypesetting property.
4889 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4891 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4892 Prolog. No %%EOF after CFF file.
4894 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4896 * lily/constrained-breaking.cc (get_max_systems): used to return a
4898 (combine_demerits): use pointers to reduce copying data
4899 (calc_subproblem): idem
4900 (get_page_penalty): add page turn penalties
4902 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4904 * Documentation/user/invoking.itely (Invoking lilypond): better
4905 explanation of -e usage.
4907 * lily/main.cc (main_with_guile): don't append to
4908 init_scheme_code_string
4910 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4912 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4914 * scripts/convert-ly.py (do_options): don't print help for
4917 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4918 @code and @example. Update from texinfo.tex from CVS.
4920 2006-03-08 Graham Percival <gpermus@gmail.com>
4922 * Documentation/user/scheme-tutorial.itely: clarifies distances
4923 measured in staff-spaces.
4925 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4927 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4928 consider[k] is true.
4930 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4932 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4933 consider columns that have originals. Unifies spacing for mm
4934 rests around line breaks.
4936 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4937 (set_text_rods): idem.
4938 (calculate_spacing_rods): new function: share code between
4939 set_text_rods and set_spacing_rods.
4940 (set_text_rods): take extents of bounds into account.
4942 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4944 * Documentation/user/basic-notation.itely (Writing music in
4945 parallel): don't use relative.
4947 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4949 * ly/music-functions-init.ly (Module): add shiftDurations
4951 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4953 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4955 * ly/engraver-init.ly: init vocalName to nil.
4957 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4959 * scm/music-functions.scm (music->make-music): bugfix,
4960 KeyChangeEvents are now handled correctly.
4962 * scripts/lilypond-book.py: Add --debug option.
4964 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4966 * python/lilylib.py: add tempfile.
4968 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4970 * VERSION (PACKAGE_NAME): release 2.7.37
4972 * python/lilylib.py (ps_page_count): remove make_ps_images().
4973 (ps_page_count): remove mkdir_p
4974 (system): remove cleanup_temp.
4975 (exit): remove lilypond_version_(check)
4976 (error_log): remove pseudo_filter_p
4981 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4984 * lily/accidental-engraver.cc (make_standard_accidental): only add
4985 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4987 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4988 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4989 Make incompatibilities.
4991 * scm/output-ps.scm (grob-cause): replace backslashes by /
4992 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4994 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4996 * cygwin/GNUmakefile: Install fixes.
4998 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
5000 * lily/note-head.cc (head::get_balltype): Compile fix.
5002 * flower/file-name.cc (dos_to_posix): Flower string fix.
5004 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5006 * python/lilylib.py: pychecker cleanups.
5008 * scripts/lilypond-book.py
5009 (Lilypond_snippet.output_print_filename): pychecker cleanups
5011 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
5013 * python/lilylib.py (underscore): remove identify() , warranty()
5015 * ps/music-drawing-routines.ps: change Border routine for GSView
5018 * lily/stem.cc (height): use quantize-positions. This triggers
5019 set_stem_lengths, so scripts on beamed stems are handled correctly.
5021 * lily/side-position-interface.cc (aligned_side): check if edges
5022 of script are inside staff. Fixes accent of edge of the staff.
5024 * input/regression/staccato-pos.ly: more examples.
5026 * stepmake/aclocal.m4 (depth): fix bashism.
5028 * lily/lyric-combine-music-iterator.cc: move from
5029 new-lyric-combine-iterator.cc
5030 (process): add pending_grace_lyric_ member to delay lyrics on
5033 * lily/system-start-text.cc (print): suicide if we don't have any
5034 elements. Fixes hara kiri'd instrument names.
5036 * scripts/mup2ly.py (Module): remove.
5038 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5040 * Documentation/user/global.itely (A single music expression):
5041 close @lilypond properly
5043 * lily/volta-bracket.cc (modify_edge_height): change from
5044 after_line_breaking_callback. Suicide last bracket if appropriate.
5046 * python/lilylib.py: strip getopt support
5048 * scripts/etf2ly.py (do_options): use optparse
5050 * scripts/midi2ly.py: optparse, strip lilylib copy.
5052 * scripts/abc2ly.py (voices): use optparse.
5054 * stepmake/stepmake/generic-vars.make: new function absdir.
5056 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
5058 * scripts/lilypond-book.py (find_file): use global_options for
5061 * scm/ps-to-png.scm (ps-page-count): prevent null characters
5064 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5066 * python/lilylib.py (get_global_option): ughness for extracting
5067 global options from lilylib.
5068 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
5070 * scripts/lilypond-book.py (get_option_parser): use optparse for
5071 option handling. Put options in global_options variable.
5073 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
5075 * Documentation/index.html.in: clarify.
5077 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
5079 * scm/layout-page-layout.scm (write-page-breaks): add a
5080 music-system-heights property to the page layout output.
5082 * scm/page.scm (make-page-stencil): take footer into account when
5083 computing the 'space-left page property
5084 (annotate-space-left): take footer into account when annonating
5087 2006-02-28 Graham Percival <gpermus@gmail.com>
5089 * Documentation/user/ advanced-notation, global: more (final)
5090 docs for music expressions, removed special fermatas.
5092 2006-02-27 Graham Percival <gpermus@gmail.com>
5094 * Documentation/user/ basic-notation, global: minor changes
5097 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
5099 * scm/framework-ps.scm:
5100 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
5101 layer for inf? and nan? from framework-ps to lily-library.
5103 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5105 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
5106 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
5108 * buildscripts/substitute-encoding.py (Module): remove file.
5110 * mf/GNUmakefile: more PFA strippage.
5112 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5114 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5117 * scm/framework-ps.scm: remove font name munging.
5119 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5121 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5123 * scm/markup.scm (define-markup-command): change
5124 def-markup-command to define-markup-command
5126 * scm/music-functions.scm (define-music-function): change
5127 def-music-function to define-music-function.
5129 * python/convertrules.py (conv): rules for def-music-function
5130 and def-markup-commands
5132 * Documentation/user/programming-interface.itely,
5133 input/no-notation/display-lily-tests.ly,
5134 input/regression/lily-in-scheme.ly,
5135 input/regression/markup-user.ly,
5136 input/regression/music-function.ly, input/regression/tie-chord.ly,
5137 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5138 ly/gregorian-init.ly: use new macro names (define-music-function,
5139 define-markup-command).
5141 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5143 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5144 (output): add comments to lp-book latex output.
5146 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5149 2006-02-23 Graham Percival <gpermus@gmail.com>
5151 * Documentation/user/ tutorial, global: minor changes.
5153 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5155 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5156 blocks (for make 3.80)
5158 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5159 \notemode so that user should not have to explicitely type it.
5161 * scm/define-music-display-methods.scm: various
5162 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5165 * input/no-notation/display-lily-tests.ly: new tests for
5166 \applyOutput and \applyContext
5168 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5170 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5171 changed it slightly so that the number of systems returned by
5172 solve () will be the same as the last value passed to resize
5173 (). I've also added more documentation, removed casts, fixed style
5174 problems and put in some recovery if constraints aren't satisfied."
5176 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5178 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5179 for emacs < 22 compatibility.
5180 (count-rexp): Use it.
5181 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5182 substring juggling (Milan Zamazal).
5184 2006-02-23 Graham Percival <gpermus@gmail.com>
5186 * Documentation/user/ basic-notation, advanced-notation,
5187 global.itely, invoking.itely, tutorial,itely:
5188 minor fixes from mailist.
5190 * scm/define-markup-commands.scm: improve docs of \filled-box.
5192 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5194 * Documentation/index.html.in: changes concern the previous release.
5196 * input/regression/+.ly: cultivate typographical terminology.
5198 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5200 * scm/define-grob-interfaces.scm (parentheses-interface): add
5201 padding to parentheses-interface.
5203 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5204 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5206 * VERSION (PATCH_LEVEL): release 2.7.36
5208 * lily/slur.cc: add avoid-slur (ugh.)
5210 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5211 intersection gets smaller. This fixes slurs over extreme points.
5213 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5214 stems with neutral-direction set.
5216 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5218 * lily/open-type-font.cc (load_table): format error.
5220 * lily/change-iterator.cc (process): format fix.
5222 * flower/include/international.hh (_f): idem.
5224 * flower/include/std-string.hh: add format printf attribute.
5226 * scm/define-grobs.scm (all-grob-descriptions): height of all
5227 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5229 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5232 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5234 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5236 * input/regression/: upgraded syntax for some files.
5238 * THANKS: Add bughunters.
5240 2006-02-22 Graham Percival <gpermus@gmail.com>
5242 * Documentation/user/ invoking.itely, advanced-notation.itely,
5243 global.itely: long-awaited "let's make chapter 10 not suck"
5244 update. Rearrange chapter 10; now called "global issues",
5245 addresses file structure, etc. Some info from other files
5246 moved into global.itely.
5248 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5250 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5251 catch trill-span-event notes.
5253 * Documentation/user/examples.itely (Ancient notation templates): typo.
5256 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5258 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5260 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5262 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5264 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5265 froum Laissez_vibrer_engraver.
5267 * ly/declarations-init.ly (repeatTie): add \repeatTie
5269 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5271 * scm/define-grob-properties.scm (all-user-grob-properties): add
5272 head-direction property.
5274 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5275 from_lv_ties. Take head direction argument.
5277 * lily/semi-tie-column.cc: rename from
5278 laissez-vibrer-tie-column.cc. Rename class too.
5280 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5283 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5285 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5287 (find_breaks): idem.
5289 2006-02-21 Graham Percival <gpermus@gmail.com>
5291 * Documentation/user/advanced-notation.itely: fixed make-moment]
5294 * Documentation/user/basic-notation.itely: more clarification to
5297 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5299 * lily/include/constrained-breaking.hh (class
5300 Constrained_breaking): new file.
5302 * lily/constrained-breaking.cc (resize): new file.
5304 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5306 * Documentation/user/advanced-notation.itely (Clusters): insert
5309 * lily/tie-column.cc (calc_positioning_done): support for
5312 * lily/tie-formatting-problem.cc
5313 (generate_extremal_tie_variations): factor out.
5314 (score_ties_configuration): annotate all tie
5315 (print_ties_configuration): new routine.
5316 (generate_configuration): nudge extremal ties outside of the head
5318 (score_ties_configuration): oops. convert to staff-space before
5319 determining position symmetry.
5321 2006-02-20 Graham Percival <gpermus@gmail.com>
5323 * Documentation/user/*-notation.itely: misc minor editing,
5324 shifting doc sections around.
5326 * Documentation/user/*-notation-itely, global.itely,
5327 changing-defaults.itely: added new stuff from NEWS.
5329 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5333 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5335 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5336 lilypond --verbose for lp-book.
5338 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5339 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5341 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5342 $(buildscript-dir) iso. absolute depth.
5344 * buildscripts/genicon.py (dir): thinko.
5346 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5348 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5350 * scm/output-lib.scm: swap darkcyan/darkyellow
5352 * THANKS: Add bughunters.
5354 2006-02-19 Graham Percival <gpermus@gmail.com>
5356 * Documentation/user/programming-interfaces.itely: fixed example.
5358 * Documentation/user/instrument-notation.itely: fix @{ @}.
5360 * scm/script.scm: add avoid-slur for \open.
5362 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5364 * lily/tie-formatting-problem.cc (score_configuration): use
5365 sliding score for min-length.
5367 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5368 spaghetti for icons.
5370 * buildscripts/genicon.py (program_name): new file.
5372 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5374 (generate_configuration): for small ties, also look for collisions
5375 at Y + DIR*h + DELTA_Y.
5376 (get_variations): consider variation for dot positions too.
5378 * lily/side-position-interface.cc (aligned_side): take abs for
5379 quantized rounded position. Fixes tenuto below staff.
5381 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5382 markers when necessary.
5384 * lily/program-option.cc (internal_set_option): add
5385 strict_infinity_checking option.
5387 * scm/output-lib.scm (cyan): swap yellow and cyan.
5389 2006-02-19 Graham Percival <gpermus@gmail.com>
5391 * darwin.patch: trivial linenumber update.
5393 * Documentation/user/ {various}: `\context foo = named' changed
5394 to `\new foo = "name"' in docs.
5396 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5398 * scm/stencil.scm (annotate-y-interval): use it.
5400 * scm/lily-library.scm (interval-sane?): new function.
5402 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5405 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5408 * flower/include/std-vector.hh (iterof): add iterof macro.
5410 * lily/enclosing-bracket.cc (width): new function.
5412 * lily/align-interface.cc (align_elements_to_extents): reinstate
5415 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5417 * Documentation/index.html.in: fix spelling: thankyous.
5419 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5421 * lily/lyric-hyphen.cc: typo.
5423 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5425 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5426 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5429 * VERSION: release 2.7.35
5431 * lily/beam.cc (get_default_dir): oops. Take abs () for
5433 (get_default_dir): use extreme position criterion only in absence
5434 of forced stem directions.
5436 * VERSION (PATCH_LEVEL): bump VERSION.
5438 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5439 dependencies. Necessary for -jX builds.
5441 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5443 * lily/relocate.cc (setup_paths): Yet another const fix.
5445 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5447 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5449 * lily/relocate.cc (setup_paths): oops.
5451 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5453 * Documentation/index.html.in: order links: html before PDF.
5455 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5457 * lily/tie-column-format.cc (Module): remove.
5459 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5461 * lily/text-spanner.cc (print): idem.
5463 * lily/dynamic-text-spanner.cc (print): only print line if longer
5466 * lily/auto-change-iterator.cc (change_to): formatting.
5468 * lily/beam.cc (get_default_dir): take extreme note head as input
5471 * lily/tie.cc (get_default_dir): only look directions for visible
5474 * lily/side-position-interface.cc (aligned_side): oops. Don't
5475 mutiply with direction. This fixes quantized (staccato, tenuto)
5476 scripts below notes.
5478 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5479 direction. Fixes c-lyrics-center-align.ly
5481 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5483 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5486 * lily/std-string.cc:
5487 * lily/include/std-vector.hh (split_string): Move and rename from
5488 lily/include/misc.hh, lily/misc.cc. Update callers.
5490 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5492 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5494 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5496 * flower/test-file.cc: New file.
5498 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5501 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5503 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5505 * flower/include/file-storage.hh: remove file.
5507 * lily/include/midi-item.hh (class Midi_track): idem.
5509 * lily/include/source.hh (class Sources): idem.
5511 * lily/include/performance.hh (class Performance): use vector
5514 * flower/include/cons.hh (class Cons): remove file.
5516 * flower/include/flower-proto.hh: remove template cruft.
5518 * lily/include/font-metric.hh: use size_t not vsize for indices.
5520 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5523 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5525 * lily/include/paper-book.hh (class Paper_book):
5526 make get_system_specs() public.
5528 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5529 the force=10000 case if we don't have a current-best.
5531 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5534 * flower/include/flower-proto.hh: remove outdated templates.
5536 * scm/page.scm: use annotate-spacing
5538 2006-02-15 Graham Percival <gpermus@gmail.com>
5540 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5542 * THANKS: moved Erlend Aasland to contributors.
5544 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5546 * config.hh.in: remove HAVE_PANGO_16
5548 * lily/tuplet-bracket.cc (calc_positions): multiply with
5549 staff-space for beam case. This fixes tuplets+beams on scaled
5552 * config.hh.in: remove all Kpathsea related defines.
5554 * lily/dot-column.cc (side_position): reach stem via dots->
5555 head->stem. Inspect all stems for dot collisions.
5557 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5560 * lily/bar-number-engraver.cc (process_music): document function
5563 * lily/score.cc (default_rendering): add pscore, not systems
5566 * lily/paper-book.cc (get_system_specs): separate generation of
5569 * flower/include/std-vector.hh: don't include config.hh
5571 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5573 * flower/include/std-vector.hh: Better wrapper compatibility with
5576 * flower/include/flower-proto.hh: Remove cheap forward declaration
5579 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5581 2006-02-14 Graham Percival <gpermus@gmail.com>
5583 * Documentation/user/invoking.itely: add warning about command line.
5585 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5587 * lily/include/lily-proto.hh: add Prob, rm Page.
5589 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5591 * VERSION: release 2.7.34
5593 * lily/relocate.cc (framework_relocation): show canary if
5594 GHOSTSCRIPT_VERSION undefined.
5596 * GNUmakefile.in: remove $(VERSION) symlink.
5598 * lily/relocate.cc (setup_paths): add +
5600 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5602 * Documentation/index.html.in: specify sizes for all big HTML pages.
5604 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5606 * config.hh.in: remove @FRAMEWORKDIR@
5608 * lily/system-start-text.cc (get_stencil): new file: separate out
5609 system-start-delimiter text support.
5611 * input/**ly: replace \context with \new where appropriate.
5615 * lily/slur-scoring.cc (get_base_attachments): use
5616 robust_relative_extent. This fixes problems with empty paper-columns.
5618 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5620 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5622 * scm/define-music-properties.scm (all-music-properties):
5623 create-new property.
5625 * lily/context-specced-music-iterator.cc (construct_children):
5626 inspect 'create-new property iso. magical $uniqueContextId context
5629 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5631 * lily/context-key-manager.cc (Module): new file. Encapsulate
5632 object key generation.
5634 * lily/include/context-key-manager.hh (Module): new file.
5636 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5641 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5643 (reloc_b): excise --enable-framework-dir
5645 * lily/relocate.cc (framework_relocation): use getenv
5646 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5648 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5650 * flower/include/std-string.hh:
5651 * flower/include/std-vector.hh: Finish std:: conversion; move
5652 flower extensions from std:: namespace. Update users.
5654 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5655 their expansion to vector<*>. Update users.
5657 2006-02-10 Graham Percival <gpermus@gmail.com>
5659 * Documentation/user/invoking.itely: add example to File structure.
5661 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5662 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5664 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5666 * ly/paper-defaults.ly: typo.
5668 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5669 set_parent() for parentheses. This will make it show up in bbox
5672 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5673 ly:grob-common* functions.
5675 * lily/grob-scheme.cc (LY_DEFINE):
5676 ly:grob-common-refpoint-of-array: new function
5677 ly:grob-common-refpoint: new function
5678 ly:grob-relative-coordinate: new function
5680 * lily/instrument-name-engraver.cc (process_music): use
5681 Text_interface::is_markup(). This fixes \markup on instrument names.
5683 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5686 * lily/slur.cc (print): idem.
5688 * lily/tie.cc: add line-thickness for ties.
5690 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5692 * scm/output-svg.scm: Document diversion from GNU coding standards
5693 as a workaround for a bug in Microsoft Internet Explorer.
5695 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5697 * lily/instrument-name-engraver.cc (process_music): use
5698 is_markup() iso. is_string()
5700 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5702 * lily/percent-repeat-engraver.cc (process_music): only look at
5703 main_part_ for % repeats.
5705 * lily/stem-tremolo.cc (get_beam_translation): new function.
5706 (calc_slope): new function.
5707 (height): don't use real slope.
5709 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5711 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5712 new connect-to-neighbor, control-points and staff-padding
5713 properties to make ligature brackets showing up again.
5715 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5717 * VERSION: release 2.7.33
5719 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5722 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5723 remove applyOutput example.
5724 (Objects connected to the input): document \tweak, \parenthesize
5726 * lily/relocate.cc (prefix_relocation): allow "current"
5727 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5728 changing VERSION in a lily tree less painful.
5730 * input/regression/parenthesize.ly: new file.
5732 * scm/output-lib.scm (parenthesize-element): new function.
5734 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5736 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5738 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5739 cause: accidentals are caused by note heads, not note events.
5741 2006-02-08 Graham Percival <gpermus@gmail.com>
5743 * darwin.patch: small patch from Erlend, thanks!
5745 * Documentation/user/basic-notation.itely: add stem-neutral example.
5747 * Documentation/user/putting.itely: clarifications.
5749 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5751 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5752 note, add more guidelines to what should go into NEWS.
5754 * input/sakura-sakura.ly: document how to override font.
5756 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5758 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5760 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5762 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5764 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5765 convertrules. Add explicit grouping, needed for python2.2.
5767 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5769 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5771 2006-02-07 Graham Percival <gpermus@gmail.com>
5773 * Documentation/user/global.itely: fix line-width in (text) docs.
5775 * Documentation/user/lilypond-book.itely: same.
5777 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5779 * VERSION (PACKAGE_NAME): release 2.7.32
5781 * Documentation/topdocs/NEWS.tely (Top): document new variable
5784 * flower/include/array.icc (Message): remove file.
5786 * flower/include/std-vector.hh: make sure vsize and VPOS are
5787 defined for binary_search_bounds().
5789 * flower/std-string.cc (std): add to_string(long unsigned).
5791 * configure.in (gui_b): excise std_string option.
5792 (gui_b): excise std_vector option.
5794 * flower/string.cc (Module): excise flower array & string
5796 * flower/include/std-string.hh: excise flower string.
5798 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5800 * python/convertrules.py (lilypond_version_re_str): require
5801 only numbers and dots in \version string.
5803 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5805 * lily/system-start-delimiter.cc (print): allow style = text too.
5807 * lily/system-start-delimiter-engraver.cc
5808 (acknowledge_system_start_text): new function, also add add to
5809 support of system-start-text (instrument names). This fixes
5810 instrument names on piano staves.
5812 * lily/instrument-name-engraver.cc: rewrite. Use
5813 system-start-delimiter approach. This save memory and cpu.
5815 * scm/define-grobs.scm (all-grob-descriptions): remove
5816 instrument-name from break-alignment.
5818 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5820 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5822 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5825 * configure.in (std_vector): On by default.
5827 * lily/include/font-metric.hh:
5828 * lily/include/tfm-reader.hh:
5829 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5832 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5834 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5836 * VERSION (PACKAGE_NAME): 2.7.31
5838 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5839 EPS edge at 0, but take minimum with left-overshoot. This fixes
5840 cut off system start delims.
5842 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5843 hack: add to axis group if not added yet. This fixes hara kiri'd
5846 * lily/hara-kiri-group-spanner.cc
5847 (force_hara_kiri_in_y_parent_callback): fix signatures.
5849 * lily/hairpin.cc (print): check next hairpin to see whether or
5850 not to be continuing.
5852 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5854 * Remove trailing whitespace from makefiles.
5856 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5859 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5861 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5863 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5865 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5867 * configure.in: Use it.
5869 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5871 * scm/music-functions.scm (pitch-of-note): new function.
5873 * ly/music-functions-init.ly: add \octave and \addquote
5875 * lily/parser.yy (music_function_chord_body): softcode \octave.
5876 (lilypond_header): softcode \addquote
5878 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5880 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5881 array.hh, parray.hh at all. Getting ready to flip the
5884 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5886 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5889 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5891 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5893 * flower/include/array.hh: typo.
5895 2006-02-02 Graham Percival <gpermus@gmail.com>
5897 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5899 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5901 * flower/include/pqueue.hh: Derive from std::vector.
5903 * flower/include/parray.hh: Conform to std::vector interface.
5906 2006-02-02 Graham Percival <gpermus@gmail.com>
5908 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5910 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5912 * flower/file-path.cc (is_file): remove if 0 section.
5914 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5915 selecting afii61352.
5917 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5919 * flower/include/std-vector.hh (boundary): Oops, reverse.
5921 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5922 remove superfluous `d'.
5924 * flower/include/std-vector.hh (boundary, top): Detach from class.
5925 Remove empty vector shell.
5927 * flower/include/array.hh (reverse, swap): Detach from class.
5930 * flower/include/std-vector.hh
5931 * flower/include/array.hh (concat): Globally change to insert ().
5934 * flower/include/std-vector.hh
5935 * flower/include/parray.hh
5936 * flower/include/array.hh (elem, elem_ref): Globally replace by
5939 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5941 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5943 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5944 anticipate on identifier substitutions.
5946 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5948 * flower/include/std-vector.hh (insert): Remove, replace by
5949 std::vector interface. Update callers.
5951 * flower/include/array.icc (insert): Change signature to
5952 match std::vector interface.
5954 * flower/include/array.icc (vector_sort): Bugfix.
5956 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5958 * lily/parser.yy (output_def_head_with_mode_switch): new
5959 production. Result: dashes and underscores may be used in the
5962 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5964 * python/convertrules.py (conv): oops. One slash too much.
5966 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5968 * flower/include/std-vector.hh (sort): Remove, replace by
5969 ::vector_sort. Update callers.
5971 * flower/include/std-vector.hh (slice): Remove. Update callers.
5974 * flower/test-std.cc (vector_sort): New test.
5976 2006-02-01 Graham Percival <gpermus@gmail.com>
5978 * Documentation/user/putting.itely: fixes from Erik.
5980 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5982 * flower/test-std.cc: Add simple unit test for vector migration.
5984 * stepmake/stepmake/test*: Unit test support.
5986 * flower/include/std-vector.hh (del): Remove. Use erase (),
5989 * flower/include/array.hh (begin, end): Add.
5992 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5994 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5995 std::string not String.
5997 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
6000 * lily/prob.cc (Prob): copy type_ too.
6002 * lily/lily-guile.cc (mangle_cxx_identifier): new
6003 function. Class_bla::foo_bar_[px] ->
6004 ly:class-bla::foo-bar[?!]. Changes throughout
6006 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6008 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
6010 * lily/beam.cc (calc_direction): take dir from visible stem in
6013 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
6015 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
6016 Fix -1, >=0 boundary checks for unsigned vsize.
6018 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
6019 loop for unsigned vsize.
6021 * configure.in (--enable-std-vector): New option.
6022 (--enable-std-string): On by default.
6024 * flower/include/std-vector.hh: New file. Enable switch to
6025 std::vector, update client code.
6027 2006-01-30 Graham Percival <gpermus@gmail.com>
6029 * scm/document-translation.scm: clarify "this context is also
6030 known as". Thanks, Werner!
6032 * Documentation/user/putting.itely: small fixes from Don Blaheta.
6034 * Documentation/user/invoking.itely: small fix from Don.
6036 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6038 * scm/lily.scm (define-scheme-options): rename option
6039 preview-include-book-title to book-title-preview
6040 (define-scheme-options): move force-eps-font-include (from paper
6041 block) to eps-font-include -d option.
6043 * VERSION (PATCH_LEVEL): release 2.7.30
6045 * input/bach-schenker.ly (staffPiano): new file.
6047 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
6049 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
6052 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
6054 * ps/lilyponddefs.ps: remove start-system, stop-system,
6055 start-page fluff. This saves putting { } code on the stack, fixing
6056 stack overflows when including EPS files.
6058 2006-01-29 Graham Percival <gpermus@gmail.com>
6060 * Documentation/user/putting.itely: minor fixes (comments on -devel).
6062 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
6064 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
6066 2006-01-28 Graham Percival <gpermus@gmail.com>
6068 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
6070 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
6072 * input/mutopia/claop.py: Update.
6074 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6076 * input/regression/completion-heads.ly (texidoc): fix.
6078 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
6080 * lily/tie-formatting-problem.cc
6081 (set_ties_config_standard_directions): use abs iso fabs for ints.
6083 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
6085 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
6086 little less than noteheight, to prevent overlaps in chords.
6088 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
6089 head, and fudge stem-attachment.
6091 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
6093 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
6095 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
6097 * lily/main.cc (main): Debugging aid: catch exceptions.
6099 * flower/std-string.cc (to_string): Robustification. Fixes midi
6100 output with std::string.
6102 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6104 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
6106 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6108 * Fix -DSTRING_UTILS_INLINED.
6110 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6112 * VERSION (PATCH_LEVEL): release 2.7.29
6114 * lily/relocate.cc (setup_paths): mingw uses std string too.
6116 * lily/*.cc: various fixes for substr(ARG).
6118 * lily/sustain-pedal.cc (print):
6120 * flower/file-name.cc (slashify): use std strings.
6122 * flower/string-convert.cc: remove publib.h
6124 * scm/define-markup-commands.scm (verbatim-file): new markup
6125 command \verbatim-file
6127 * Documentation/topdocs/NEWS.tely: fixup URLs
6129 * input/regression/alignment-vertical-manual-setting.ly (Module):
6132 * lily/align-interface.cc (align_elements_to_extents): overwrite
6133 translations with numbers in alignment-offsets from left bound
6135 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6136 (page-translate-systems): new function: take into account Y-offset.
6138 * Documentation/topdocs/NEWS.tely (Top): document new features.
6140 * input/regression/page-layout-manual-position.ly (Module): new
6143 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6145 * flower/file-path.cc (path::parse_path): Oops.
6147 * Finish std::string interface. For now, use std:: marker
6148 throughout for easy s/r.
6150 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6152 * Documentation/user/putting.itely (Score is a single musical
6154 (Score is a single musical expression): more typos.
6156 * scm/page.scm (annotate-space-left): thinko.
6157 (annotate-page): more thinkos.
6159 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6161 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6162 for different \score blocks separately.
6163 (post-process-pages): put write-page-layout into paper block.
6165 * lily/output-def.cc (get_parser): new file.
6167 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6170 * lily/include/output-def.hh (class Output_def): add parser_ member.
6172 * input/regression/page-layout-twopass.ly (Module): new file.
6174 * scm/lily.scm: remove cpp hack.
6176 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6178 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6180 * GNUmakefile.in (c-clean): New target.
6182 * flower/include/std-string.hh: String/std::string compatibility:
6183 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6186 * flower/rational.cc:
6187 * flower/include/rational.hh:
6190 * flower/include/offset.hh:
6192 * flower/interval.cc:
6193 * flower/include/interval.hh:
6195 * flower/string-convert.cc:
6196 * flower/include/string-convert.hh: Use std::string [interface].
6199 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6201 * Documentation/index.html.in: clean up.
6203 2006-01-25 Graham Percival <gpermus@gmail.com>
6205 * Documentation/user/putting.itely: another new untested doc section.
6207 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6209 * scm/layout-page-layout.scm (write-page-breaks): write
6210 \spacingTweaks #ALIST. Handle grace timing.
6212 * scm/: more imports.
6214 * scm/page.scm (make-page): add footer/header.
6215 (annotate-space-left): revise: only take page argument.
6216 (layout->page-init): new function.
6218 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6219 version of the system/spacing/linebreak hack writing to the output
6221 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6224 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6227 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6229 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6231 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6233 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6234 handling to page.scm
6236 * lily/prob-scheme.cc (LY_DEFINE): new file.
6237 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6239 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6242 * lily/music.cc (derived_mark): derive Music from Prob.
6244 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6246 * lily/prob.cc (Module): Implement Prob (Property Object), object
6247 with shared and r/w property alists.
6249 * lily/include/prob.hh (Module): new file. Declare Prob.
6251 * flower/string.cc: remove is_empty().
6253 * flower/include/string.hh (class String): remove String:: qualifier.
6255 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6256 substitute appropriate functions.
6258 * flower/include/string.hh (class String): remove to_str0 and
6259 is_empty(). S&R everywhere.
6261 2006-01-23 Graham Percival <gpermus@gmail.com>
6263 * Documentation/user/basic-notation.itely: add hairpin
6264 after-linebreak tweak to commonprop.
6266 * Documentation/user/putting.itely: added two new sections.
6268 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6270 * flower/international.cc:
6271 * flower/include/international.hh:
6273 * flower/getopt-long.cc:
6274 * flower/include/getopt-long.hh: Use std::string [interface].
6277 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6279 * stepmake/stepmake/executable-rules.make: Add dependency on
6282 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6284 * flower/file-path.cc:
6285 * flower/include/file-path.hh: Use std::string [interface].
6288 * flower/direction.cc:
6289 * flower/axis.cc: Unused. Remove.
6291 * configure.in (--enable-std-string): New option.
6293 * flower/std-string.cc:
6294 * flower/include/std-string.hh: New file.
6296 * flower/file-name.cc[STD_STRING]:
6297 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6299 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6301 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6303 * scm/define-markup-commands.scm (with-dimensions):
6304 with-dimensions markup command.
6306 * input/test/font-table.ly: use it.
6308 * lily/open-type-font.cc (glyph_list): new function.
6310 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6312 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6314 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6316 * ly/music-functions-init.ly (parallelMusic): new music function
6317 for parallel music entry.
6319 * scm/define-music-properties.scm (all-music-properties): new
6320 'void music property
6322 * scm/music-functions.scm (ly:music-message): make public, to be
6323 used in music function definitions
6325 * scm/lily-library.scm (collect-music-for-book): discard music
6326 when the 'void property is set.
6328 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6330 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6332 * mf/GNUmakefile: idem.
6334 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6336 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6338 * Documentation/user/notation-appendices.itely (The Feta font):
6341 * input/test/font-table.ly: new file. Generate font table within lily.
6343 * Documentation/user/notation-appendices.itely (The Feta font):
6344 use new font-table.ly file.
6346 * stepmake/stepmake/install-out-targets.make
6347 (local-install-outfiles): only create directory if
6348 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6350 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6352 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6354 * VERSION (PACKAGE_NAME): release 2.7.28
6356 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6357 the right font from a Mac dfont.
6358 (write-preamble): don't forget directory, only look at files.
6360 This fixes problems with TTF files in dfonts that don't match
6361 their PostScript names.
6363 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6364 PS name from TTF font.
6366 * input/regression/tie-manual.ly: document new feature.
6368 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6370 * VERSION (MY_PATCH_LEVEL): bump to .28
6372 * Documentation/user/basic-notation.itely (Ties): add tie examples
6375 * lily/tie-formatting-problem.cc (score_ties_configuration):
6376 symmetry penalties for outer ties.
6378 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6380 * lily/tie-formatting-problem.cc (generate_configuration)
6381 (set_manual_tie_configuration): skip non-pair manual
6382 tie-configuration, so you can set individual ties as
6384 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6386 * input/regression/tie-chord.ly: use generateTiePattern to
6389 * lily/tie-formatting-problem.cc (peak_around): new function.
6390 (score_configuration): use sliding criterion for staff line collisions.
6391 (score_configuration): idem for dot collisions.
6392 (generate_configuration): use separate stem_gap for gap to stem.
6394 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6395 separate penalty factors for x and y distance.
6396 (struct Tie_details): separate penalties for tip and center line collisions.
6398 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6400 * lily/tie-formatting-problem.cc (generate_configuration): make
6401 large ties avoid stafflines in the horizontal section.
6402 (score_configuration): use softcoded penalties
6403 (score_aptitude): idem.
6405 * lily/tie-helper.cc (from_grob): softcode tie details
6407 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6409 * lily/staff-symbol-referencer.cc (on_line): rename from
6412 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6414 * ly/music-functions-init.ly: remove duplicate tag.
6416 * lily/include/*.hh: GCC 4.1 fixes.
6418 006-01-16 Erlend Aasland <erlenda@gmail.com>
6420 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6422 * scm/define-music-types.scm: fix bug in desc. string
6423 for OverrideProperty
6425 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6427 * scripts/lilypond-book.py: bugfix
6429 * scm/define-music-types.scm: fix typos.
6431 2006-01-14 Graham Percival <gpermus@gmail.com>
6433 * Documentation/user/ basic-notation.itely, global.itely,
6434 advanced-notation.itely, instrument-notation.itely: small
6435 additions (bugs and commonly tweaked properties).
6437 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6439 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6440 detection of mingw build.
6441 (MINGW_BUILD): opps.
6443 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6445 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6448 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6450 * scm/music-functions.scm (skip->rest): add skip->rest
6452 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6454 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6457 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6458 config dirs. Aids debugging.
6459 (display_config): also display config files.
6461 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6463 * VERSION: release 2.7.27
6465 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6466 for determining bar size.
6468 * lily/staff-symbol.cc (print): place lines at distance line-positions
6470 * scm/define-grob-properties.scm (all-user-grob-properties): add
6473 * lily/staff-symbol.cc (height): new function.
6475 * input/regression/staff-line-positions.ly: new file.
6477 2006-01-06 Graham Percival <gpermus@gmail.com>
6479 * input/test/add-staccato.ly: remove reference to old file.
6481 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6483 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6484 lilypond binary too.
6486 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6488 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6490 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6492 * scripts/midi2ly.py: Bugfix: Declare datadir.
6494 * make/ly-rules.make:
6495 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6496 that seems to be gone). Fixes make web.
6498 * The grand 2005-2006 replace.
6500 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6502 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6504 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6505 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6506 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6507 like -dgs-font-load.
6509 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6510 remove absolute path to lilypond binary.
6512 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6514 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6516 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6518 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6520 * mf/GNUmakefile: remove broken dvips map symlink.
6522 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6525 * configure.in: Cosmetic fixes.
6527 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6529 * Documentation/user/music-glossary.tely (Pitch names): Added
6530 Spanish pitch names and durations, thanks to Ernesto Gancedo
6532 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6534 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6535 init. Fixes verbose printing of .scm files.
6537 * stepmake/aclocal.m4: add spaces before - options.
6539 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6541 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6542 of path search in local block variable.
6544 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6546 * configure.in (NCSB_DIR): --enable-ncsb-dir
6547 (LINK_GXX_STATICALLY): denko.
6549 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6551 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6552 use locate to find c059033l.pfb.
6554 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6556 * lily/tie-formatting-problem.cc
6557 (problem::generate_base_chord_configuration): Use my_round (was
6560 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6561 do not invoke mbrtowc.
6563 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6565 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6567 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6569 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6571 * Documentation/user/invoking.itely (svg): revise.
6573 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6575 * lily/lexer.ll: use sourcefilename iso. renameinput.
6577 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6579 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6580 <PostScriptName>.ttf instead of c059XXXttf.
6582 * lily/program-option.cc (LY_DEFINE): special support for
6583 --verbose, so it works before option init too.
6585 * mf/GNUmakefile (local-install): oops.
6587 * lily/lyric-hyphen.cc (print): oops.
6589 * buildscripts/pfx2ttf.fontforge: new file.
6591 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6592 ($(outdir)/%.ttf): new rule.
6594 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6597 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6600 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6602 * VERSION: release 2.7.26
6604 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6606 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6608 * lily/font-config.cc (init_fontconfig): verbosity.
6610 * THANKS: add Muziekacademie Lede.
6612 * scripts/musicxml2ly.py (print_voice_definitions): new function
6613 (print_score_setup): new function
6614 (convert): read part definition to output staves properly.
6616 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6619 * python/musicexp.py (Output_printer.__init__): use _ in data
6621 (Output_printer.unformatted_output): new function: no formatting,
6623 (Duration.get_length): remove isinstance() checks for
6624 Output_printer everywhere.
6626 * input/regression/lyrics-bar.ly (texidoc): add
6627 Separating_line_group_engraver.
6629 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6631 * lily/relocate.cc (framework_relocation): New function,
6632 factored from set_relocation ().
6633 (prefix_relocation): Rename from set_relocation ().
6634 (setup_paths): Use it.
6636 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6638 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6639 numbers. Patch by Erlend Aasland.
6641 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6643 * lily/font-config.cc (init_fontconfig): print warning if cache
6644 file is not existant.
6646 * lily/main.cc: don't use #ifdef but #if
6648 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6650 * lily/grob-property.cc (internal_set_property): don't abort on
6651 calculation-in-progress.
6653 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6655 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6656 connect-to-neighbor property not connect-to-other
6658 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6659 (LY_DEFINE): oops. don't forget protection.
6661 * flower/parse-afm.cc (Module): strip AFM handling completely.
6663 * lily/stencil-expression.cc: idem.
6665 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6667 * lily/function-documentation.cc (ly_add_function_documentation):
6668 use static member iso. Protected_scm
6670 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6672 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6674 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6676 * lily/relocate.cc (set_env_dir): New function.
6677 (set_relocation): Use it to fix setting PANGO_PREFIX.
6679 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6681 * input/regression/stem-direction-context.ly: remove rest.
6683 * lily/melody-engraver.cc (process_music): restart for bar lines.
6684 (acknowledge_slur): restart for slurs.
6686 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6688 * Documentation/user/invoking.itely: describe how to view SVG
6689 output using Inkscape which replace embedded fonts with OTF fonts.
6691 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6693 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6695 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6697 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6700 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6702 * VERSION (PACKAGE_NAME): release 2.7.25
6704 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6706 * input/regression/stem-direction-context.ly: new file.
6708 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6710 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6713 * ly/engraver-init.ly: add Melody_engraver
6715 * lily/beam.cc (calc_direction): use default-direction
6716 iso. get_default_direction()
6718 * scm/define-grob-properties.scm (all-user-grob-properties): add
6719 default-direction property.
6721 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6723 * lily/stem.cc (calc_default_direction): remove
6724 Stem::get_default_direction, use default-direction with callback
6727 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6729 * lily/melody-engraver.cc: new file. Acknowledge stems for
6730 interpolated stem directions.
6732 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6734 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6736 * lily/slur-configuration.cc (fit_factor): more robust check for
6737 point in curve X-extent.
6739 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6740 (outside_slur_callback): check for 'outside avoidance.
6742 * lily/slur-configuration.cc (score_extra_encompass): don't use
6743 bound->column() == avoid->column() for checking extents, as this
6744 doesn't work for accidentals.
6746 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6747 DynamicText hardcoding.
6749 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6750 crash if bound stem is NULL
6752 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6755 2005-12-22 Graham Percival <gpermus@gmail.com>
6757 * scm/define-markup-commands.scm: typo. @code{\raise}
6760 * darwin.patch: now used again, includes a
6761 required patch from fink.
6763 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6765 * po/TODO: mention gtranslator along with kbabel.
6766 * po/fi.po: update translations.
6768 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6770 * lily/relocate.cc (setup_paths): Bugfix.
6772 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6774 * lily/slur-configuration.cc (score_extra_encompass): don't use
6775 "avoid" choice for avoid-slur.
6777 * stepmake/bin/install.py (dest): don't create existing dir.
6779 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6781 * stepmake/bin/install.py: Remove file before copying.
6784 * stepmake/aclocal.m4: Do not substitute INSTALL.
6786 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6788 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6789 depend on link-tree.
6791 * lily/relocate.cc (setup_paths): only check path for non-absolute
6792 dir without directory part.
6794 * flower/file-name.cc (is_absolute): new method.
6795 (is_absolute): check root_ too.
6797 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6799 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6800 relocation code. Oops, don't comment out too much.
6802 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6805 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6808 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6810 * .cvsignore: Add install-sh.
6812 * autogen.sh (srcdir): Typo.
6814 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6816 * autogen.sh (srcdir): urg. Touch install-sh.
6818 * stepmake/bin/install-sh (Module): remove.
6820 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6822 * lily/include/relocate.hh: new file.
6824 * lily/relocate.cc: new file. Contain relocation logic.
6826 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6827 (main): read LILYPOND_VERBOSE as the first thing.
6829 * stepmake/aclocal.m4: remove INSTALL variable.
6831 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6832 separate target for making font symlinks.
6833 (documentation-dir): use $(if $(findstring )) for switching off
6836 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6837 something if DOCUMENTATION is no.
6839 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6841 * VERSION: release 2.7.24
6843 * lily/script-column-engraver.cc (stop_translation_timestep):
6844 delay adding to script-column.
6846 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6848 * python/convertrules.py (conv): rule for number-visibility
6850 * lily/slur-configuration.cc (score_extra_encompass): different
6851 distance measure for avoid and inside avoidance.
6852 (score_extra_encompass): use 1/(distance+eps) as penalty.
6854 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6855 encompass objects for generating slur curves.
6857 * lily/slur.cc: use details iso. slur-details property.
6859 * input/regression/slur-tuplet.ly: new file.
6861 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6863 * flower/include/offset.hh (class Offset): new operator /=
6865 * lily/tuplet-number.cc (print): new file, new interface.
6867 * scm/define-grob-properties.scm (all-user-grob-properties):
6868 remove number-visibility property.
6870 * lily/tuplet-bracket.cc (calc_control_points): new function
6871 (calc_connect_to_neighbors): new function.
6872 (print): remove text handling for tuplet numberdef.
6874 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6877 * lily/lily-guile.cc (robust_scm2booldrul): new function
6879 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6881 * lily/tuplet-bracket.cc (calc_position_and_height): use
6882 staff-padding to control whether tuplet brackets are over staves.
6884 * lily/grob.cc (suicide): clear dim_caches_.
6886 * lily/dimension-cache.cc (clear): new function.
6888 * lily/grob.cc (extent): swap order of min-extent and extent
6889 calculations. This fixes hara kiri staves.
6891 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6893 * lily/main.cc: Nitpick: relocation is not based on path, but on
6894 directory (location).
6896 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6898 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6900 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6902 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6904 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6906 * stepmake/stepmake/generic-vars.make (Module): idem.
6908 * stepmake/stepmake/executable-targets.make (default): use it.
6910 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6912 * make/GNUmakefile: don't install make rules.
6914 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6916 (prepend_env_path): more verbosity.
6918 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6920 * GNUmakefile.in: add dir argument for find command.
6922 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6923 fixes weird line numbers for point & click.
6925 * lily/source-file.cc (get_counts): init line/column/char counts.
6927 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6929 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6931 2005-12-16 Graham Percival <gpermus@gmail.com>
6933 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6934 minor fixes from Fredric. Thanks!
6936 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6938 * ly/music-functions-init.ly: add \bar and \clef music function
6940 * lily/lily-lexer.cc: idem.
6942 * lily/parser.yy (FIXME): remove BAR and CLEF.
6944 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6946 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6948 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6949 function arguments too
6951 * lily/main.cc (set_relocation): new function.
6953 * scripts/musicxml2ly.py (convert): add \version
6955 * lily/tie.cc: remove get_default_attachments()
6957 * VERSION (PACKAGE_NAME): release 2.7.23
6959 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6960 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6962 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6964 * lily/tie-formatting-problem.cc (score_ties): new function
6965 (get_variations): new function. Try flipping dirs for collisions.
6966 (generate_optimal_chord_configuration): new function. 1-opt search
6967 for better configuration.
6969 * lily/tie-configuration.cc: new file.
6971 * lily/tie.cc: junk Tie::get_configuration()
6973 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6974 (score_ties_configuration): new function.
6975 (generate_ties_configuration): new function.
6976 (generate_base_chord_configuration): new function.
6977 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6978 (set_manual_tie_configuration): Move body from tie-column-format.cc
6980 * input/regression/tie-dot.ly: new file.
6982 * lily/tie-formatting-problem.cc (score_configuration): score
6985 * lily/tie-helper.cc (get_transformed_bezier): new function
6987 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6989 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6990 -undefined suppress iso. -framework Python
6992 * scm/define-grobs.scm (all-grob-descriptions): set
6993 springs-and-rods (thanks Joe Neeman!)
6995 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6997 * input/no-notation/display-lily-tests.ly (test):
6998 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6999 changed from \tag #'(a b) to \tag #'a \tag #'b
7001 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7003 * Documentation/topdocs/NEWS.tely: strip out-www.
7005 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
7007 * config.make.in (AR): add AR and RANLIB
7009 * flower/libc-extension.cc: include cassert
7011 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
7014 2005-12-11 Graham Percival <gpermus@gmail.com>
7016 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
7018 * stepmake/stepmake/python-modules-vars.make: define
7019 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
7021 * THANKS: added Johannes Schindelin.
7023 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7025 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
7027 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
7028 Span_arpeggio_engraver, add Tweak_engraver to Score context.
7030 * lily/parser.yy: reorganize file layout.
7032 * ly/music-functions-init.ly: add tweak music function.
7034 * lily/grob-info.cc (ultimate_music_cause): new function:
7035 recursively lookup causes.
7037 * lily/parser.yy (chord_body_element): allow music functions for
7038 post-events, allow music functions for chord elements.
7040 * lily/font-config-scheme.cc (display_fontset): add cast.
7042 * python/convertrules.py (FatalConversionError.sub_syms): \tag
7043 #'(a b) -> \tag #'a \tag #'b rule.
7045 * python/musicexp.py (Output_printer.dump_version): new function
7047 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7049 * lily/parser.yy (FIXME): remove \tag
7050 (FIXME): remove tag_music() function.
7052 * lily/lily-lexer.cc: remove \tag
7054 * ly/music-functions-init.ly: define music-function "tag"
7056 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
7058 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7060 * VERSION (PATCH_LEVEL): release 2.7.22
7062 * input/regression/lyric-hyphen-retain.ly: renew.
7064 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
7067 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
7068 iso. minimum-length property for rods.
7070 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
7071 LyricSpace item to keep lyrics spaced apart.
7073 * ly/engraver-init.ly: remove Separating_line_group_engraver
7075 * Documentation/user/music-glossary.tely: do setfilename before
7078 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
7080 * Documentation/user/lilypond-book.itely: use `,´ after xref:
7081 See xref documentation, for example.
7083 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
7085 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
7086 pending_skip iso. ly_voice[-1]
7087 (main): add if __main__ for debugging.
7089 * python/musicxml.py (Accidental.__init__): new class.
7091 * scripts/musicxml2ly.py (progress): new function
7092 (musicxml_key_to_lily): don't barf on modeless keys.
7093 (create_skip_music): new function.
7094 (musicxml_spanner_to_lily_event): new function. Handle beams too.
7095 (musicxml_note_to_lily_main_event): new function.
7097 * python/musicexp.py (Music.__init__): add comment field.
7098 (NestedMusic.append): new routine.
7099 (SequentialMusic.print_ly): print comment.
7100 (ArpeggioEvent.ly_expression): new class
7101 (BeamEvent.ly_expression): new class
7102 (NoteEvent.__init__): support for cautionary/forced accs.
7104 * lily/lookup.cc (slur): normal order for array loop.
7106 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
7109 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
7112 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7114 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7116 * scripts/lilypond-book.py: Introduce option
7117 --preserve-line-breaks, for usage with srcltx
7119 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7121 * scm/output-lib.scm (print-circled-text-callback): draw circle
7122 around text using make-circle-markup.
7124 * Documentation/user/*: strip out-www from file names.
7126 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7128 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7129 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7131 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7133 * Documentation/user/GNUmakefile: idem.
7135 * Documentation/user/macros.itexi: strip out-www
7137 * python/rational.py: python 2.3 compat.
7139 * VERSION (PATCH_LEVEL): release 2.7.21
7141 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7142 option formatting, lilypond style.
7144 * python/musicexp.py: grab from Ikebana: a library for composing
7145 ly music expressions.
7146 (Output_printer): class for advanced .ly printing.
7149 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7150 convert to pythonesque structure.
7152 * python/rational.py: PD rational number class.
7154 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7156 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7158 * lily/part-combine-iterator.cc: Minor bugfix
7160 * THANKS: Update bughunters
7162 2005-12-02 Werner Lemberg <wl@gnu.org>
7164 * mf/README: Document process for proper mf2pt1 conversion.
7166 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7169 * mf/feta-harmonica.mf: Removed. Unused.
7171 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7173 * scripts/lilypond-book.py (do_file): fix thinkos.
7175 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7177 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7178 ($(outdir)/parser.cc):
7179 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7181 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7183 * ly/titling-init.ly (tagline): it should be a space between
7184 "Music engraving by LilyPond" and the version number.
7186 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7188 * VERSION (PACKAGE_NAME): release 2.7.20
7190 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7192 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7194 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7196 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7198 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7200 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7202 * kpath-guile/: remove directory
7204 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7205 file. Encapsulate kpathsea using commandline tools.
7207 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7210 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7212 * Documentation/user/advanced-notation.itely (Setting automatic
7213 beam behavior): Correct a few typos. Thanks to David Bobroff.
7215 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7216 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7218 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7220 * scripts/*.py: gmane address for bugs.
7222 2005-11-28 Pal Benko <benkop@freestart.hu>
7224 * make/ly-rules.make: add -f switch to mv
7226 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7228 * lily/bar-line.cc: interpret it
7230 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7232 * configure.in (--disable-documentation): New switch.
7234 * GNUmakefile.in: Use it.
7236 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7238 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7240 * scripts/lilypond-book.py (do_file): search chunks for
7243 * GNUmakefile.in: add copy step in between so we can lose the
7244 out-www directories.
7246 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7248 * lily/pango-font.cc (pango_item_string_stencil): put
7249 geometry.width into glyph-string too.
7251 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7253 * scm/define-music-display-methods.scm (RevertProperty):
7254 (OverrideProperty): Use grob-property-path property, a list of
7255 symbols, instead of grob-property, which used to be a single
7257 (BassFigureEvent): a figure can be a plain number, not necessarily a
7260 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7262 * VERSION: release 2.7.19
7264 * lily/figured-bass-engraver.cc (process_music): check
7265 figuredBassCenterContinuations first.
7267 * scm/translation-functions.scm (format-bass-figure): make double
7270 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7273 * lily/system-start-delimiter-engraver.cc: move from
7274 Nested_system_start_delimiter_engraver, rename
7275 Nested_system_start_delimiter_engraver ->
7276 System_start_delimiter_engraver.
7278 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7279 bracket type from hierarchy.
7281 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7283 * lily/rest.cc (y_offset_callback): read staff-position.
7285 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7286 mark after-line-breaking-callback as internal.
7288 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7290 2005-11-25 Werner Lemberg <wl@gnu.org>
7292 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7294 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7296 * stepmake/bin/add-html-footer.py (do_file): add google
7298 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7299 staff if first_start_ is true.
7301 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7303 * scripts/midi2ly.py (split_track): add __repr__ members.
7304 (track_first_item): only return Item if not None. This fixes a
7305 problem when dumping a track that starts with an empty channel.
7307 * python/midi.c: doc module.
7309 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7311 * Documentation/user/global.itely (Creating MIDI files): Fix
7312 compilation problem.
7314 2005-11-22 Graham Percival <gpermus@gmail.com>
7316 * Documentation/user/basic-notation.itely: clarify dynamic
7319 * Documentation/user/advanced-notation.itely: add unicode
7320 escape control example, whatever that is. :)
7322 * Documentation/user/global.itely: added "removing dynamics
7325 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7327 * VERSION (PATCH_LEVEL): release 2.7.18
7329 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7330 System_start_delimiter_engraver by
7331 Nested_system_start_delimiter_engraver.
7333 * lily/nested-system-start-delimiter-engraver.cc (struct
7334 Bracket_nesting_node): new class.
7335 (struct Bracket_nesting_group): new class
7336 (struct Bracket_nesting_staff): new class.
7337 (process_music): create hierarchy of grobs. This allows separate
7338 tuning of different SSDs.
7340 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7341 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7343 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7345 * lily/side-position-interface.cc (aligned_side): multiply
7348 * lily/script-engraver.cc (make_script_from_event): allow setting
7351 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7353 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7355 * scm/define-grobs.scm (all-grob-descriptions): new grob
7356 NestedSystemStartDelimiter.
7358 * input/regression/system-start-heavy-bar.ly: new file.
7360 * lily/nested-system-start-delimiter-engraver.cc: new file.
7362 * lily/nested-system-start-delimiter.cc: new file.
7364 * input/regression/system-start-nesting.ly: new file.
7366 * scm/define-grobs.scm (all-grob-descriptions): use X side
7367 positioning for positioning braces for nested contexts.
7369 * lily/system-start-delimiter.cc (print): don't divide extent by
7371 (print): use style iso. glyph.
7372 (staff_bracket): translate glyph inside routine already.
7374 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7376 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7379 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7381 * scm/define-context-properties.scm
7382 (all-user-translation-properties): rename figuredBassFormatter
7383 from newFiguredBassFormatter.
7385 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7387 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7389 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7391 * lily/beam.cc (calc_beaming): new function.
7392 (calc_shorten): new function.
7394 * THANKS: add Edward Neeman.
7396 * input/regression/accidental-clef-change.ly: new file.
7398 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7400 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7402 * lily/clef-engraver.cc (inspect_clef_properties): reset
7403 localKeySignature for clef changes.
7405 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7407 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7408 add dummy definition that works in Linux and add information in
7409 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7411 * Documentation/user/changing-defaults.itely (Modifying context
7412 plug-ins): Add index for \with.
7414 * Documentation/user/music-glossary.tely (dal segno): Updated
7415 example to version >=2.6.
7417 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7419 * Documentation/user/instrument-notation.itely (Printing chord
7420 names): Reorder \chordmode and \repeat in one example.
7422 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7424 * VERSION: release 2.7.17
7426 * Documentation/topdocs/NEWS.tely (Top): add note about
7429 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7430 new function. Search region of 3 positions for best tie.
7431 (score_configuration): new function.
7432 (score_aptitude): new function.
7433 (generate_configuration): new function.
7434 (get_configuration): new function.
7435 (Tie_formatting_problem): new function
7437 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7439 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7441 * THANKS: add Eduardo Vieira & Ralph Little
7443 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7446 * lily/include/tie-formatting-problem.hh (class
7447 Tie_formatting_problem): add Tie_details to
7448 Tie_formatting_problem. Update calling conventions.
7450 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7453 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7455 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7457 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7458 scm/define-context-properties.scm: Maintenance bugfix: make
7459 ligature brackets work again by removing obsolete ligature
7460 primitive callback push/pop.
7462 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7463 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7466 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7468 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7469 used and do not call it a path.
7470 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7472 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7474 * lily/include/tie-formatting-problem.hh (class
7475 Tie_formatting_problem): new file.
7477 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7479 * Documentation/misc/ChangeLog-2.3: new file.
7481 * lily/audio-staff.cc (output): degarianize.
7483 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7485 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7486 Unset PYTHONOPTIMIZE. Fixes install if set.
7488 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7490 * python/convertrules.py (conv): add warning about drums.
7492 * make/stepmake.make: include toplevel-version.make after config.make.
7494 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7495 also allow python2.4
7497 * config.make.in (configure-srcdir): remove GXX GCC vars.
7499 * stepmake/aclocal.m4: don't do non-srcdir build with
7500 symlinks. Use inclusion, so the src directory name can be changed.
7502 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7504 * make/mutopia-vars.make:
7505 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7508 2005-11-13 Werner Lemberg <wl@gnu.org>
7510 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7511 but the affected path. This ensures that the (overlapping) outlines
7512 have the same direction, which is a necessary prerequisite for
7513 FontForge's algorithm to remove overlaps.
7516 * mf/feta-haak.mf: Formatting.
7517 (draw_bracket): Slightly modify outline to avoid an unnecessary
7519 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7520 them from the affected paths.
7522 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7524 * mf/README: remove xpm / accordion notes.
7526 * lily/tie-column-format.cc (set_chord_outline): add dots into
7527 skyline extents. This fixes tie formatting if the left head has dots.
7529 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7530 space inside the staff.
7531 (get_configuration): shift another position if necessary in case
7534 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7536 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7537 buildscript-dir iso. $(depth)/buildscripts.
7539 * tex/GNUmakefile (local-uninstall): remove
7540 music-drawing-routines.ps juggling.
7542 * stepmake/stepmake/install-targets.make (local-install-files):
7543 prepend src-dir to install targets.
7545 * lily/system-start-delimiter-engraver.cc
7546 (acknowledge_system_start_delimiter): use
7547 add_offset_callback(). This fixes translation of nested
7550 * lily/grob-closure.cc (add_offset_callback): only encaps in
7551 simple_closure if it's a procedure.
7553 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7556 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7557 remove-empty where pertinent.
7559 2005-11-12 Graham Percival <gpermus@gmail.com>
7561 * Documentation/user/instrument-notation.itely: added
7562 Cameron Horsburgh's multiple stanzas docs. Thanks!
7564 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7567 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7568 make picture in builddir, not srcdir.
7570 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7572 * VERSION: release 2.7.16
7574 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7577 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7579 * Documentation/user/examples.itely (Piano templates): Minor
7580 modification to the Piano centered lyrics example.
7582 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7584 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7587 * Documentation/user/point-and-click.itely: simplify p&c
7588 instruction: don't configure firefox. Put lilypond-invoke-editor
7589 in front of the browser.
7591 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7592 (run-browser): new function.
7594 * lily/parser.yy (Lily_lexer): recognize Book
7596 * lily/book.cc (clone): new function
7598 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7600 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7602 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7603 Maintenance bugfix: reduce number of font related warnings by
7604 updating naming conventions for glyph-name.
7606 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7608 * scm/define-grobs.scm (all-grob-descriptions): add
7609 rhythmic-grob-interface to TabNoteHead.
7611 * scm/layout-beam.scm (check-quant-callbacks): remove
7614 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7616 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7617 alignment of centered divisiones.
7619 * scm/scripts.scm (articulations): Maintenance bugfix:
7620 follow-into-staff -> quantize-position.
7622 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7623 plica head in porrectus deminutus.
7625 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7627 * make/lilypond.fedora.spec.in (Group): add %clean section.
7629 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7630 less then 1/5th of total length.
7631 (print): use gap too. Fixes tupletUp-single-bracket.ly
7633 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7634 events into EventChord. This fixes textspanners on mm rests. Fixes
7637 * lily/side-position-interface.cc (get_axis): read side-axis
7638 (set_axis): set side-axis.
7640 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7641 properties everywhere.
7643 * lily/spacing-spanner.cc (breakable_column_spacing): add
7644 average-spacing-wishes. Take maximum if not set.
7645 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7647 * scm/define-grobs.scm (all-grob-descriptions): add
7648 average-spacing-wishes.
7650 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7651 offset callbacks. This fixes alignment for Fingering objects.
7653 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7654 space for key - timesig combination.
7656 * input/regression/script-stem-tremolo.ly (Module): new file.
7658 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7661 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7662 Fixes: c-tremolo-script.ly.
7664 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7666 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7668 * scm/define-grobs.scm (all-grob-descriptions): remove
7669 self-X-offset. Fixes alignment of octavate-8.
7671 * scripts/lilypond-book.py (datadir): look in
7672 LILYPONDPREFIX/share/lilypond/current/
7674 * GNUmakefile.in: symlink current to <VERSION>.
7676 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7678 * lily/main.cc: eps listed as a backend.
7680 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7682 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7684 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7686 * lily/include/score.hh (class Score): remove texts_ member.
7688 * lily/beam.cc (set_stem_lengths): force direction callback.
7689 (print): read quantized-positions, so we can force
7690 Beam::set_stem_lengths to occur.
7691 (rest_collision_callback): use common X parent.
7693 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7695 * flower/file-path.cc (find): Bugfix: Return name of file found.
7697 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7698 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7699 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7701 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7703 * flower/offset.cc: idem.
7705 * mf/*.mf: update email address.
7707 * lily/font-config-scheme.cc: new file.
7709 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7711 * lily/*: cs.uu.nl -> xs4all.nl
7713 * VERSION (PATCH_LEVEL): release 2.7.15
7715 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7718 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7720 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7722 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7724 * lily/staff-performer.cc (process_music): add audio
7725 elements. This makes MIDI instrument changes work once again.
7727 * lily/main.cc (LY_DEFINE): add gmane address.
7729 * lily/beam.cc: remove calc_positions()
7731 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7732 original_ in private scope.
7733 (class Grob): drop pscore_ pointer, change to output_def pointer.
7734 (class Grob): cleanup class definition.
7736 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7738 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7740 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7741 absolute. Better diagnostics.
7743 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7744 This makes lilypond run from the build directory using argv0
7745 relocation (without any --prefix or LILYPONDPREFIX setting).
7747 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7749 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7751 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7752 with simple-closure.
7754 * lily/self-aligment-interface.cc (set_align_self): new function
7755 (set_center_parent): new function.
7757 * lily/side-position-interface.cc (set_axis): new function.
7759 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7762 * scm/define-grob-properties.scm (all-user-grob-properties):
7763 remove [XY]-offset-callbacks add [YX]-offset
7765 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7767 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7768 entry for time signatures after breathing signs. Bug report by
7771 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7773 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7774 not absolute, make it absolute using PATH.
7776 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7778 * python/midi.c (initmidi): Fix type for mingw.
7780 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7782 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7784 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7787 * stepmake/aclocal.m4: Support python cross compiling.
7789 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7792 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7794 * scm/output-lib.scm (chain-grob-member-functions): replace
7797 * lily/chained-callback.cc (Module): remove file.
7799 * lily/rest-collision.cc (force_shift_callback_rest): change to
7802 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7804 * lily/grob.cc (y_parent_positioning): remove axis argument from
7805 parent_positioning callbacks.
7806 (Grob): junk init code
7807 (get_offset): use generic property callbacks for
7808 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7809 (axis_parent_positioning): new function
7810 (axis_offset_symbol): new function
7811 (chain_offset_callback): new function
7812 (add_offset_callback): new function
7814 * lily/beam.cc (rest_collision_callback): change signature; this
7815 is now a chained callback.
7817 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7818 callback administration.
7820 * lily/simple-closure.cc: new file. Smob type that allows "grob
7823 (ly:make-simple-closure FUNC A B)
7825 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7828 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7831 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7833 * lily/rest.cc (polyphonic_offset_callback): remove.
7835 * lily/script-engraver.cc (try_music): remove bool* argument.
7837 * scm/script.scm (default-script-alist): set quantize-position
7840 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7842 * lily/side-position-interface.cc (aligned_side): move staff
7843 position quantization from
7844 Side_position_interface::quantised_position().
7845 (quantised_position): remove
7847 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7849 * input/regression/beam-quant-standard.ly: reindent, set
7850 debug-beam-quanting to #t.
7852 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7853 10000 if this is a "hard" concave beam.
7855 * lily/beam.cc (calc_least_squares_positions): change from
7856 calc_least_squares_dy
7857 (set_stem_lengths): this is now a chained callback.
7859 * lily/context-property.cc (execute_general_pushpop_property):
7860 bugfix override with procedure should have effect.
7862 * scm/define-grob-properties.scm (all-internal-grob-properties):
7863 remove position-callbacks.
7865 * scm/define-grobs.scm (all-grob-descriptions): use
7866 ly:make-callback-chain for positions property.
7868 * scm/layout-beam.scm (check-quant-callbacks): return list of
7871 * scm/lily.scm (type-p-name-alist): add callback-chain
7873 * lily/lily-guile.cc (type_check_assignment): type check failure
7874 is warning not message.
7876 * lily/grob-property.cc (try_callback): walk callback chain if
7879 * lily/chained-callback.cc: new file. new smob type.
7881 * lily/lily-guile.cc (procedure_arity): new function.
7883 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7885 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7887 2005-10-25 John Mandereau <john.mandereau@free.fr>
7889 * Documentation/user/instrument-notation.itely (Figured bass):
7890 describe new features
7892 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7894 * lily/beam.cc (calc_least_squares_dy): use property callback.
7896 * lily/beam-concave.cc (calc_concaveness): use property callback.
7898 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7900 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7904 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7906 * scm/layout-page-layout.scm (page-headfoot): annotate
7909 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7911 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7912 doesn't take y-space.
7914 * scm/paper.scm (paper-alist): fix A7 dimensions.
7916 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7918 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7919 src-wildcard, remove $(wildcard).
7921 * po/GNUmakefile (PO_FILES):
7922 * ps/GNUmakefile (PS_FILES):
7923 * tex/GNUmakefile (TEX_FILES):
7924 * cygwin/GNUmakefile (POSTINSTALLS):
7925 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7926 some wildcard calls.
7928 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7930 * THANKS: add Thomas Bushnell.
7932 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7934 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7935 (lilypond-main): Redirect to gui-main if 'gui is set.
7937 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7938 for alternative installations kludging s/share/lib/g
7941 * SConstruct (libdir_package_version): Define.
7943 * python/SConscript:
7944 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7947 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7949 * lily/main.cc: clarify --safe.
7951 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7953 * VERSION: release 2.7.14
7955 * Documentation/user/*.itely: remove minimumVerticalExtent.
7957 * scm/define-grobs.scm (all-grob-descriptions): remove
7958 RemoveEmptyVerticalGroup
7960 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7962 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7965 * python/convertrules.py (conv): add rules.
7967 * lily/grob.cc: remove is_empty()
7969 * lily/grob-property.cc: remove add_to_list_property().
7971 * scripts/convert-ly.py (datadir): add prefix switching hack to
7974 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7975 space-function tweak.
7977 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7979 * scm/define-grob-properties.scm (all-user-grob-properties):
7980 remove callback property.
7982 * lily/include/grob.hh (class Grob): remove property_callbacks_
7983 member. Properties of procedure type are assumed to be callbacks.
7985 * lily/ligature-engraver.cc (override_stencil_callback):
7986 rewrite. Use noteHeadLigaturePrimitive as source.
7988 * scm/define-grob-properties.scm (all-internal-grob-properties):
7989 remove ligature-primitive-callback
7991 * lily/include/dimension-cache.hh (class Dimension_cache): make
7992 class, with Grob as friend.
7994 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7995 has_extent_callback()
7997 * scm/translation-functions.scm (format-new-bass-figure): read
7998 figuredBassPlusDirection
8000 * scm/define-context-properties.scm
8001 (all-user-translation-properties): add figuredBassPlusDirection.
8003 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
8005 * lily/align-interface.cc (set_ordered): new function.
8007 * lily/grob.cc (flush_extent_cache): rewrite.
8009 * lily/dimension-cache.cc (Dimension_cache): cache extent as
8010 Interval pointer directly.
8012 * lily/main.cc (setup_paths): insert extra / .
8013 (setup_paths): junk cff entry.
8015 * lily/font-config.cc (init_fontconfig): only add type1 / otf
8018 * lily/axis-group-engraver.cc (finalize): remove
8019 extraVerticalExtent, minimumVerticalExtent verticalExtent.
8021 * lily/grob.cc (Grob): don't set extent from ctor.
8022 (extent): use property callbacks.
8024 * lily/axis-group-interface.cc: remove set_axes() function.
8026 * lily/grob-property.cc (del_property): new function.
8028 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8030 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
8032 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
8034 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
8036 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
8038 * mf/SConscript: Updates.
8040 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
8042 * stepmake/stepmake/*:
8046 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
8047 from any directory in build-dir. Cleanups.
8049 * make/srcdir.make.in: Remove.
8051 * lily/main.cc (setup_paths): Fix and document build-dir hack.
8053 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
8056 * lily/SConscript: Remove ttftools.
8058 * SConstruct: Resurrect.
8060 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8062 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
8065 * lily/paper-book.cc (add_score_title): put Paper_score title into
8068 * scm/translation-functions.scm (format-new-bass-figure): also
8069 allow plus in combination with _
8071 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8073 * VERSION: 2.7.13 released.
8075 * lily/note-collision.cc (check_meshing_chords): don't wipe
8076 stencil, merely set transparent.
8078 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
8079 (Top): document #'callbacks.
8080 (Top): document nested \override.
8082 * input/regression/figured-bass.ly: update for slash and pluses.
8084 * input/regression/figured-bass-continuation-forbid.ly (Module):
8087 * scm/translation-functions.scm (format-new-bass-figure): use
8088 slashed-digit if diminished is set.
8089 (format-new-bass-figure): add + if 'augmented is set.
8091 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
8093 * input/test/piano-staff-distance.ly: remove file.
8095 * Documentation/user/advanced-notation.itely (Formatting cue
8096 notes): use length-fraction for making stems/beams smaller.
8098 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
8101 * lily/new-figured-bass-engraver.cc: new property
8102 centerFiguredBassContinuations
8104 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8107 * lily/context-property.cc (execute_general_pushpop_property):
8110 * input/regression/override-nest.ly: new file.
8112 * python/convertrules.py (FatalConversionError.subber): conversion
8113 rule for #'callbacks
8115 * input/regression/override-nest.ly: new function.
8117 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8120 * lily/context-property.cc (lookup_nested_property): new function.
8121 (evict_from_alist): new function.
8122 (general_pushpop_property): new function.
8123 (execute_general_pushpop_property): rewrite. Support nested
8126 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8128 * lily/beam.cc: use length-fraction too.
8130 * scm/define-grob-properties.scm (all-user-grob-properties):
8131 remove property flag-width-function
8132 (all-user-grob-properties): remove space-function.
8134 * scm/layout-beam.scm: remove flag-width-function.
8136 * lily/beam.cc: remove flag-width-function
8138 * scm/layout-beam.scm: remove beam dir functions.
8140 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8142 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8143 for easier grace tweaks.
8145 * lily/beam.cc: remove dir-function.
8147 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8149 * lily/grob.cc: remove spacing-procedure.
8151 * lily/note-head.cc (calc_stem_attachment): new function.
8152 (internal_print): use callback to get glyph-name.
8154 * lily/grob-property.cc (get_interfaces): new function.
8156 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8158 * lily/stem.cc (calc_stem_end_position): new function.
8159 (calc_length): new function.
8160 document details for stem.
8161 remove Stem::get_direction()
8163 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8165 * lily/grob-property.cc (set_callback): new function.
8167 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8169 * lily/item-scheme.cc: new file.
8171 * lily/bar-line.cc (before_line_breaking): remove function.
8172 remove bar-size-procedure, break-glyph-function
8174 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8176 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8178 * lily/system-start-delimiter.cc (print): suicide from
8179 here. Remove after_line_breaking_callback.
8181 * lily/script-interface.cc (calc_direction): use callback for direction.
8183 * lily/side-position-interface.cc (aligned_side): don't use
8184 Side_position_interface::get_direction directly. Use callback.
8186 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8188 (get_print_stencil): rename from get_stencil: create stencil with
8189 transparency, color and cause.
8191 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8193 * python/convertrules.py (conv): insert temporary warning rule.
8195 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8197 * lily/grob-property.cc (try_callback): remove marker if applicable.
8199 * lily/grob.cc: elucidate doc about after/before-line-breaking
8201 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8203 * lily/stem.cc (height): idem.
8205 * lily/stem-tremolo.cc: idem.
8207 * lily/slur.cc (height): don't use get_uncached_stencil()
8209 * lily/rest.cc (y_offset_callback): use offset callback
8210 iso. after-line-breaking callback.
8212 * lily/grob.cc: change after/before-line-breaking-callback to
8213 after/before-line-breaking dummy properties.
8215 * lily/include/grob.hh: remove Grob_status.
8217 * scm/define-context-properties.scm
8218 (all-user-translation-properties): remove verticalAlignmentChildCallback
8220 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8221 (calc_direction): use callback
8222 (calc_positions): use callback.
8224 * lily/tie.cc (calc_direction): use callback. Only call parent
8225 positioning for more than one tie.
8227 * lily/tie-column.cc (calc_positioning_done): use callback
8229 * lily/slur-scoring.cc (calc_control_points): use callback
8231 * lily/slur.cc (calc_direction): use callback.
8233 * lily/note-collision.cc (force_shift_callback): remove.
8235 * lily/dot-column.cc (force_shift_callback): remove. Use
8236 other_axis_parent_positioning.
8238 * lily/grob.cc (other_axis_parent_positioning): new function.
8239 (same_axis_parent_positioning): new function
8241 * lily/align-interface.cc (alignment_callback): remove function.
8243 * lily/note-collision.cc (calc_positioning_done): use callback.
8245 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8246 (calc_direction): idem.
8247 remove print function.
8249 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8251 * lily/dot-column.cc (calc_positioning_done): use callback.
8253 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8255 * lily/beam.cc (calc_direction): use pseudo-property for beam
8257 (calc_positions): use callback
8259 * lily/align-interface.cc (calc_positioning_done): use
8260 callback. Fold fixed distance and normal alignment in one function.
8262 * lily/stem.cc (calc_stem_end_position): use callback.
8263 (calc_positioning_done): idem.
8264 (calc_direction): idem.
8265 (calc_stem_end_position): idem
8266 (calc_stem_info): idem.
8268 * lily/grob-property.cc (get_property_data): new function:
8269 (try_callback): new function.
8271 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8274 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8276 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8278 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8282 * lily/include/*.hh (Module): compile fixes.
8284 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8286 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8287 as an argument for char-syntax: use (char-syntax (or nil 0))
8288 instead of (char-syntax nil), thanks to Milan Zamazal.
8290 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8292 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8295 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8298 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8300 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8301 add class_name() method.
8303 * lily/music-scheme.cc: remove ly:music-name.
8305 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8307 * cygwin/postinstall-lilypond.sh: Remove cruft.
8309 * cygwin/postremove-lilypond.sh: Remove.
8311 * cygwin/GNUmakefile (default): Remove postremove rules.
8313 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8315 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8318 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8321 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8322 consider break index for broken spanner.
8324 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8325 characters from string before splitting.
8327 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8329 * scm/framework-ps.scm (output-preview-framework): use
8330 is-book-title to determine whether to chop off the booktitle.
8332 * lily/paper-book.cc (systems): init from book-title-properties
8333 (add_score_title): init score-title-properties.
8335 * ly/paper-defaults.ly: add {score,book}-title-properties.
8337 * scm/document-backend.scm (lookup-interface): error message if
8338 using unknown interface.
8340 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8343 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8345 (make_bracket): new function.
8347 * scm/lily.scm (define-scheme-options): add paper-size option.
8349 * ly/declarations-init.ly (laissezVibrer): get paper size from
8352 * scm/translation-functions.scm: use \fontsize for changing the
8355 * scm/define-grobs.scm (all-grob-descriptions): set
8356 between-length-limit to 1.0
8358 * lily/tie-helper.cc: add between_length_limit_ detail property.
8360 * mf/feta-bolletjes.mf: typos.
8362 * lily/note-head.cc (internal_print): don't shadow idx
8363 parameter. This fixes wrong attachment for do shape heads.
8365 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8367 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8369 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8371 * scm/layout-slur.scm: rename from slur.scm
8373 * scm/layout-page-layout.scm: rename from page-layout.scm
8375 * scm/layout-beam.scm: rename from beam.scm
8377 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8378 bass-figure-interface
8380 * lily/new-figured-bass-engraver.cc (process_music): add
8381 implicitBassFigures property.
8383 * scm/define-markup-commands.scm (pad-x): new markup.
8385 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8386 minimumVerticalExtent on FiguredBass context.
8388 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8389 case the continuation crosses a line break.
8391 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8393 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8394 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8395 absolute file name bug.
8397 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8399 * VERSION (PACKAGE_NAME): release 2.7.12
8401 * input/regression/figured-bass-continuation-center.ly: new file.
8403 * input/regression/beam-outside-beamlets.ly: new file.
8405 * lily/beam.cc (set_beaming): don't clip edges.
8406 (connect_beams): don't clip edges.
8408 * lily/beaming-info.cc (clip_edges): new function.
8410 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8412 * Documentation/user/instrument-notation.itely (Figured bass):
8413 demonstrate extenders, update seealso links.
8415 * scm/titling.scm (marked-up-headfoot): change tagline
8416 handling. tagline = ##f will blank the tagline as well.
8418 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8420 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8422 * lily/new-figured-bass-engraver.cc (struct
8423 New_figured_bass_engraver): add new_music_found_ member.
8425 * lily/lilypond-version.cc (Lilypond_version): deal with
8426 incorrectly formatted version strings.
8428 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8429 New_figured_bass_engraver by default.
8431 * lily/ttf.cc (print_trailer): only define glyph names when
8432 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8434 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8436 * lily/horizontal-bracket.cc (make_bracket): new function.
8438 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8439 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8440 BassFigureLine, BassFigureAlignment
8442 * lily/new-figured-bass-engraver.cc (process_music): new file.
8444 * lily/figured-bass-continuation.cc: new file.
8446 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8449 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8451 * scripts/lilypond-book.py: Bug fix, put the quote around the
8452 actual score for LaTeX documents.
8454 * scm/define-grobs.scm (all-grob-descriptions): Change
8455 collapse-height of the SystemStartBracket grob to 5.0,
8456 so the bracket disappears for single stave score lines (similarly
8457 to SystemStartBraces).
8459 * Documentation/user/advanced-notation.itely (Polymetric
8460 notation): Clarify the use of compressMusic.
8462 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8463 that the grace spacer note in other staves need the same duration
8464 and document the stroke-style property.
8466 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8468 * Documentation/user/global.itely (Vertical spacing): document
8469 alignment-extra-space and fixed-alignment-extra-space.
8471 * Documentation/topdocs/NEWS.tely (Top): add entry.
8473 * input/regression/alignment-vertical-spacing.ly: new file.
8475 * python/convertrules.py (conv): add rule.
8477 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8479 * lily/align-interface.cc (stretch_after_break): new
8480 function. Read fixed-alignment-extra-space property.
8481 (align_elements_to_extents): read alignment-extra-space property.
8483 * lily/lily-guile.cc (robust_scm2dir): new function.
8485 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8486 (annotate-space-left): new function. Annotate space left on page.
8487 (annotate-y-interval): new function.
8488 (paper-system-annotate-last): new function. Annotate bottom-space.
8490 * mf/feta-beugel.mf (y):
8492 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8494 * VERSION (PACKAGE_NAME): release 2.7.11
8496 * scm/lily-library.scm (interval-translate): new function
8497 (interval-center): new function.
8499 * scm/page-layout.scm (paper-system-annotate): new function. Add
8500 arrows for dimensions.
8502 * scm/stencil.scm (dimension-arrows): new function.
8504 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8506 * input/regression/page-spacing.ly: add annotatespacing
8508 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8509 (LY_DEFINE): new function ly:paper-system-set-property!
8511 * Documentation/user/global.itely (Paper size): explain how to add
8514 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8515 correspond to GS's definition.
8517 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8519 (print): only connect to next bracket if the next one is alive.
8520 (print): set padding to 0.0 if the bound is a breakable
8521 column. This makes tupletFullLength brackets reach up to the staff
8522 line if it doesn't connect to the next line.
8524 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8526 * lily/bar-number-engraver.cc: correct docs.
8528 * scm/output-lib.scm (first-bar-number-invisible): rename from
8529 default-bar-number-visibility
8531 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8533 * scm/define-music-properties.scm (all-music-properties): remove
8536 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8538 * po/fi.po: refresh.
8540 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8542 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8544 (disappear): bugfix.
8546 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8548 * lily/include/paper-system.hh (class Paper_system): remove
8549 staff_extents_ member.
8551 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8553 * lily/include/paper-system.hh (class Paper_system): remove
8554 number_ variable. Remove is_title_. Remove break_before_penalty_
8556 * lily/paper-book.cc (systems): use 'number property iso. number_
8559 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8560 remove ly:paper-system-number.
8562 * scm/lily-library.scm (paper-system-title?): new function.
8564 * lily/book.cc (process): bugfix: flip ?: cases.
8566 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8569 * ly/music-functions-init.ly: add outputProperty music function.
8571 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8573 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8575 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8577 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8579 * lily/paper-system.cc (internal_get_property): new function.
8581 * Documentation/user/global.itely (Vertical spacing): refer to
8584 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8587 * input/regression/page-spacing.ly: new file.
8589 * input/regression/page-top-space.ly: new file.
8591 * lily/spacing-spanner.cc: cmath -> math.h
8593 * lily/paper-system.cc (read_left_bound): new function. Read
8594 line-break-system-details from left bound to determine extents.
8596 * Documentation/user/programming-interface.itely (Using LilyPond
8597 syntax inside Scheme): change applyxxx -> applyXxx.
8599 * ly/music-functions-init.ly: add outputProperty music function.
8601 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8603 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8605 * python/convertrules.py (conv): rule
8607 * ly/music-functions-init.ly: applyxxx -> applyXxx
8609 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8612 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8614 * flower/include/real.hh: include <math.h> iso. <cmath>
8616 * flower/include/offset.hh: include real.hh
8618 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8620 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8621 fix example, now that 'interfaces is no longer directly available.
8623 * lily/book.cc (process): don't crash if paper == NULL.
8627 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8629 * scm/define-music-types.scm (music-descriptions): set length and
8630 start-callback for QuoteMusic
8632 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8634 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8635 arguments. Fixes compilation error with gcc 3.3.
8637 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8639 * VERSION: release 2.7.10
8641 * stepmake/stepmake/python-module-rules.make
8642 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8644 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8647 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8649 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8650 -Werror. Otherwise GCC barfs over various optimizations.
8652 * scm/define-grob-properties.scm (all-internal-grob-properties):
8653 add note-head property
8655 * Documentation/user/instrument-notation.itely (Laissez vibrer
8658 * input/regression/laissez-vibrer-ties.ly: new file.
8660 * lily/laissez-vibrer-engraver.cc: new file.
8662 * lily/include/tie-column-format.hh: new file.
8664 * lily/tie-column-format.cc: new file.
8666 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8668 * lily/laissez-vibrer-tie.cc: new file.
8670 * lily/include/laissez-vibrer-tie.hh: new file.
8672 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8674 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8676 * scm/define-grobs.scm (all-grob-descriptions): add
8677 LaissezVibrerTie, LaissezVibrerTieColumn
8679 * lily/tie-column.cc (set_tie_config_directions): new function
8680 (final_shape_adjustment): new function.
8681 (shift_small_ties): new function.
8683 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8685 * lily/include/tie.hh (struct Tie_details): add x_gap_
8686 (struct Tie_configuration): add head_position_
8688 * lily/tie-column.cc (set_chord_outline): new function.
8690 * mf/cmr.enc.in: remove file.
8692 2005-09-11 Graham Percival <gpermus@gmail.com>
8694 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8696 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8698 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8699 reduce aliasing effects.
8701 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8704 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8706 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8708 * flower/include/real.hh: std::fabs too.
8710 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8712 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8714 * lily, flower: Include C++ iso C headers. Import namespace std
8717 * lily/side-position-interface.cc:
8719 * lily/note-head.cc:
8720 * lily/include/includable-lexer.hh:
8721 * flower/include/string-data.icc: Remove using std::*.
8723 * lily, flower: Include C++ iso C headers. Import namespace std
8726 * lily/side-position-interface.cc:
8728 * lily/note-head.cc:
8729 * lily/include/includable-lexer.hh:
8730 * flower/include/string-data.icc: Remove using std::*.
8732 * Documentation/user/instrument-notation.itely (Entering lyrics):
8733 Multiple latin-1->utf-8 conversion fix.
8735 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8737 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8739 * lily/tie.cc (get_configuration): also avoid dots for non-space
8742 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8744 * Documentation/user/instrument-notation.itely: Bugfix.
8746 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8748 * tex/GNUmakefile: don't install texinfo.tex
8750 * tex/ : cleanup: remove unused files.
8752 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8754 * flower/include/real.hh: using std::{isnan,isinf}
8756 * VERSION (PATCH_LEVEL): release 2.7.9
8758 2005-09-05 Graham Percival <gpermus@gmail.com>
8760 * Documentation/user/ instrument-notation.itely,
8761 advanced-notation.itely: minor tweaks.
8763 * input/test/script-chart.ly: add item padding.
8765 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8767 * flower/offset.cc: use math.h iso. <cmath>
8769 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8772 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8773 (widen-left-stencil-edges): new function. Fix alignment problems
8774 with LaTeX includegraphics.
8776 * lily/text-interface.cc (interpret_markup): use abort().
8778 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8780 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8782 * lily/tie.cc (get_configuration): update bezier shape as we
8784 (get_configuration): don't move large ties if we're outside of the
8787 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8789 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8791 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8793 * .cvsignore: Add auto-generated configure files and then some.
8795 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8797 * scm/define-grobs.scm (DynamicLineSpanner): Add
8798 X-extent-callback. Fixes hairpin-slur collision.
8800 2005-08-31 Graham Percival <gpermus@gmail.com>
8802 * Documentation/user/advanced-notation.itely,
8803 basic-notation.itely: minor changes.
8805 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8807 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8808 \linebreak between each .eps file if \betweenLilyPondSystem is
8811 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8812 music): Document the \linebreak
8814 * Documentation/user/lilypond-book.itely,
8815 input/tutorial/lbook-latex-test.tex,
8816 Documentation/user/examples.itely: Remove \usepackage{graphics}
8818 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8820 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8822 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8825 * scripts/lilypond-book.py (PREAMBLE_LY): define
8826 inside-lilypond-book
8827 (modify_preamble): new function. Insert \RequirePackage{graphics}
8828 when no {graphics found in preamble.
8830 2005-08030 Graham Percival <gpermus@gmail.com>
8832 * Documentation/user/basic-notation.itely, global.itely,
8833 tutorial.itely: misc small changes.
8835 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8837 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8840 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8842 * lily/tie-column.cc (new_directions): put Tie down on center
8845 * lily/script-interface.cc (before_line_breaking): use
8846 Grob::programming_error
8848 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8850 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8853 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8855 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8857 2005-08-29 Werner Lemberg <wl@gnu.org>
8859 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8860 the `*.scale.pfa' files to avoid warnings.
8862 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8864 * lily/tempo-performer.cc (process_music): idem.
8866 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8868 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8870 * Documentation/user/advanced-notation.itely (Text markup): not a
8873 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8875 * lily/staff-performer.cc (initialize): add tempo/name to
8879 2005-08-26 Graham Percival <gpermus@gmail.com>
8881 * Documentation/user/advanced.itely: add text-only example.
8883 * Documentation/user/invoking.itely: add index entries for
8886 * Documentation/user/ tutorial.itely, basic-notation.itely:
8887 small fixes suggested by Steve D. Thanks!
8889 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8891 * input/regression/markup-bidi-pango.ly: new file.
8893 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8894 standard. Remove #ifdef. Remove memleak.
8895 (text_stencil): use text_dir to decide how to composite items.
8896 (text_stencil): determine uniform text direction for the entire
8899 * scripts/lilypond-book.py (output_name): remove
8900 latex_filter_cmd. Non-portable to non-Unix systems.
8901 (get_latex_textwidth): use File.write and os.unlink() instead.
8903 * THANKS: add Vicente & Trevor.
8905 * lily/grob.cc (discretionary_processing): look up origin for
8906 programming_error too.
8908 * input/regression/tie-broken.ly: new file.
8910 * lily/tie-column.cc (set_chord_outlines): set outline for line
8913 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8915 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8916 unscaled transform, just translate stencils.
8918 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8921 * scm/define-markup-commands.scm (wordwrap-string): use
8923 (wordwrap-stencils): idem.
8926 (wordwrap-stencils): translate last line to right for
8927 text-direction = LEFT.
8929 * scm/define-grob-properties.scm (all-user-grob-properties): add
8932 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8934 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8935 when copying a Lily_parser object.
8937 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8939 * scm/define-markup-commands.scm (null): add null markup.
8941 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8943 * lily/item.cc: Add documentation of center-invisible
8945 2005-08-24 Graham Percival <gpermus@gmail.com>
8947 * Documentation/user/advanced-notation.itely: add info about
8950 * Documentation/user/programming-interface.itely: fix example
8951 involving raised text.
8953 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8955 * lily/beam.cc (print): fix X start/end points of isolated
8958 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8960 * lily/multi-measure-rest.cc (set_text_rods): new function.
8962 * lily/vertical-align-engraver.cc (process_music): call
8963 Align_interface::set_axis(). This forces #'elements to be ordered,
8964 preventing random vertical reordering of staves.
8966 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8967 add avoid-slur property.
8969 * Documentation/user/basic-notation.itely (Measure repeats): add
8970 countPercentRepeats example.
8972 * Documentation/user/advanced-notation.itely (Other text markup
8973 issues): remove remark about normal-font. We have \normal-text
8975 * input/regression/tie-chord.ly: add note about remaining bugs.
8977 * lily/tie.cc (print): try Tie_column::set_directions () if
8978 control-points not yet defined.
8980 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8982 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8983 extent. This fixes braces falling out of the EPS bbox.
8985 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8988 2005-08-23 Graham Percival <gpermus@gmail.com>
8990 * {various} : change #up->#UP and #down->#DOWN.
8992 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8994 * Documentation/user/advanced-notation.itely: clarify
8995 what objects handles text on a multimeasure rest.
8997 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8999 * VERSION (PATCH_LEVEL): release 2.7.7
9001 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9003 * make/lilypond-vars.make: set -dgs-font-load for "make web"
9005 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
9007 * input/regression/*.ly: formatting clean-up. Default layout
9008 before music expression.
9010 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
9011 romanze28-2 example.
9013 * scm/ps-to-png.scm: remove dir-re function.
9014 (make-ps-images): generate page names, instead of globbing them.
9015 This brings down LilyPond memory usage for make web by a factor
9018 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
9019 don't use glob. With 3000 files, globbing
9020 Documentation/user/out-www/ can take too much time.
9022 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
9024 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
9026 * input/regression/tie-manual.ly: new file
9028 * input/regression/tie-chord.ly: update.
9030 * flower/include/interval.hh (struct Interval_t):
9032 * lily/tie.cc (distance): new function
9033 (height): new function.
9034 (init): new function
9035 (Tie_details): new struct.
9037 * lily/skyline.cc (skyline_height): new function.
9039 * lily/tie-column.cc (set_chord_outlines): new function.
9040 (new_directions): read tie-configuration
9042 * lily/skyline.cc: fix ASCII art.
9044 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
9046 * python/convertrules.py (string_or_scheme): Fix spelling error
9048 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
9050 * lily/tie-column.cc (set_directions): set directions only once.
9051 (add_configuration): new function.
9053 * lily/tie.cc (set_control_points): new function
9055 * lily/tie-column.cc (new_directions): new function.
9057 * ly/music-functions-init.ly: set 'pitch property
9058 iso. trill-pitch. This makes \relative work with \pitchedTrill
9060 * lily/tie.cc (get_configuration): new function. Don't generate
9061 control points, rather, generate configuration.
9062 remove head-pair property.
9064 * lily/include/tie.hh (struct Tie_configuration): new struct.
9066 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
9068 * Documentation/topdocs/NEWS.tely: clarify.
9070 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9072 * lily/tie.cc: remove minimum-length
9074 * scm/define-grob-properties.scm (all-user-grob-properties):
9075 remove staffline-clearance, y-offset
9077 * input/regression/tie-dots.ly (Module): remove.
9079 * lily/tie.cc (get_control_points): rewrite. Put short ties in
9080 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
9082 * input/regression/tie-single.ly: new file.
9084 2005-08-21 Graham Percival <gpermus@gmail.com>
9086 * ly/bagpipe.ly: fix compile problem.
9088 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
9090 * lily/midi-item.cc (name): new method.
9092 * lily/staff-performer.cc (acknowledge_audio_element): use
9093 signature of baseclass.
9095 * lily/engraver-group.cc (do_announces): move recursion call out
9098 * lily/drum-note-performer.cc (class Drum_note_performer): use
9099 process_music everywhere.
9101 * ly/performer-init.ly: add default children everywhere.
9103 * lily/paper-book.cc (output): call paper-book-write-midis
9104 directly: always write MIDI, even if no \layout {} block.
9106 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9108 * VERSION (PACKAGE_NAME): release 2.7.6
9110 * lily/percent-repeat-engraver.cc (try_music): don't print warning
9111 about not being able to handle repeat.
9113 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9115 * Documentation/user/examples.itely (Piano templates):
9116 * lily/include/performer-group.hh: Remove last traces of
9117 Performer_group_performer. Fixes make web.
9119 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9121 * Documentation/user/examples.itely (Piano templates): change
9122 Engraver_group_engraver -> Engraver_group
9124 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9125 scm_stand_in_procs is not weak_any.
9127 * lily/volta-bracket.cc (print): don't use strcmp().
9129 * lily/volta-engraver.cc (process_music): use
9130 Text_interface::is_markup() for setting the 'text property of the
9133 * input/mutopia/claop.py (accents): update syntax to 2.6
9135 * scm/define-context-properties.scm
9136 (all-user-translation-properties): add countPercentRepeats.
9138 * Documentation/user/basic-notation.itely (Measure repeats): add
9139 isolated percent example.
9141 2005-08-18 Graham Percival <gpermus@gmail.com>
9143 * input/ {various}: change direction #1, #-1 to
9144 #up/#down or \fooUp, \fooDown.
9146 * Documentation/user/music-glossary.tely: #-1 to #down.
9148 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9149 to #up, #-1 to #down.
9151 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9153 * lily/include/engraver-group.hh: rename.
9155 * lily/include/performer-group.hh: rename.
9157 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9159 * input/test/script-abbreviations.ly: Removed some old LaTeX
9162 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9164 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9165 Remove functions. Remove if 1: constructs, reindent.
9167 * scripts/convert-ly.py (add_version): Add functions from
9170 * scm/script.scm (default-script-alist):
9171 s/priority/script-priority. Fixes script stacking. Backportme.
9172 (Fermata): Very low priority.
9174 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9176 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9178 * input/regression/slur-script.ly: remove padding tweaks. Add
9181 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9182 time sigs and related stuff.
9184 * scm/define-grob-properties.scm (all-user-grob-properties): add