1 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3 * SConstruct (lilypondprefix): use sorted() for list_sort()
6 2006-10-26 Jan Nieuwenhuizen <janneke@gnu.org>
8 * flower/SConscript: Unit test rules.
10 * flower/test-std.cc: Compile fix.
12 2006-10-26 Han-Wen Nienhuys <hanwen@lilypond.org>
14 * python/midi.c (pymidi_parse_track): warning fixes.
16 * lily/dot-column.cc (struct Dot_position): initialize extremal_head_
19 2006-10-26 Graham Percival <gpermus@gmail.com>
21 * Documentation/user/ {basic-, global}: minor changes from mailist.
23 2006-10-26 Erlend Aasland <erlenda@gmail.com>
25 * scm/define-grobs.scm: trivial beautification
27 * lily/tie-performer.cc: no need to #include "pqueue.hh"
29 * lily/source-file.cc: put multibyte var inside #if clause
31 * scm/define-grob-interfaces.scm:
32 * scm/define-grob-properties.scm:
33 Build fix (string-fret-finger-combinations)
35 * Documentation/topdocs/INSTALL.texi: Remove obsolete info about
38 * Documentation/user/lilypond-book.itely: Build fix.
40 2006-10-26 Joe Neeman <joeneeman@gmail.com>
42 * lily/system.cc (get_paper_system):
43 * lily/paper-book.cc (systems):
44 move most of the backwards compatibility stuff into
47 * Documentation/topdocs/NEWS.tely: add 2 entries for the
50 * Documentation/user/page.itely: remove time-scaled-music
51 bug for the Page_turn_engraver
53 * lily/paper-book.cc (set_system_penalty): backwards
54 compatibility (breakbefore) for the old page breaker
56 2006-10-25 Graham Percival <gpermus@gmail.com>
58 * Diocumentation/user/instrument-notation.itely: added more
59 info about stanzas; thanks Geoff!
61 * Documentation/user/ {basic, advanced}: small fixes from
64 * THANKS: add some bug reporters.
66 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
68 * scm/define-context-properties.scm (all-user-translation-properties):
69 noteToFretFunction: Add.
71 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
72 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
74 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
76 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
79 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
80 Remove bashism in delete.
82 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
84 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
86 * scm/translation-functions.scm (determine-frets-mf): flatten let*
88 * scm/define-context-properties.scm
89 (all-user-translation-properties): add maximumFretStretch property.
91 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
93 * lily/source-file.cc (get_counts): use multibyte variable.
95 * scm/translation-functions.scm (determine-frets-mf): new
96 function: compute fret numbers.
98 * scm/output-lib.scm (string-frets->description) new function.
99 (fret-board::calc-stencil): new function
101 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
103 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
105 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
107 * lily/tab-note-heads-engraver.cc: cleanups.
109 * lily/fretboard-engraver.cc: new file
111 * ly/engraver-init.ly: add FretBoards context
113 2006-10-24 Joe Neeman <joeneeman@gmail.com>
115 * lily/grob.cc (pure_relative_y_coordinate)
116 (pure_height): use the new call_pure_function stuff
118 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
121 * lily/side-position-interface.cc (pure_y_aligned_side): add an
124 * lily/simple-closure.cc (ly_eval_simple_closure): make
125 simple-closure evaluatable from scheme
126 (evaluate_with_simple_closure): make simple-closures pure-
129 * lily/slur.cc (pure_outside_slur_callback): new function
131 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
132 fits in with previous changes that made the page forces much
135 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
136 and pure-Y-extent into this new function.
137 (pure-conversions-alist): add outside-slur-callback
139 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
141 * Documentation/user/advanced-notation.itely (Instrument names):
142 Remove obsolete bug workaround for instrument names on piano
145 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
147 * Documentation/user/lilypond-book.itely (Integrating DocBook and
148 music): patch by Bertalan Fodor for docbook.
150 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
151 of $(LILYPOND). Prevents lilypond run for .txt files.
153 * INSTALL.txt: gitness.
155 * .cvsignore: update to force gitness.
157 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
159 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
160 detect suicide in nested tuplets.
162 2006-10-23 Werner Lemberg <wl@gnu.org>
164 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
165 typo in argument to FT_Get_X11_Font_Format.
167 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
169 * stepmake/stepmake/po-vars.make: more gitness.
171 * flower/polynomial.cc (check_sol): no empty if bodies.
173 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
175 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
177 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
179 * Documentation/user/examples.itely (Transcription of mensural
180 music): Added more comments in .ly source. Suggest to remove
181 Forbid_line_break_engraver to allow line breaking at all bars.
183 * Documentation/user/instrument-notation.itely (Ancient
184 articulations): Updated @refbugs regarding episem.
186 * Documentation/user/instrument-notation.itely (Gregorian square
187 neumes ligatures): Added \augmentum dots. Updated @refbugs
188 regarding \augmentum.
190 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
192 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
195 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
198 * ly/gregorian-init.ly: Added \augmentum macro.
200 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
202 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
204 * lily/pango-font.cc (pango_item_string_stencil): use
205 FT_Get_X11_Font_Format()
207 2006-10-22 John Mandereau <john.mandereau@free.fr>
209 * po/fr.po: update translation.
211 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
213 * VERSION (PATCH_LEVEL): bump version
215 * input/regression/horizontal-bracket-break.ly: new file.
217 * scm/define-grobs.scm (all-grob-descriptions): calc
220 * lily/horizontal-bracket.cc (make_bracket): support
221 connect-to-neighbor. Fix #118
223 * VERSION: release 2.9.26-2
225 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
227 * VERSION (PACKAGE_NAME): release 2.9.26
229 * buildscripts/output-distance.py (test_basic_compare): add
231 (FileLink.multi_img_cell): new function, glob multi-page png
234 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
236 * po/lilypond.pot: update.
238 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
240 * Documentation/user/global.itely (File structure): remove
243 * lily/parser.yy (FIXME): remove ADDQUOTE
245 * Documentation/user/global.itely (Extracting fragments of
246 notation): new node, about clip systems.
248 * Documentation/user/lilypond-book.itely (Many quotes of a large
249 score): ref to clip systems.
251 * Documentation/user/instrument-notation.itely (Entering lyrics):
252 add note about lyric ties and required font.
254 * lily/open-type-font.cc (glyph_list): format errors.
256 * Documentation/user/programming-interface.itely (Scheme
257 procedures as properties): more doco on simple-closure and scheme
259 (Input variables and Scheme): use lilypond[verbatim], document
262 * Documentation/user/page.itely (Displaying spacing): use \book
263 explicitly, so arrows show .
264 (Line breaking): add note about Forbid_line_break_engraver
266 * Documentation/user/tweaks.itely (Common tweaks): also set length
267 to prevent tie squeezing.
268 (Default files): use @var{}
270 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
271 (Generating LilyPond files): add FOMUS.
273 2006-10-20 Joe Neeman <joeneeman@gmail.com>
275 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
276 Y-offset for TextScript and Script
278 * lily/text-engraver.cc (make_item):
279 * lily/script-engraver.cc (make_script_from_event):
280 remove call to Side_position_interface::set_axis since all scripts
281 now have this set by default
284 * lily/prob.cc: use variables
286 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
288 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
289 at typography, rather analyse stream event duration.
291 * Documentation/user/page.itely (Page formatting): set a6 paper
292 for system separator example.
294 * lily/arpeggio.cc (Module): idem.
296 * lily/accidental-placement.cc: add script-priority property.
298 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
300 * lily/ttf.cc (print_trailer): if all else fails: use
301 glyphIndexXXXX as glyph name. Fixes #117.
303 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
304 entry if cmap contains glyph.
305 (get_index_to_charcode_map): remove from Pango_font class, use
306 global filename -> font mapping.
307 (get_glyph_index_name): new function.
308 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
311 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
313 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
316 * scm/define-grob-properties.scm (all-user-grob-properties):
317 remove outdated doc. Fixes #116
319 * lily/completion-note-heads-engraver.cc (process_music): always
320 clone input events; otherwise we may overwrite input 'duration
321 property. Fixes #115.
323 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
326 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
329 * VERSION (PATCH_LEVEL): bump version.
331 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
333 * lily/engraver.cc (internal_make_grob): use variables.
335 * flower/string-convert.cc (dec2double): clean-up warnings.
337 * configure.in (CXXFLAGS): add -Werror.
339 * VERSION (PACKAGE_NAME): release 2.9.25
341 2006-10-18 Joe Neeman <joeneeman@gmail.com>
343 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
344 line even if we precede a forced break.
346 * lily/optimal-page-breaking.cc (try_page_spacing): square line
347 forces too. Make page-spacing weight default to 10 because the
348 changes to vertical springs decreased the page force/line force
349 proportions. Also, take the average of line force and page force
350 instead of just the sum.
352 * lily/constrained-breaking.cc (initialize): make the stiffness
353 of the vertical springs depend on the height of the system. This
354 prevents pages with only a few large systems from getting huge
357 * Documentation/user/page.itely (Page formatting): document the
358 change in default page-spacing-weight
360 * lily/include/constrained-breaking.hh: initialise bottom_padding_
362 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
364 * input/typography-demo.ly (melody): remove superfluous slur.
366 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
367 add piano-pedal-script-interface
369 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
371 * scripts/lilypond-book.py: DocBook support.
373 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
375 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
377 (stop_translation_timestep): set bound to currentMusicalColumn if
378 not set yet. Fixes #102
380 * lily/piano-pedal-bracket.cc: formatting.
382 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
384 * lily/piano-pedal-align-engraver.cc: new class
385 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
388 2006-10-18 Heikki Junes <hjunes@gmail.com>
390 * po/fi.po: Update Finnish translation (before the next release).
392 2006-10-17 Joe Neeman <joeneeman@gmail.com>
394 * lily/system.cc (get_paper_system): reinstate the backwards-
395 compatible page breaking for the old page breaker.
397 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
399 * lily/recording-group-engraver.cc: removed
401 * lily/context.cc, lily/translator-group.cc: Don't touch
402 Context::implementation_ if it's null
404 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
406 * scm/paper.scm: only use left-margin if defined.
408 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
410 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
412 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
413 strokeFingerOrientations
415 * lily/script-column.cc (row_before_line_breaking): also handle
416 accidentals and arpeggios in horizontal script stacking.
418 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
421 * input/regression/script-stack-horizontal.ly: trim.
423 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
425 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
428 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
429 'text if string argument.
431 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
433 * scm/define-context-properties.scm
434 (all-user-translation-properties): change to strokeFingerOrientations
436 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
438 * lily/parser.yy: remove debug output
440 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
442 * ly/paper-defaults.ly: set left/right margin.
444 * scm/paper.scm (set-paper-dimensions): use left-margin and
445 right-margin for computing linewidth.
447 * Documentation/topdocs/NEWS.tely (Top): idem.
449 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
452 * scm/define-markup-commands.scm (tied-lyric): increase negative
453 space: space syllables tighter.
455 * VERSION (PATCH_LEVEL): bump version.
457 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
460 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
462 * COPYING: further clarification
464 * VERSION: release 2.9.24
466 * input/regression/script-stack-horizontal.ly: add version.
468 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
470 * input/regression/lyric-tie.ly (texidoc): use different words.
472 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
474 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
476 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
477 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
479 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
481 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
483 * Doxyfile: remove file.
485 * scm/define-grob-interfaces.scm (string-finger-interface): add
486 string-finger-interface
488 * lily/general-scheme.cc (LY_DEFINE): move
489 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
491 * Documentation/topdocs/NEWS.tely (Top): add note for
492 string-finger feature.
494 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
497 * scm/output-lib.scm (string-finger::calc-text): read 'digit
500 * input/regression/script-stack-horizontal.ly: new file.
502 * ly/engraver-init.ly: add Script_row_engraver.
504 * lily/script-column.cc (order_grobs): refactor: separate axis
506 (row_before_line_breaking): new function.
508 * lily/script-row-engraver.cc (Script_row_engraver): new file.
510 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
512 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
514 * Documentation/user/instrument-notation.itely: Cleanup: Remove
515 annoying skip notes from mensural ligature example. Update
516 @refbugs for ligatures and mensural ligatures.
518 * lily/coherent-ligature-engraver.cc,
519 lily/include/coherent-ligature-engraver.hh,
520 lily/mensural-ligature-engraver.cc,
521 lily/vaticana-ligature-engraver.cc: Revise code for item
522 reparentizing. There should now be less programming_error
525 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
527 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
528 Maintenance bugfix: Don't create empty Stencil (), but empty box
529 instead. This fix should eliminate some programming_error
532 * ly/engraver-init.ly (MensuralStaff): Set default accidental
535 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
536 \layout block _before_ score.
538 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
540 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
542 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
544 2006-10-13 Erlend Aasland <erlenda@gmail.com>
546 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
548 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
550 * VERSION (PATCH_LEVEL): bump version.
552 * COPYING: clarify exception note.
554 * lily/main.cc: remove remark about "COPYING".
556 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
557 system-count starts at 0 for each clip-region. Change name to
558 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
559 layout block, per score.
561 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
563 * lily/input-smob.cc: add equal_p for Input
565 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
568 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
570 * lily/prob.cc: Add equal_p predicate for Prob
572 * lily/translator.cc: small cleanup
574 * scm/document-music.cc: use data from translator listener
575 registration to generate documentation for event classes
577 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
579 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
581 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
583 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
585 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
587 * Documentation/topdocs/INSTALL.texi: Thinko.
589 * .cvsignore: Update.
591 * lexer-gcc-3.1.sh: Remove.
593 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
594 Update anonymous cvs access. Remove comment about gcc 3.0.4.
596 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
598 * VERSION: release 2.9.23
600 * lily/paper-column-engraver.cc (stop_translation_timestep): also
603 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
605 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
607 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
609 * input/regression/clip-systems.ly (Notes): new file.
611 * scm/lily.scm (define-scheme-options): add clip-systems option.
613 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
615 (dump-stencil-as-EPS): move bbox calculation from previous
617 (output-framework): use -dclip-systems
619 * scm/lily-library.scm (filtered-map): new function
621 * scm/framework-ps.scm (clip-system-EPS): new function.
622 (clip-system-EPSes): new function.
624 * lily/paper-column.cc: add rhythmic-location to interface
626 * scm/define-grob-properties.scm (all-user-grob-properties): add
627 rhythmic-location property.
629 * scm/clip-region.scm: new file: rhythmic-location data type and
630 system-clipped-x-extent function.
632 * ly/init.ly: use (scm clip-region)
634 * lily/paper-column-engraver.cc (stop_translation_timestep): set
635 rhythmic-location for paper column grobs.
637 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
639 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
641 * ly/engraver-init.ly: Remove obsolete comment on
644 * Documentation/user/instrument-notation.itely: Tune Ancient
645 Articulations figure, such that the episem actually shows.
647 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
648 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
650 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
653 2006-10-12 Graham Percival <gpermus@gmail.com>
655 * Documentation/user/ {some}: minor edits that were lost somehow.
657 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
659 * VERSION (PACKAGE_NAME): bump version.
661 * input/regression/lyric-tie.ly (texidoc): new file.
663 * Documentation/topdocs/NEWS.tely (Top): add new feature.
665 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
667 * scm/define-markup-commands.scm (tied-lyric): new function: split
668 string along ~ and reattach with U+203F (tie character) and
671 * scm/output-lib.scm (lyric-text::calc-text): new function.
673 * lily/lyric-engraver.cc (process_music): don't set 'text.
675 * scm/output-lib.scm (string-finger::calc-text): new function
676 (lyric-text::print): new function.
678 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
679 generic for fingering & string number. Use for string-finger.
681 * scm/define-music-types.scm (music-descriptions): add
684 * lily/fingering-engraver.cc (listen_string_finger): new function
686 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
688 * scm/define-context-properties.scm
689 (all-user-translation-properties): add stringFingerOrientations
691 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
693 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
694 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
696 * lily/dots.cc: Added style property for dots.
698 * mf/parmesan-heads.mf: Fix typo in comment.
700 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
701 adding longa head to feta font and removing obsolete default
704 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
706 * scm/output-lib.scm (fingering::calc-text): use origin
707 event-property, not music-property.
709 * lily/lilypond.rc.in: spell my name correctly.
711 2006-10-10 Joe Neeman <joeneeman@gmail.com>
713 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
714 already have a non-empty extent. Fixes estimation for Hara-kiri
717 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
719 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
722 * lily/ligature-engraver.cc: Remove unused #include.
724 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
725 Bugfix: remove method check_for_prefix_loss(Item *) from global
726 namespace to avoid namespace pollution.
728 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
730 * VERSION: release 2.9.22
732 * ly/generate-documentation.ly: update option name.
734 * lily/dynamic-text-spanner.cc (print): revert fix.
736 * scm/define-grob-interfaces.scm
737 (trill-pitch-accidental-interface):
738 add trill-pitch-accidental-interface
740 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
741 dereference if it's really a duration.
743 * lily/figured-bass-engraver.cc (process_music): clear spanner if
744 useBassFigureExtenders is not set.
745 (listen_bass_figure): record as new event if
746 useBassFigureExtenders not set. Fixes #103.
748 * scm/stencil.scm (circle-stencil): don't center stencil argument,
749 instead: move circle. Fixes #107.
751 * scm/define-grobs.scm (all-grob-descriptions): set
752 allow-loose-spacing for PaperColumn and
753 NonMusicalPaperColumn. Kludge for #110.
755 * lily/spaceable-grob.cc: add allow-loose-spacing property.
757 * lily/spacing-determine-loose-columns.cc (is_loose_column):
758 allow-loose-spacing property.
760 * scm/define-markup-commands.scm (postscript): gsave & grestore
761 around embedded PS. Do setlinewidth too. Fixes #109.
763 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
765 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
766 code. This patch fixes ligature brackets that were not at all
769 2006-10-08 Graham Percival <gpermus@gmail.com>
771 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
773 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
775 * scm/define-context-properties.scm: clarified docs (bug 91).
777 * Documentation/user/basic-notation.itely: document volta brackets
778 not aligning (bug 63).
780 * Documentation/user/ global.itely invoking.itely: ignore or
781 add warnings about texstr.
783 2006-10-08 John Mandereau <john.mandereau@free.fr>
785 * po/fr.po: update translation.
787 * po/: update msgids.
789 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
791 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
793 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
795 * Documentation/user/page.itely (Two-pass vertical spacing): add
796 documentation for two-pass spacing technique.
798 2006-10-06 Graham Percival <gpermus@gmail.com>
800 * Documentation/user/convert-ly.txt: new file; new
801 storage place for this file (moved from bugs/ CVS).
803 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
805 * lily/note-head.cc: Fixed programming_error message.
807 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
809 * scm/define-grobs.scm (pure-conversion): move pure-callback
812 * scm/script.scm (default-script-alist): set avoid-slur for turn,
813 marcato, stopped, thumb.
815 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
817 * lily/completion-note-heads-engraver.cc (process_music): don't
818 skimp on memory usage.
820 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
823 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
824 parenthesis item. This fixes premature Y-extent triggering. Fixes
827 * VERSION (PATCH_LEVEL): bump version.
829 2006-10-04 Graham Percival <gpermus@gmail.com>
831 * Documentation/user/advanced-notation.itely: added
832 info about instrument names for piano or other contexts,
835 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
837 * mf/feta-bolletjes.mf (solfa_quarter_width): use
838 solfa_base_notewidth as unit for non-DO-notes too.
840 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
842 * VERSION: release 2.9.21
844 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
847 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
849 * python/lilylib.py (progress): Minor fix.
851 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
853 * lily/note-name-engraver.cc: doc engraver.
855 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
857 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
859 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
862 * lily/stem-engraver.cc (make_stem): don't set duration-log
864 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
865 write snippet-names binary.
867 * python/lilylib.py (system): use os.system for mingw32
869 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
872 * scm/backend-library.scm: update email address.
874 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
877 * scm/define-grobs.scm (all-grob-descriptions): use callback to
880 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
881 handle dot creation separately.
883 * lily/tab-note-heads-engraver.cc (process_music): idem.
885 * lily/drum-note-engraver.cc (process_music): idem.
887 * lily/note-heads-engraver.cc (process_music): idem.
889 * lily/rest-engraver.cc: don't set duration-log.
891 * scm/output-lib.scm (string-number::calc-text): new function.
892 (note-head::calc-duration-log): new function.
894 * lily/fingering-engraver.cc (make_script): remove 'text setting.
896 * scm/output-lib.scm (fingering::calc-text): new function.
898 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
900 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
901 and include-eps-font -> include-eps-fonts
903 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
905 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
907 * lily/timing-translator.cc: list properties.
908 (start_translation_timestep): update internalBarNumber too.
910 * scm/define-context-properties.scm
911 (all-user-translation-properties): add internalBarNumber.
913 * input/regression/spacing-no-note.ly: new file.
915 * buildscripts/output-distance.py (link_file): verbosity for OSError.
917 * lily/book.cc: #include cleanup.
919 * lily/include/lily-guile-macros.hh: add assert to
920 scm_or_str2symbol(SCM).
922 * VERSION (PATCH_LEVEL): bump version.
924 * lily/spacing-spanner.cc (musical_column_spacing): handle
925 musical->nonmusical spacing case, where there is no spacing
926 wish. Fixes issue #61.
928 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
929 (pango_item_string_stencil): use logical rect horizontally (to
930 preserve spaces), ink_rect vertically (for time signatures).
932 * lily/font-metric.cc (word_stencil): new interface function
934 * input/regression/utf-8-mixed-text.ly: new file.
936 * lily/percent-repeat-engraver.cc (listen_percent): remove
939 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
940 non-dynamic scripts. Fixes #30.
942 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
944 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
946 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
947 SCM_UNDEFINED for non-existent data.
949 * lily/side-position-interface.cc (general_side_position): allow
950 optional current_offset argument for chaining, so combinations of side-position
951 and outside slur callback don't add up. Fixes issue #92.
953 * lily/pango-font.cc (pango_item_string_stencil): use
954 logical_rect. This prevents spaces after words from disappearing,
957 * VERSION: release 2.9.20
959 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
961 * scm/define-grob-properties.scm (all-user-grob-properties):
962 mention stencil as user settable.
964 2006-10-02 Joe Neeman <joeneeman@gmail.com>
966 * Documentation/user/page.itely (Page formatting):
967 document auto-first-page-number
969 * lily/page-breaking.cc (find_chunks_and_breaks):
970 * lily/paper-score.cc (calc_breaking): Follow changes to the
971 Constrained_breaking interface
973 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
974 here backwards, as an optimisation
975 (initialize): new function; move most of the code in resize () here
976 (combine_demerits): cache ragged_right_
977 (Constrained_breaking): constructor now takes the Paper_score
979 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
981 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
982 avoid parser lookahead for 0-ary functions.
984 * lily/translator.cc: Extract event classes from
985 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
987 2006-10-02 Heikki Junes <hjunes@gmail.com>
989 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
992 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
994 * scm/layout-page-layout.scm (page-breaking-wrapper): new
995 function. Call the page breaking function selected in the
996 `page-breaking' \paper variable, then the post processing function
997 chosen using the `page-post-process' \paper variable.
998 (line-height): new function. Return the height of a system.
999 (line-minimum-position-on-page): new function. Return the position
1000 of a system on page (using the previous line position), only
1001 considering between system padding.
1002 (stretchable-line?): new function. Says whether a line can be
1003 stretched (ie. is not a title nor a single staff system).
1004 (page-maximum-space-left): new function. Computes space left on a
1005 page, when all systems are separated by their padding.
1007 * lily/page-breaking.cc (breaking::make_pages): Move page post
1008 processing function call to page breaking wrapper (common to all
1011 * lily/paper-book.cc (book::pages): call the page breaking
1012 wrapper, instead of the page breaker directly
1014 * ly/paper-defaults.ly: Add \paper variables for page breaking
1015 wrapper and page post processing function. Make
1016 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1017 `system-maximum-stretch-procedure' variable for holding a function
1018 computing the maximum stretch a system allows.
1020 * scm/layout-page-dump.scm (write-page-breaks): computes the
1021 stretch to apply to systems on a page to minimize left
1022 space. Dump this stretch length.
1024 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1025 the system-stretch property of the tweak data to stretch the
1027 (includePageLayoutFile): Void function which includes the
1028 generated page-layout file if it exists and if the page layout
1029 dumping is not asked.
1030 (scoreTweak): if the score tweak named by the argument exists,
1033 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1035 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1036 handle correctly the case where there are multiple \noPageBreaks
1039 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1041 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1043 * abc2ly.py fix so that entering " -- " will translate to a -- in
1044 the lilypond instead of a " - - "
1046 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1048 * lily/align-interface.cc: fix typo
1050 * lily/dynamic-text-spanner.cc (print): Add a special case for
1051 trill spanner right sides.
1053 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1055 * lily/align-interface.cc (get_extents_aligned_translates): add
1056 support for padding variable.
1058 * lily/break-align-interface.cc (self_align_callback): oops: use
1059 loop variable in guard.
1061 * input/regression/repeat-percent-grace.ly: new file.
1063 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1064 remember first currentCommandColumn of a grace run. Fixes issue 70.
1066 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1067 move class definition to CC file.
1069 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1071 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1072 measure-long repeats.
1074 * flower/include/international.hh: include stdarg.h
1076 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1078 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1079 put_systems_on_pages to return an empty result, we need to assign
1080 demerits properly in that case.
1081 (put_systems_on_pages): Make the number of pages depend on the
1082 evenness of page_number. Add auto-first-page-number.
1083 (calc_subproblem): ensure that the page-number is even for the
1084 left-hand page. Warn if the first page-turn doesn't fit onto the
1085 first (right-hand) page.
1087 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1088 (min_page_count): make this publicly accessible
1089 (min_page_count): fix a bug when there are forced page breaks that
1090 was introduced when I made this loop run backwards
1091 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1092 replace space_systems_on_min_pages with these two. The logic in
1093 space_systems_on_min_pages was getting too convoluted and is better
1094 contained in page-turn-page-breaking.
1096 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1098 (breakable_column): typo
1100 * lily/source-file.cc (get_line): fix off-by-one error
1101 and clean up some of the logic
1103 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1105 * lily/page-breaking.cc (make_pages): honour the first-page-number
1108 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1110 * VERSION (PACKAGE_NAME): bump version.
1112 2006-09-26 Pal Benko <benko.pal@gmail.com>
1114 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1115 (the latter is the same as petrucci-f which is kept for compatibility)
1117 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1119 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1121 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1123 * lily/global-context.cc (run_iterator_on_me): break out of loop
1124 if moment doesn't increase.
1126 * scm/define-grob-properties.scm (all-user-grob-properties): add
1129 * lily/accidental.cc (after_line_breaking): read forced property.
1131 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1134 * input/regression/accidental-forced-tie.ly: new file.
1136 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1138 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1140 * lily/figured-bass-engraver.cc: only listen to rest events if
1141 ignoreFiguredBassRest is not set.
1143 * scm/define-context-properties.scm
1144 (all-user-translation-properties): add ignoreFiguredBassRest property
1146 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1148 * lily/paper-book.cc (get_system_specs):
1149 (set_system_penalty): fix breakbefore.
1150 We used to set a penalty on the system after the break, now we
1151 set a permission on the system before the break
1153 * lily/grob-property.cc: add scm debugging hooks into
1154 property modification
1156 * lily/context-property.cc:
1158 rename make_foo_from_properties to internal_make_foo and
1159 move it from context-property.cc to a member function of
1162 * lily/include/lily-guile-macros.hh:
1163 overload ly_symbol2scm macro so that there is no more need
1166 * lily/volta-repeat-iterator.cc:
1167 * lily/tweak-engraver.cc:
1168 * lily/tuplet-bracket.cc:
1169 * lily/span-bar-engraver.cc:
1170 * lily/script-engraver.cc:
1171 * lily/prob-scheme.cc:
1172 * lily/pointer-group-interface.cc:
1174 * lily/grob-scheme.cc:
1175 * lily/grob-property.cc:
1177 * lily/context-property.cc:
1178 * lily/break-substitution.cc:
1179 * lily/break-align-engraver.cc:
1180 * lily/axis-group-interface.cc:
1181 * lily/align-interface.cc:
1182 remove calls to internal_FOO
1184 * lily/system-start-delimiter-engraver.cc:
1185 * lily/parenthesis-engraver.cc:
1186 * lily/accidental-engraver.cc:
1187 remove calls to make_foo_from_properties
1189 2006-09-23 Graham Percival <gpermus@gmail.com>
1191 * Documentation/user/programming-iterfaces.itely: fix
1192 def-music-function -> define-music... leftover.
1194 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1196 * lily/page-spacing.cc (min_page_count): by running the loop
1197 backwards, we can calculate ragged_last properly.
1199 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1201 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1202 printfirst-page-number -> print-first-page-number
1204 * python/convertrules.py: corresponding rule.
1206 * Documentation/user/page.itely (Page formatting): Document the
1207 default values of all page layout parameters.
1209 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1211 * lily/lexer.ll: remove limitation on music function arity. New
1212 mode extratoken, which inserts extra EXPECT_* tokens after
1213 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1215 * lily/parser.yy: Change grammar for music function accordingly.
1217 * lily/include/lily-parser.hh: New method get_state, new member
1218 hidden_state. Works around a problem when parser fetches
1219 MUSIC_FUNCTION token but not the following EXPECT_* token.
1221 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1224 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1225 references to Music; use ASSIGN_EVENT_ONCE everywhere
1227 * lily/grob-info.cc: junk *music_cause
1229 * lily/music.cc: copy eventified articulations to stream event
1231 * lily/part-combine-iterator.cc: Cleanup using enums
1233 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1236 * lily/include/engraver.hh: Junk music.hh include
1238 * lily/stream-event.cc: Changed constructors
1240 2006-09-21 Graham Percival <gpermus@gmail.com>
1242 * Documentation/user/tweaks.itely (Fitting music onto fewer
1243 pages): change settings to avoid warning messages.
1245 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1247 * Documentation/user/tweaks.itely (Fitting music onto fewer
1248 pages): Add between-system-space setting.
1250 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1252 * lily/accidental-placement.cc (calc_positioning_done): don't
1253 trigger Y-extent calculation too early. Use pure_height instead.
1255 * lily/scale.cc (LY_DEFINE): new file.
1257 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1259 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1260 that happen at the start of a score: having a zero-length
1261 chunk was messing up min_system_count calculations.
1263 * lily/source-file.cc (get_line): lower_bound, not
1264 binary_search. Fixes problem where point-and-click would
1265 always point to the first line.
1267 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1269 * lily/accidental-placement.cc (calc_positioning_done): also put
1270 stems into accidental support.
1272 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1275 * scm/script.scm (default-script-alist): avoid-slur and
1276 slur-padding for portato script.
1278 * lily/stem-tremolo.cc (translated_stencil): new function.
1279 (height): use new function. Fixes tremolos on whole notes.
1281 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1284 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1286 * scripts/abc2ly.py (try_parse_comment): idem.
1288 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1289 bar_string iso. string.find()
1293 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1296 2006-09-18 Graham Percival <gpermus@gmail.com>
1298 * Documentation/user/basic-notation.itely: add bug
1299 warning about ties and octavation/clef.
1301 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1303 * VERSION (PACKAGE_NAME): release 2.9.18
1305 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1307 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1308 figure out midi file names right here.
1310 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1312 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1314 * scm/backend-library.scm: option naming: gs-font-load*s*
1316 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1319 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1321 * scm/define-music-types.scm (music-descriptions): remove
1322 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1323 Music::to_event doesn't complain.
1325 * lily/accidental-placement.cc (ape_compare):
1326 * lily/semi-tie.cc (compare):
1327 * lily/note-column.cc (shift_compare): replace by XXX_less
1329 * lily/tie-formatting-problem.cc (set_chord_outline):
1330 * lily/tie-column.cc (calc_positioning_done):
1331 * lily/system.cc (post_processing)
1333 * lily/stem.cc (note_head_positions)
1334 (calc_positioning_done):
1335 * lily/spanner.cc (do_break_processing)
1336 (find_broken_piece):
1337 * lily/span-bar.cc (print):
1338 * lily/semi-tie-column.cc (calc_positioning_done):
1339 * lily/rest-collision.cc (calc_positioning_done):
1340 * lily/program-option.cc (get_help_string):
1341 * lily/note-collision.cc (get_clash_groups):
1342 * lily/new-fingering-engraver.cc (position_scripts):
1343 * lily/keyword.cc (Keyword_table):
1344 * lily/hara-kiri-group-spanner.cc (request_suicide):
1345 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1346 * lily/accidental-placement.cc (calc_positioning_done):
1348 * lily/beam.cc (get_beam_segments):
1349 * lily/grob-array.cc (remove_duplicates):
1352 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1353 ragged-last-bottom = ##f (test the new page breaker)
1355 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1357 * scm/define-context-properties.scm
1358 (all-internal-translation-properties): remove properties that
1359 were used to communicate page-turn stuff to the paper-column
1362 * lily/lily-guile.cc (robust_scm2string): new function
1364 * lily/paper-column-engraver.cc: Clean up page turn stuff
1366 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1367 instead of cluttering up paper-column-engraver.cc
1369 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1371 * scm/layout-page-dump.scm (scm): export utility function names,
1372 to allow user writing cutsom dumping functions.
1374 * scm/layout-page-layout.scm: export utility function names to
1375 enable custom page breaking function writing. Tabify.
1376 (line-next-space): use ?-suffix only for predicates
1377 (page-maximum-space-to-fill): new function. Return the space
1378 between first and bottom system of a page, to give to
1380 (space-systems): use a space-to-fill argument (for instance as
1381 computed by page-maximum-space-to-fill) instead of computing
1382 internaly this space with the page height. That way, the caller
1383 can adjust the space to use.
1384 (make-page-from-systems, walk-paths): compute space to fill before
1385 calling space-systems.
1387 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1389 * scm/script.scm (default-script-alist): set paddings for every
1390 type here, increase for portato mark.
1392 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1395 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1397 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1398 use spanner::set-spacing-rods
1400 * lily/note-column.cc: reformat.
1402 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1403 step positioning for note/rest combinations.
1405 * input/regression/rest-note-collision.ly: new file.
1407 * scm/define-grobs.scm (all-grob-descriptions): add
1410 * flower/include/std-vector.hh: switch off again.
1412 * VERSION (PATCH_LEVEL): bump to 2.9.18
1414 * flower/include/std-string.hh: idem.
1416 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1418 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1420 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1423 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1425 * Documentation/user/page.itely: update page breaking documentation
1427 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1429 * lily/note-collision.cc (calc_positioning_done): only access
1430 first head if available.
1432 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1434 * scm/framework-ps.scm (output-preview-framework): use new name.
1436 * lily/program-option.cc (internal_set_option): use new names.
1438 * Documentation/user/SConscript (lilypond_book_flags): update -d
1441 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1442 output into other programs): new variable names.
1444 * scm/lily.scm (define-scheme-options): uniformize var names.
1446 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1447 tuplets_ is non-empty before popping.
1449 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1451 * lily/spanner.cc (find_broken_piece):
1452 * lily/spacing-spanner.cc (get_columns):
1453 * lily/source-file.cc (get_line):
1454 * lily/simple-spacer.cc (get_column_description):
1455 * lily/keyword.cc (lookup):
1456 use the new binary search.
1458 * flower/include/std-vector.hh: replace binary_search with
1459 a more STL-like version
1461 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1463 * lily/tie-performer.cc: remove unused last_event_ property.
1464 (class Tie_performer): add now_tied_heads_ property for
1465 partially-tied heads.
1466 (acknowledge_audio_element): when adding an Audio_note, put the
1467 note in now_tied_heads_ if the audio note is partially tied.
1468 (stop_translation_timestep): always include entries in
1469 now_tied_heads_ in heads_to_tie_.
1471 * lily/drum-note-performer.cc (process_music): look for tie-events
1472 in the articulations; pass to Audio_note constructor.
1474 * lily/note-performer.cc (process_music): look for tie-events in
1475 the articulations; pass to Audio_note constructor.
1477 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1480 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1481 include initializer in constructor.
1483 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1485 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1486 unless they are breakable. This fixes discrepancies between the forces
1487 calculated here and the forces calculated in get_line_configuration.
1489 * lily/grob.cc (pure_relative_y_coordinate): fix some
1490 mis-estimation that was happening with piano staves.
1492 * lily/constrained-breaking.cc (resize): don't choke if we get a
1493 measure that won't fit on a line.
1494 (combine_demerits): don't consider uniformity when ragged
1496 * lily/page-spacing.cc (solve): why the f* were there two of these?
1497 (calc_subproblem): properly handle the case where a system is taller
1500 * lily/system.cc (get_paper_system): ensure that all the permissions
1501 and penalties are passed to the paper systems.
1503 * lily/page-breaking.cc (create_system_list): support system-count.
1505 * scm/define-grobs.scm (pure-print-callbacks): add
1506 ly:script-interface::print
1508 * lily/page-spacing.cc (min_page_count): fix calculation of min
1509 pages if we are ragged and there are non-zero springs.
1511 * scm/layout-page-layout.scm: if the pure-height estimates are under
1512 the real height, allow space-systems to ignore padding if it is
1513 needed in order to fit the systems on one page
1515 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1517 (solve): fix performance problem. Make sure we always get at least
1520 * lily/page-breaking.cc (make_pages): include write-page-breaks
1523 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1525 * scm/define-grobs.scm: add the new slur-callback
1526 fix pure-relevant to not exclude grobs whose extent is already
1529 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1532 * lily/slur.cc (pure_height): new callback to estimate the height
1535 2006-09-02 Graham Percival <gpermus@gmail.com>
1537 * Documentation/user/invoking.itely: small update on
1538 MacOS X notes; thanks Trevor!
1540 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1542 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1544 * lily/lexer.ll: accept EOF in all states.
1546 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1548 * lily/source-file.cc (Source_file): always 0-terminate character
1549 array, to prevent Flex from barfing.
1551 * lily/global-context.cc (get_output): robustness: don't crash if
1552 no Score context found.
1554 * lily/include/book.hh (class Book): idem.
1556 * lily/include/context-def.hh (struct Context_def): idem.
1558 * lily/include/score.hh (class Score): don't derive from Input.
1560 * lily/book.cc (Book): add a copy ctor.
1562 * buildscripts/output-distance.py (FileLink.calc_distance): count
1563 orphans in distance too.
1565 * python/midi.c (midi_parse_track): robustness: don't read past
1568 * ly/performer-init.ly: add Control_track_performer, move
1569 Tempo_performer and Time_signature_performer to Score.
1571 * lily/score-performer.cc (acknowledge_audio_elements): override
1572 from base class: add to audio-columns
1574 * lily/control-track-performer.cc (add_text): new file: generate
1577 * lily/performance.cc: move output_header_track to
1578 Control_track_performer ()
1580 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1582 * lily/include/midi-item.hh (class Midi_channel_item): insert
1583 class into hierarchy, for items that can have a channel setting. Dehungarify.
1585 * lily/include/performer.hh (class Performer): remove
1586 play_element(); move functionality into announce/acknowledge.
1588 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1590 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1591 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1593 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1595 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1598 * lily/all-font-metrics.cc: remove TFM support.
1600 * lily/include/tfm.hh: remove TFM support, TFM reader.
1602 * lily/include/binary-source-file.hh: remove Binary_source_file.
1604 2006-08-27 Graham Percival <gpermus@gmail.com>
1606 * Documentation/topdocs/NEWS.itely: add @c marker for
1607 stuff I've processed.
1609 * Documentation/user/ various: info from NEWS.
1611 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1613 * lily/paper-column-engraver.cc (finalize): Oops, this change
1614 should have gone in on 2006-08-23
1616 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1618 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1619 quotes to quote arguments. Fixes Windows problem.
1621 * python/lilylib.py (progress): idem
1623 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1625 * scripts/musicxml2ly.py: fix for importing
1626 minor key signatures from MusicXML. (Phillip Kirlin)
1628 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1630 * python/musicxml.py:
1631 (Attributes.get_key_signature): now correctly retrieves mode from
1634 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1636 * lily/parser.yy (output_def_body): take ownership of identifier
1639 * Documentation/user/advanced-notation.itely (Metronome marks):
1640 update use of \tempo in \midi.
1642 * VERSION: release 2.9.16
1644 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1646 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1649 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1651 * input/regression/tie-chord-partial.ly: clarify example.
1653 * scm/define-music-properties.scm (all-music-properties): remove
1656 * ly/music-functions-init.ly: remove \untied.
1658 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1659 stream events and music events.
1660 (stop_translation_timestep): search acknowledged heads for
1663 * input/regression/tie-chord-partial.ly: new file.
1665 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1666 for \char markup command.
1668 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1670 * scm/define-music-types.scm (music-descriptions): consistency:
1671 Use solo-{one,two}-event iso. solo-[12]-event.
1673 * lily/part-combine-engraver.cc (process_music):
1674 Use solo-{one,two}-event iso. solo-[12]-event.
1676 * ly/declarations-init.ly (partCombineListener): add Timing as
1679 * flower/std-string.cc (string_copy): use copy ()
1681 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1683 2006-08-24 Graham Percival <gpermus@gmail.com>
1685 * Documentation/user/changing-defaults.itely, global.itely,
1686 lilypond-book.itely, page.itely: minor changes from mailist.
1688 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1690 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1693 * scm/define-context-properties.scm
1694 (translator-property-description): robustness: detect type errors
1695 in property definitions.
1697 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1698 after getting it from SCM.
1700 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1703 * lily/include/performer.hh (class Performer): strip get_tempo()
1706 * lily/midi-def.cc: strip file.
1708 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1710 * lily/include/context-def.hh (struct Context_def): use
1711 VIRTUAL_COPY_CONSTRUCTOR().
1713 * lily/source-file.cc: smobification.
1715 * lily/include/source-file.hh (class Source_file): smobify
1716 Source_file. Trim redundant members.
1718 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1719 clones after creation. This plugs a huge memory leak.
1721 * python/convertrules.py (FatalConversionError.sub_tempo):
1722 complete rule for \midi{ \tempo }
1724 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1726 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1728 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1730 * input/regression/optimal-page-breaking-hstretch.ly: test for
1731 ragged-last-bottom also
1733 * lily/paper-column-engraver.cc (finalize): make the end of a score
1734 breakable by default. This is to balance out a change in behaviour
1735 of the page-turn-breaker which no longer makes the end of a score
1738 * lily/paper-book.cc (pages): set the systems_ once the pages are
1741 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1742 Page_breaking interface.
1744 * lily/page-breaking.cc (class Page_breaking): make the interface
1745 more consistent and provide abstractions for dealing with
1748 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1749 algorithm. Use the new interface to Page_breaking.
1751 * lily/page-spacing.cc: better support for ragged-bottom and
1754 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1756 * python/convertrules.py (conv): warning on \tempo{}
1758 * ly/performer-init.ly: set tempoWholesPerMinute.
1760 * ly/midi-init.ly: remove \midi
1762 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1765 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1766 tempoUnitDuration for determining what to print.
1768 * lily/lyric-extender.cc: typo.
1770 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1772 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1775 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1777 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1778 eps-pad-boxes is set.
1780 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1782 * THANKS: update sponsors.
1784 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1786 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1788 * input/regression/tie-chord-untied.ly: new file.
1790 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1792 * scm/define-music-properties.scm (all-music-properties): add
1795 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1797 (headertext_nopics): sanitize no-examples text.
1799 * scm/page.scm (make-page-stencil): don't rely on extents of
1800 page-stencil. This fixes spurious space around .EPS files produced
1801 with the EPS backend.
1803 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1805 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1807 * lily/hara-kiri-engraver.cc (process_music): remember
1808 keepAliveInterfaces after processing \set
1810 * lily/lyric-extender.cc (print): support left/right-padding for
1813 * scm/documentation-generate.scm (string-append): revert lilypond/
1816 2006-08-20 Graham Percival <gpermus@gmail.com>
1818 * Documentation/user/lilypond.tely: clarification to
1819 license presentation (not to actual license).
1821 * Documentation/user/basic-notation.itely,
1822 instrument-notation.itely: minor changes.
1824 * input/ {regression, test}/+.ly: clarification to
1825 text (you can click on examples). Thanks, Mats!
1827 * input/manual/bar-lines.ly: adds ||: repeats.
1829 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1831 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1833 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1835 * Documentation/user/lilypond.tely: strip lilypond/ from info
1836 links, rename to category LilyPond
1838 * lily/pango-font.cc (description_string): new function.
1840 * VERSION: release 2.9.15
1842 * lily/spacing-engraver.cc (stop_translation_timestep): use
1843 Dscho's fix for spacing spanner.
1845 * scm/define-music-types.scm (music-descriptions): use
1846 apply-output-event for ApplyOutputEvent
1848 * lily/output-property-engraver.cc (listen_apply_output): rename
1849 from listen_layout_instruction.
1851 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1854 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1856 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1857 commandline args with contains, split by \n.
1859 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1860 write snippet-names file, call with -dread-file-list. Fixes
1861 command limitations on 64-bit systems.
1863 * input/regression/stencil-color-rotation.ly: new file.
1865 * lily/include/translator.hh (struct Acknowledge_information):
1866 revert: don't use Protected_scm in global objects, as GUILE can't
1867 handle gc_unprotect from automated destructors on MacOS X.
1869 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1870 color, not the original stencil. Fixes combinations of
1871 color/transparency/rotation.
1873 * scripts/lilypond-book.py (main): add --formats=eps for
1876 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1877 crash if spacing_ is nonexistent.
1879 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1881 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1882 \catcode`\@=12 in the LaTeX output.
1884 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1886 * scm/define-music-types.scm (music-descriptions):
1887 use sustain-event iso. sustain-pedal-event.
1889 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1891 * scripts/convert-ly.py: honour the -n command-line switch
1893 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1895 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1896 break specification.
1898 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1900 * Documentation/user: convert-ly the user manual
1902 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1904 * stepmake/aclocal.m4: version check patch (thanks MWD)
1906 * ly/music-functions-init.ly: robustness. Don't crash if
1907 currentBarNumber is not a number.
1909 * VERSION (PATCH_LEVEL): bump.
1911 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1913 * stepmake/aclocal.m4: better version check; handle fooX.Y
1916 * ly/performer-init.ly: instrument name fixup.
1918 * input/manual/chord-names-jazz.ly (banterProperties):
1919 instrumentName update
1921 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1923 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1925 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1926 function. Use hash tables to check membership.
1928 * lily/general-scheme.cc (LY_DEFINE): new function.
1930 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1932 * lily/include/translator.hh (struct Acknowledge_information): add
1935 * ly/music-functions-init.ly: change name to BreathingEvent
1937 * input/regression/*.ly: apply it.
1939 * python/convertrules.py (conv): better instrumentName conversion
1942 * scm/define-music-types.scm (music-descriptions): add
1943 line-break-event to LineBreakEvent music
1945 * lily/music.cc (to_event): don't crash if music type not set.
1947 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1950 * lily/spacing-engraver.cc (stop_translation_timestep): set
1951 spacing for proportional notation too.
1953 * scm/translation-functions.scm (format-bass-figure): inspect
1956 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1958 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1960 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1962 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1964 * scm/layout-page-layout.scm (make-page-from-systems): new function
1965 (optimal-page-breaks): use the new page-breaking calling convention
1967 * scm/define-context-properties.scm (all-user-translation-properties):
1970 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1971 revokePageTurns functionality. If there is a special barline within
1972 the breakable region, break there instead of at the end of the region.
1974 * lily/paper-book.cc (pages): use the new page-breaking calling
1977 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1979 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1981 * scripts/lilypond-book.py: insert \sourcefileline command in
1982 output, so lilypond error messages refer to the spot in the
1983 original .lytex / .itely sourcefile.
1985 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1987 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1988 space to next column for distance to fixed col.
1990 * VERSION (PACKAGE_NAME): release 2.9.14
1992 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1995 * lily/accidental-engraver.cc (process_acknowledged): don't create
1996 accidental for trill span event. This fixes spurious accidentals
1999 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
2001 * scm/define-grob-properties.scm (all-user-grob-properties):
2002 Clarify documentation of side-axis and direction. Thanks to Paul
2003 for the inspiration.
2005 * lily/bar-line.cc: Add documentation for "||:" also in the
2006 interface documentation.
2008 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2010 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2012 * lily/paper-column.cc (set_system): new function.
2014 * lily/spacing-engraver.cc (stop_translation_timestep): store
2015 SpacingSpanner refs in Paper_column.
2017 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2018 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2020 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2022 * lily/beam-engraver.cc (listen_beam): add method for
2023 Grace_beam_engraver too.
2025 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2027 * python/convertrules.py: Fix indentation bug that broke
2028 conversion of files older than 1.3.117.
2029 Fix escape error in the description for 2.9.6.
2031 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2033 * lily/*-engraver.cc: convert all try_music functions to listen_*
2036 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2037 enums to represent pedal types, and calculate more data statically.
2039 * scm/part-combiner.scm (recording-group-emulate): create a
2040 softcoded substitute for recording-group-engraver.cc.
2042 * lily/music.cc: make a common transpose function for events and
2045 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2046 ManualMelismaEvent, and obsoletes Melisma_translator.
2048 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2050 * input/test/instrument-name-align.ly: update version.
2052 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2054 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2055 Doc the --pdf flag to lilypond-book.
2057 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2059 * Documentation/topdocs/NEWS.tely (Top): add description.
2061 * input/regression/tuplet-full-length-note.ly: add file.
2063 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2064 always store axis group.
2066 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2068 * input/regression/instrument-switch.ly: new file.
2070 * lily/instrument-switch-engraver.cc (process_music): new file.
2072 * ly/engraver-init.ly: add Instrument_switch_engraver
2074 * ly/music-functions-init.ly: \instrumentSwitch
2076 * scm/define-context-properties.scm
2077 (all-user-translation-properties): add instrumentCueName
2079 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2081 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2083 * ly/music-functions-init.ly: music function \transposition.
2085 * lily/parser.yy (command_element): softcode \transposition.
2087 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2088 (process_music): oops.
2090 * lily/instrument-name-engraver.cc (start_spanner): new
2091 function. Create spanner when property changes.
2092 (stop_spanner): new function.
2094 * python/convertrules.py (conv): add rule.
2096 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2097 shortInstrumentName iso. instr.
2099 * scm/output-ps.scm (dashed-line): add phase argument to
2102 * lily/bar-line.cc (dashed_bar_line): new function.
2103 (compound_barline): support \bar "dashed".
2105 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2106 --output=DIR to DIR/BASE if it is a dir.
2108 * flower/file-name.cc (file_part): new function
2109 (dir_part): new function
2111 * lily/lily-parser-scheme.cc (LY_DEFINE):
2113 * DEDICATION: update
2115 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2117 * lily/instrument-name-engraver.cc: formatting.
2119 * python/convertrules.py (conv): bugfix for \epsfile.
2121 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2125 * lily/gourlay-breaking.cc: Oops, these should have been included
2128 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2130 * scripts/*.py (program_name): cleanup relocation snippets.
2132 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2134 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2136 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2137 page-breakable by default
2139 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2140 correctly calculated for a single-system page
2142 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2143 bigger than the second number
2145 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2146 acknowledge that we aren't satisfying constraints)
2148 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2151 * lily/grob.cc (pure_height): add minimum-Y-extent
2153 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2156 * lily/constrained-breaking.cc: convert code to use new Matrix class
2157 (get_best_solution): new function
2159 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2160 is a page with no systems
2162 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2164 * VERSION (PACKAGE_NAME): release 2.9.13
2166 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2169 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2171 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2173 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2176 * scm/define-grob-properties.scm (all-user-grob-properties):
2177 remove grace-space-factor.
2179 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2180 grace-spacing-interface
2181 (spacing-options-interface): add.
2183 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2185 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2187 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2188 GraceSpacing object.
2190 * lily/note-spacing.cc: fix prop list formatting
2192 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2193 beaming for grace notes too.
2195 * input/regression/spacing-grace.ly: update.
2197 * lily/grace-spacing-engraver.cc: new file.
2199 * lily/spacing-spanner.cc: add strict-grace-spacing.
2201 2006-07-20 Graham Percival <gpermus@gmail.com>
2203 * lily/parser.yy: compile fix.
2205 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2207 * scm/define-grobs.scm (all-grob-descriptions): typo.
2209 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2210 .eps extension from includegraphics.
2212 * scripts/lilypond-book.py (main): add support for --pdf.
2214 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2215 callback to compute common shortest duration.
2216 (set_springs): typo.
2218 * scm/define-grob-properties.scm (all-user-grob-properties): add
2219 strict-grace-spacing.
2221 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2222 support float_grace_columns_.
2224 * lily/spacing-options.cc (init_from_grob): new file.
2226 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2228 * input/regression/spacing-loose-grace.ly: new file.
2230 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2232 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2233 tupletFullLengthNote too. Choose right bound depending on value.
2235 * input/regression/tuplet-full-length-note.ly: new file.
2237 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2239 * lily/*-performer.cc: Converted try_music to listen_*
2241 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2242 as a stream-event internally. Introduce event_cause (), deprecate
2245 * scm/define-music-types.scm: Removed BusyPlayingEvent
2247 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2249 * Documentation/user/advanced-notation.itely (Font selection):
2250 Document how to get a list of available fonts using 'lilypond
2251 -dshow-available-fonts blabla'.
2253 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2255 * GNUmakefile.in: filter lily-XXX.pdf files.
2257 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2259 * scm/define-grob-properties.scm (all-internal-grob-properties):
2260 remove delta-pitch. Use delta-position everywhere.
2262 * scm/output-lib.scm (fall::print): use new order.
2264 * scm/output-ps.scm (path): reorder arguments.
2266 * scm/output-svg.scm (path): support for path primitive.
2268 * input/regression/bend-after.ly: new file.
2270 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2271 recipe for eps -> pdf conversion.
2273 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2275 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2278 2006-07-19 Graham Percival <gpermus@gmail.com>
2280 * input/manual/screech-boink.ly: moved to here.
2282 * input/screech-boink.ly: deleted.
2284 * scm/define-grob-properties.scm: clarify doc string.
2286 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2288 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2290 * scm/output-ps.scm (path): define path.
2292 * scm/define-stencil-commands.scm
2293 (ly:register-stencil-expression): add path.
2295 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2297 * ly/engraver-init.ly: add Fall_engraver
2299 * lily/parser.yy (music_function_event): allow musicfunction
2300 without music arg as music_function_event.
2302 * lily/grob-scheme.cc (LY_DEFINE):
2303 ly:grob-robust-relative-extent. New function.
2305 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2307 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2309 * scm/output-lib.scm (fall::print): new function
2311 * lily/fall-engraver.cc (stop_fall): new file.
2313 * ly/music-functions-init.ly: alphabetise.
2315 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2318 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2320 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2322 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2325 * lily/translator-group.cc (connect_to_context): non const error message.
2327 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2329 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2332 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2334 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2336 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2339 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2341 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2343 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2345 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2347 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2349 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2351 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2353 * scm/layout-page-layout.scm: Define module, tidy code, use more
2354 functions iso. a single big one.
2356 * scm/layout-page-dump.scm: move page dump functions used in two
2357 pass spacing to this file. Define module.
2359 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2362 * ly/paper-defaults.ly: use module layout-page-layout.
2364 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2366 * lily/music.cc: Revised MusicEvent event class. It now contains
2367 event data directly instead of encapsulating it in music. The
2368 previously used class is renamed to OldMusicEvent.
2370 * lily/stream-event.cc: Stream events are now probs.
2372 * lily/translator-group.cc, lily/translator.cc: Translators can
2373 now listen directly to stream events, by using macros
2374 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2376 * lily/arpeggio-engraver.cc: Converted to use new event system
2378 * THANKS: Corrected spelling mistake.
2380 2006-07-12 Graham Percival <gpermus@gmail.com>
2382 * Documentation/user/SConscript, make/lilypond-vars.make,
2383 input/GNUmakefile: doc build looks in input/manual instead
2386 * input/manual/ GNUmakefile, SConscript: build files for
2389 * input/test/ various: some files moved to input/manual/
2391 * Documentation/user/basic-notation.itely: small updates;
2392 thanks Kieren and Charles!
2394 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2396 * VERSION (PACKAGE_NAME): release 2.9.11
2398 * Documentation/topdocs/NEWS.tely (Top): update prop value
2400 * Documentation/user/basic-notation.itely (Tuplets): new property
2403 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2405 * python/convertrules.py (conv): tweaks.
2407 * VERSION (PATCH_LEVEL): bump version.
2409 * python/convertrules.py (conv): add rule for
2410 tupletNumberFormatFunction.
2412 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2413 tupletNumberFormatFunction.
2415 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2416 text through 'text callback.
2418 * lily/time-scaled-music-iterator.cc (construct_children): copy
2419 tweaks generated events.
2421 * scm/define-context-properties.scm
2422 (all-user-translation-properties): remove tupletNumberFormatFunction
2424 * lily/tuplet-engraver.cc (process_music): don't read
2425 tupletNumberFormatFunction
2427 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2430 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2432 * lily/global-context-scheme.cc: Separated ly:run-translator into
2435 * lily/score-engraver.cc, lily/score-performer.cc,
2436 scm/define-context-properties.scm: Make paper/midi output
2437 accessable as a context property.
2439 * lily/score-translator.cc, lily/score-context.cc: Removed.
2441 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2443 * scm/ps-to-png.scm (Module):
2444 * scm/framework-tex.scm (Module):
2445 * scm/framework-ps.scm (Module):
2446 * scm/backend-library.scm (Module):
2447 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2448 "dDEVICEHEIGHTPOINTS".
2450 2006-07-04 Graham Percival <gpermus@gmail.com>
2452 * Documentation/user/ various: general improvements to
2453 "working with lilypond files" section.
2455 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2457 * lily/sequential-iterator.cc: Change the default get_music_list
2458 to read elements-callback music property
2460 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2461 processing of multimeasure rests. Softcoded
2462 sequential-music-iterator.
2464 * lily/sequential-music-iterator.cc: Removed.
2466 2006-06-28 Graham Percival <gpermus@gmail.com>
2468 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2470 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2472 * lily/parser.yy: Wrap non-post-events in EventChords before
2473 assigning them to identifiers.
2475 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2477 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2478 gives correct vertical placement of \bar ":" in all staff
2479 sizes. Thanks Martial!
2481 2006-06-26 Graham Percival <gpermus@gmail.com>
2483 * Documentation/user/invoking.itely : minor update from mailist.
2485 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2487 * lily/ various: Introduce stream events of types Prepare,
2488 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2489 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2491 * lily/global-context*.cc: Time is now -inf before iteration
2494 * lily/include/context.hh: Removed unique_, init_
2496 * Documentation/topdocs/NEWS: Make the feathered beam example
2497 avoid triggering a bug.
2499 2006-06-24 Graham Percival <gpermus@gmail.com>
2501 * Documentation/user/ various: small additions from mailist.
2503 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2505 * ly/performer-init.ly: Add some missing links in the context
2506 hierarchy for MIDI output. There are probably some more missing!
2508 2006-06-21 Graham Percival <gpermus@gmail.com>
2510 * Documentation/user/ various: minor spelling fixes;
2511 thanks Dave Luttinen!
2513 * Documentation/user/ various: small clarifications;
2514 thanks Anthony Youngman!
2516 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2518 * po/fr.po: add \n appropriately.
2520 * lily/lexer.ll: remove ? from version-seen?
2522 2006-06-19 John Mandereau <john.mandereau@free.fr>
2524 * po/fr.po; update translation, by Jean-Charles Malahieude and
2527 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2529 * THANKS: add Markus Schneider.
2531 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2532 Staff_symbol_engraver
2534 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2535 replace staff_engraver
2537 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2540 * lily/staff-collecting-engraver.cc
2541 (acknowledge_end_staff_symbol): new function
2543 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2545 * lily/staff-collecting-engraver.cc
2546 (acknowledge_end_staff_symbol): new function.
2548 * lily/main.cc: switch on relocation by default.
2550 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2552 * lily/spacing-spanner.cc (musical_column_spacing): set
2553 compound_fixed_note_space to 0.0. Document why.
2555 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2556 range of inverse_hooke_
2557 (Simple_spacer): init completely.
2559 (get_line_configuration): don't use cols.resize(); it introduces
2562 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2564 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2566 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2567 try. Divide by beatlength.
2569 * input/regression/beaming-ternary-metrum.ly: update doc.
2570 add beatLength hack.
2572 * scm/music-functions.scm (make-time-signature-set): add
2573 standard-beat-grouping.
2575 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2577 * input/regression/tie-whole.ly: new file.
2579 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2580 cross center of note head in case of invisible stem.
2582 2006-06-16 Graham Percival <gpermus@gmail.com>
2584 * Documentation/user/ various: small fixes from mailist.
2586 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2588 * lily/breathing-sign.cc (offset_callback): idem.
2590 * lily/align-interface.cc (align_to_fixed_distance): remove
2593 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2596 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2598 * VERSION (PACKAGE_NAME): release 2.9.9
2600 * ly/lilypond-book-preamble.ly: add \version
2602 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2604 * scripts/lilypond-book.py (PREAMBLE_LY): include
2605 lilypond-book-preamble.ly
2607 * lily/stem.cc (get_beaming): return max of 0 and
2608 scm_ilength. Fixes slurring from/to beams.
2610 * ly/lilypond-book-preamble.ly: new file.
2612 * lily/slur.cc: add inspect-index feature.
2614 2006-06-13 Graham Percival <gpermus@gmail.com>
2616 * Documentation/user/tutorial.itely: trivial fix.
2618 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2620 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2621 all non-event music in the parser via MAKE_SYNTAX.
2623 * lily/parser-scheme.cc: Add ly:parser-error function
2625 * scm/paper.scm: fix typo
2627 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2631 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2634 * buildscripts/output-distance.py (test_compare_signatures):
2636 (read_signature_file): use new signature format.
2638 * scm/stencil.scm (write-system-signature): simpler signature
2641 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2644 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2645 stem_end_position, but estimate instead.
2647 * lily/tuplet-bracket.cc (calc_positions): look at
2648 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2649 brackets narrower than beams.
2651 * lily/lexer.ll: set version-seen? even if version is
2654 * lily/rest.cc (y_offset_callback): bugfix: decide position
2655 override based on scm_is_number(). Fixes \rest on center staff
2658 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2659 patterns for 16th triplets.
2661 2006-06-10 Graham Percival <gpermus@gmail.com>
2663 * Documentation/user/ page.itely, global.itely: editing
2666 * Documentation/user/ various: findex -> funindex.
2668 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2670 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2671 insert extra tuplet events.
2673 2006-06-10 Graham Percival <gpermus@gmail.com>
2675 * Documentation/user/programming-interfaces.itely: add
2678 * python/convertrules.py: add annotatefoo -> annotate-foo
2681 * Documentation/user/global.itely: start editing.
2683 * Documentation/user/page.itely: major editing, new spacing
2686 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2688 * scm/define-markup-commands.scm (wordwrap-markups): use
2689 output-def 'line-width if undefined.
2691 * HACKING: trim outdated info.
2693 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2695 * scm/define-grobs.scm (all-grob-descriptions): Add
2696 line-spanner-interface to all grobs that already have
2697 text-spanner-interface or dynamic-text-spanner-interface
2699 * scm/page.scm: Rename annotate{headers,systems,page}->
2702 * input/regression/page-spacing.ly,
2703 input/regression/page-layout-manual-position.ly: idem
2705 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2707 * lily/line-spanner.cc: cleanup property list.
2709 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2710 generator expressions (2.3 compat).
2712 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2714 * lily/vertical-align-engraver.cc: Make sure that the
2715 align{Above,Below}Context properties are included in the automatic
2718 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2720 * scm/paper-system.scm (paper-system-annotate): also annotate the
2721 estimated pure-Y-extent
2723 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2725 * lily/system.cc (break_into_pieces): set the estimated height
2726 of each child system
2728 * lily/stem.cc (pure_height): new pure-Y-extent callback
2730 * lily/staff-symbol-referencer.cc (callback): don't destroy
2731 the staff-position property
2733 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2734 consider_suicide into two functions
2736 * lily/constrained-breaking.cc (resize): use the new pure
2737 callbacks to estimate the height of a system
2739 * lily/axis-group-interface.cc (pure_group_height): new
2740 side-effect-free VerticalAxisGroup height-callback
2742 * lily/align-interface.cc (get_extents_aligned_translates):
2743 split align_elements_to_extents into two functions
2744 (get_pure_child_y_translation): new function
2746 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2748 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2750 * lily/paper-score.cc: cache break_indices and columns
2752 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2754 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2756 * lily/font-config.cc (init_fontconfig): do the init if
2757 cache_file, but don't look at cache_file.
2759 * input/regression/quote-tie.ly: new file.
2761 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2762 to Head_event_tuple, so we deal gracefully with ties on
2765 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2768 2006-06-08 Graham Percival <gpermus@gmail.com>
2770 * input/test/ smart-transpose.ly, reverse-music.ly:
2771 \applyMusic to music functions update, thanks Michael!
2773 2006-06-07 Graham Percival <gpermus@gmail.com>
2775 * input/test/ add-staccato.ly, add-text-script.ly,
2776 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2777 music functions update, thanks to Michael Meixner.
2779 * Documentation/user/music-glossary.tely: small fix
2782 * Documentation/user/ various: minor additions from mailist.
2784 * Documentation/user/lilypond.tely, basic-notation.itely:
2785 small test of @funindex. (works here)
2787 * input/test/font-table.ly: reduce size to partially
2788 de-ugly version in manual.
2790 * Documentation/user/page.itely: new file (split former
2791 "global issues" into "page settings" and "non-musical
2794 * Documentation/user/ various: fix @ref{}s to match
2795 new chapter names (above).
2797 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2799 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2801 2006-06-06 Graham Percival <gpermus@gmail.com>
2803 * Documentation/user/advanced-notation.itely: add example
2804 for segno/coda on barline.
2806 * tex/texinfo.tex: merge from upstream.
2808 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2810 * scripts/lilypond-book.py (process_snippets): Argument fix.
2813 * buildscripts/builder.py:
2816 * Documentation/user/SConscript: More SCons fixes.
2818 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2820 * lily/font-config.cc (init_fontconfig): Only initialize if
2821 global cache_file is found.
2823 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2825 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2828 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2830 * VERSION (PACKAGE_NAME): release 2.9.8
2832 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2833 function. Delay ledger modifying ledgered grobs to
2834 stop_translation_timestep(), to ensure that we're ledgering
2835 according to the new spanner.
2836 (acknowledge_staff_symbol): don't check for non-NULL
2837 staff_sym->get_bound()
2839 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2842 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2845 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2846 directly from srcdir/stepmake/aclocal.m4
2848 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2851 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2853 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2855 * lily/simple-spacer.cc (get_line_configuration): add
2856 keep-inside-line rods
2857 (struct Column_desc): add constructor
2858 (struct Rod_desc): add constructor
2859 (get_line_forces): check for forced page breaks here too
2861 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2862 support/elements cycles between InstrumentNames and AxisGroups
2864 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2866 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2868 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2869 make-txt-files target.
2871 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2872 make-txt-files target.
2874 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2876 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2879 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2881 * Documentation/user/instrument-notation.itely,
2882 input/regression/breathing-sign-ancient.ly,
2883 input/test/divisiones.ly: Removed redundant property settings for
2886 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2887 fix lyrics alignment problems. They are implemented now as scheme
2888 functions that add the appropriate unicode char to the first lyric
2889 event rather than adding a separate lyric event. Minor edit of
2892 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2894 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2895 pollute src dir with built .txt files, but install directly from
2896 Documentation/topdocs/out/
2898 * buildscripts/output-distance.py
2899 (ComparisonData.create_html_result_page): put version/directories
2902 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2905 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2906 Patch by Karl Hammar
2908 * buildscripts/readlink.py: add file.
2909 Patch by Karl Hammar
2911 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2913 * lily/tuplet-number.cc (print): prevent stencil from being
2916 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2918 * scm/stencil.scm (write-system-signature): explicitly
2919 -well, superfluously- close output port.
2921 * buildscripts/output-distance.py (main): oops. Add extra argument.
2923 2006-06-05 Graham Percival <gpermus@gmail.com>
2925 * Documentation/user/music-glossary.tely: clarified example
2926 from Francisco Vila, thanks!
2928 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2930 * input/regression/spacing-section.ly: new file.
2932 * lily/input.cc (programming_error): new function.
2934 * lily/spacing-engraver.cc (try_music): new function. Accept
2935 spacing-section-event
2937 * lily/spacing-spanner.cc (set_springs): take slices of all
2938 columns for spacing.
2940 * lily/include/paper-column.hh (class Paper_column): add
2941 Paper_column::compare.
2943 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2945 * scm/define-music-types.scm (music-descriptions): add
2948 * lily/music-iterator.cc (report_event): use programming_error for
2949 sending non-event error.
2951 * lily/input.cc (programming_error): new function
2953 * buildscripts/output-distance.py (main): use compare-XXX for
2955 (main): --threshold option, default at 0.30
2957 * output-distance.py (main): add --threshold option.
2959 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2961 * scm/paper-system.scm (paper-system-annotate): fix problem when
2962 annotating an empty system
2964 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2966 * GNUmakefile.in: reinstate old web tar/copying.
2968 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2970 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2971 nothing changes. (Erik S)
2973 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2976 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2978 * scm/define-markup-commands.scm (whiteout): do not force
2979 foreground color of argument markup to black.
2981 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2982 the left of the arrow, instead of below the arrow name, so that,
2983 when two little arrows are vertically stacked, their dimensions
2984 and name should not overlap. Add a color key parameter.
2986 * scm/paper-system.scm (paper-system-annotate): Annotate
2987 next-space+next-padding instead of next-space. Annotate space
2988 between next-padding and next-space+padding, respectively, and
2989 following system extent and refpoint-Y-extent. Use colors.
2991 * scm/page.scm (annotate-page): translate annotations slightly to
2994 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2996 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2997 fix for x-staff slurs. Thanks Joe!
2999 * buildscripts/output-distance.py
3000 (SystemLink.output_expression_change_count): keep track of changed
3001 details, and dump in details html page.
3003 * input/regression/figured-bass-staff.ly: add note about setting
3004 properties in Staff context.
3006 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
3007 add slurs and ties to support too.
3009 * buildscripts/output-distance.py (main): set dest_dir
3010 argument. Add --max-count option.
3012 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3014 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3015 shortcuts for special unicode chars that are useful in chant
3016 notation. Revised exisiting and added new comments.
3018 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3020 * make/mutopia-rules.make: remove duplicate recipe.
3022 2006-06-02 Werner Lemberg <wl@gnu.org>
3024 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3025 Add support for U+0132 (IJ) and U+0133 (ij).
3027 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3029 * buildscripts/output-distance.py (FileLink): new class. collect
3030 info systems from one .ly file.
3031 (FileLink.link_files_for_html): further tweaks.
3033 2006-06-02 Graham Percival <gpermus@gmail.com>
3035 * tex/texinfo.tex: partial fix for @funindex.
3037 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3040 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3042 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3044 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3045 @example too. Backportme.
3047 2006-06-02 Graham Percival <gpermus@gmail.com>
3049 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3050 from Werner Lemberg.
3052 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3054 * Documentation/user/music-glossary.tely: additional spanish
3055 updates and a lyrics fix in an example.
3057 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3059 * scm/define-grob-properties.scm: Previous patch contained
3060 spurious line from another patch not yet committed. Fixed.
3062 * scm/define-grob-properties.scm: Add missing doc strings for
3065 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3067 * buildscripts/output-distance.py
3068 (ComparisonData.write_text_result_page): separate the scores, sort
3071 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3074 * buildscripts/output-distance.py (me_path): use argv[0] for
3076 (ComparisonData.img_cell): use colored borders.
3078 * scm/stencil.scm (write-system-signature): escape newlines too.
3079 (write-system-signature): use (1,-1) interval for empty interval
3081 2006-01-01 Graham Percival <gpermus@gmail.com>
3083 * Documentation/user/music-glossary.tely: Spanish updates
3084 from Francisco Vila.
3086 * Documentation/user/lilypond-book.itely: addition from
3089 * Documentation/user/ various: edits, small additions
3092 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3094 * GNUmakefile.in (tree-lib-prefix-current):
3095 (tree-share-prefix-current): Use version number in tree, add
3098 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3100 * GNUmakefile.in: write VERSION, again.
3102 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3103 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3105 * stepmake/aclocal.m4: robuster version detection.
3107 * buildscripts/output-distance.py
3108 (ComparisonData.create_html_result_page): copy only if file
3109 exists, fixup src paths.
3111 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3113 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3115 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3116 Another datarootdir reto.
3118 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3119 available. This should be moved to postinstall-lilypond-doc.
3121 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3123 * GNUmakefile.in: simplify local-WWW-post.
3124 remove -type l from find.
3126 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3127 fixes. Don't follow symlinks.
3128 (ComparisonData.create_html_result_page): remove previous results.
3129 insert ../python in path.
3131 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3133 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3135 * config.make.in (datadir): Add datarootdir to silence autoconf.
3137 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3139 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3141 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3143 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3144 slash beams too wide.
3146 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3148 * VERSION: release 2.9.7
3150 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3152 * lily/relocate.cc (read_relocation_dir): Do not blindly
3155 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3157 * lily/parser.yy: replace THIS by PARSER
3159 * Documentation/index.html.in: add link to test-results.html page.
3161 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3163 * scm/translation-functions.scm (format-bass-figure): translate
3164 digits over 10 to the left
3166 * scm/define-markup-commands.scm (translate-scaled): new markup.
3168 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3171 * ly/engraver-init.ly: add Figured_bass_engraver
3173 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3175 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3177 * lily/score-engraver.cc (announce_grob): only note START announces.
3179 * lily/include/engraver-group.hh (Translator_group):
3180 acknowledge_hash_table_ is now drul.
3182 * lily/engraver.cc (announce_end_grob): new method.
3184 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3186 * lily/translator-dispatch-list.cc (create): take start_end argument.
3188 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3189 acknowledge_static_array_ to drul
3191 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3193 * scm/define-grob-interfaces.scm
3194 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3196 * scm/define-grobs.scm (all-grob-descriptions): add
3197 BassFigureAlignmentPositioning
3199 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3200 number stays up to date. Backportme.
3202 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3204 * Documentation/user/basic-notation.itely (Bar lines): Document
3207 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3209 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3211 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3212 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3215 * Resurrect `scons lily' build.
3217 * SConstruct (symlink_tree): Bugfix: link
3218 music-drawing-routines.ps to file iso directory.
3220 * lily/SConscript: Remove kpath-guile from LIBS.
3222 * SConstruct (libdir_package_version): Typo.
3223 (configure): Comment-out fontforge for lack of fontforge.pc .
3224 Also add libdir* to environment.
3226 2006-05-30 Graham Percival <gpermus@gmail.com>
3228 * Documentation/user/ various: minor additions from mailist and
3231 2006-05-30 Paco <fravd@ya.com>
3233 * Documentation/user/music-glossary.tely: numerous corrections and
3234 some new translations.
3236 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3240 * buildscripts/output-distance.py
3241 (ComparisonData.create_html_result_page): new routine: summarise
3242 results in HTML page with images.
3243 (ComparisonData.create_text_result_page): create summary text files too.
3245 * GNUmakefile.in (web-ext): package .signature files too. They
3248 * scm/stencil.scm (write-system-signature): typo.
3250 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3252 * scm/stencil.scm (write-system-signature): better escaping.
3253 only write signature for music systems, not for markup systems.
3255 * scm/framework-ps.scm (output-framework): dump-signatures support
3258 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3260 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3261 for -dno-point-and-click
3263 * lily/grob.cc (get_print_stencil): don't read
3264 point_and_click_global to determine whether to set grob-cause.
3266 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3268 * buildscripts/output-distance.py (main): new function.
3269 (ComparisonData): new class.
3271 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3272 careful with generating new LedgerLineSpanners.
3274 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3276 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3277 context. This fixes double ledger lines in output.
3279 * lily/system.cc (get_paper_system): remove 3 layer limit.
3281 * buildscripts/output-distance.py (SystemLink.distance): new
3282 file. Compare signatures.
3284 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3286 * lily/grob-array.cc (remove_duplicates): rename from
3287 uniq(). Sort before calling uniq() so it actually works.
3289 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3291 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3292 \version from lilypond file snippet.
3293 (Lilypond_file_snippet.ly): oops. typo.
3294 (find_toplevel_snippets): urgh. again.
3296 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3297 prevent duplicated broken items in output.
3299 * scm/framework-eps.scm (output-classic-framework): only dump if
3300 dump-signatures is set.
3302 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3304 * scm/stencil.scm (write-system-signature): new routine: write
3305 python parseable signature of a separate paper system.
3308 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3310 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3314 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3316 * translator-group.cc: send music events to engravers in
3317 non-bottom contexts.
3319 * tuplet-engraver.cc: process tuplet brackets in correct order.
3321 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3323 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3324 arg 2 might point us to a new binary (patch by Karl Hammar)
3326 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3328 * VERSION (PACKAGE_NAME): release 2.9.6
3330 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3332 * Documentation/user/*.itely: 2nd
3333 attempt: replace funindex -> findex globally.
3335 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3337 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3338 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3340 * scm/define-music-display-methods.scm: display methods for
3341 breaks. Fix \applyOutput.
3343 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3345 * Documentation/user/macros.itexi: comment out funindex expansion.
3347 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3350 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3351 Karl Hammar. Backportme.
3353 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3355 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3357 * Documentation/user/programming-interface.itely (Running a
3358 function on all layout objects): idem.
3360 * Documentation/user/introduction.itely (Automated engraving):
3361 update \applyOutput syntax
3363 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3364 remove debugging hook.
3366 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3369 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3371 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3372 TEXI2DVI_FLAGS to texi2dvi invocation.
3374 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3376 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3377 works. More work is done by iterator now, and engraver has been
3378 very much simplified.
3380 * lily/translator-group.cc: try_music is now invoked through a
3383 * lily/*-iterator.cc: Massive cleanups. Junked
3384 try_music_in_children globally. Renamed try_music to report_event,
3385 and made that method descend to a bottom context automatically.
3387 * lily/event-iterator.cc: New file.
3389 * lily/output-property-iterator.cc,
3390 lily/old-lyric-combine-music-iterator.cc: Removed.
3392 * python/convert-rules.py: Modified the syntax for \applyOutput.
3394 2006-05-23 Graham Percival <gpermus@gmail.com>
3396 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3399 * Documentation/user/ various: stuff that might have helped
3400 to fix the pdf creation, plus some minor doc additions.
3402 * Documentation/user/changing-defaults.itely: remove @b from
3403 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3405 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3407 * lily/beaming-pattern.cc (beamify): deal with negative start
3408 moments for beaming patterns.
3410 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3412 * lily/beaming-info.cc (beamify): new function: read beatLength
3413 and beatGrouping from context.
3415 * input/regression/beam-beat-grouping.ly (Module): new file.
3417 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3419 * lily/beam.cc (get_beam_segments): generate events for
3420 max_connect_ case too.
3421 (get_beam_segments): read Stem::max-beam-connect.
3423 * input/regression/beam-single-stem.ly: new file.
3425 * lily/stem.cc (set_beaming): use #f as signaling value for
3428 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3430 * lily/beam.cc (set_beaming): read clip-edges property.
3431 (calc_direction): don't suicide for single stem.
3433 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3434 argument, remove 1<<15 hack. Remove clip_edges()
3436 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3438 2006-05-21 Graham Percival <gpermus@gmail.com>
3440 * Documentation/user/basic-notation.itely: reorg.
3442 * Documentation/user/ various: minor fixes.
3444 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3446 * lily/stencil-expression.cc (register_stencil_head): opps, append
3447 to cdr of static SCM object.
3449 2006-05-19 Graham Percival <gpermus@gmail.com>
3451 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3452 update framework for command index. DOC WRITERS: use @funindex
3453 instead of @cindex @code{}.
3455 * Documentation/user/ various: replace @cindex @code{} => @funindex
3457 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3459 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3460 case positions is set manually.
3462 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3464 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3467 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3469 * Documentation/user/changing-defaults.itely (Contexts explained):
3470 use absolute dimension for @image.
3472 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3473 out image for illustration too.
3474 ($(outdir)/%.png): add more png <-> eps rules.
3476 2006-05-17 Graham Percival <gpermus@gmail.com>
3478 * Documentation/user/ various: remove trailing whitespace, cosmetic
3479 change to reduce changes produced by diff.
3481 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3483 * lily/main.cc (do_chroot_jail): correctness tweak.
3485 * python/lilylib.py (system): import subprocess in system () only.
3487 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3489 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3490 variable. Backportme.
3492 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3494 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3496 2006-05-17 Werner Lemberg <wl@gnu.org>
3498 * lily/lexer.ll (init_signature_has_table): Add
3499 `scm-scm-music-music'.
3501 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3502 (Generic_prefix_music_scm): Add rule for it.
3504 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3505 `quoted-transposition' property.
3507 * ly/music-functions-init.ly (transposedCueDuring): New function.
3509 * scm/define-music-properties.scm (all-music-properties): Updated.
3511 * Documenation/topdocs/NEWS.itely: Document it.
3513 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3515 * python/lilylib.py (system): move import subprocess to system()
3518 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3520 * VERSION (PATCH_LEVEL): release 2.9.5
3522 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3525 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3527 2006-05-16 Graham Percival <gpermus@gmail.com>
3529 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3531 * Documentation/user/ various: minor fixes.
3533 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3535 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3537 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3539 * Documentation/user/advanced-notation.itely (Instrument names):
3540 Modified obsolete instruction on how to move instrument names away
3541 from the staves. Hmm, at second thought the bug probably has been
3542 solved, so the full bug description should probably be removed.
3544 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3546 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3547 currentCommandColumn.
3549 * lily/hairpin.cc (print): also add padding for non-neighbor
3552 * scm/define-context-properties.scm
3553 (all-user-translation-properties): add hairpinToBarline
3555 * input/regression/hairpin-to-barline.ly: new file.
3557 * lily/context.cc (internal_send_stream_event): thinko fix.
3559 * lily/tie.cc (set_default_control_points): robustness fix.
3561 * python/musicxml.py (Part.interpret): don't complain about
3562 incomplete measures.
3564 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3565 new music if last_event_chord() returned None.
3567 * python/musicxml.py (Part.interpret): skip back over chord notes.
3569 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3571 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3572 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3573 lily/slash-repeat-engraver.cc,
3574 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3575 iterator sends PercentEvents
3577 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3578 rework tuplets: send start/stop events to engraver
3580 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3581 dispatchers event-source and events-below to Context
3583 2006-05-15 Graham Percival <gpermus@gmail.com>
3585 * Documentation/user/README.txt: update info for doc writers.
3587 * Documentation/user/programming-interface.itely: integrate
3588 Nicolas' fixes for chapter rewrite.
3590 * Documentation/user/ various: minor fixes.
3592 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3594 * lily/clef-engraver.cc: cleanup.
3596 * Documentation/user/GNUmakefile: dist context-example.eps too.
3598 * lily/key-engraver.cc (create_key): use
3599 explicitKeySignatureVisibility for cancellation too.
3601 * lily/font-config.cc (init_fontconfig): don't close file if
3604 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3606 * Documentation/topdocs/NEWS.tely: niente and rotation news
3608 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3610 * lily/include/stencil.hh
3611 * lily/stencil.cc (rotate): new function. Makes it possible
3612 to rotate a stencil around a given offset.
3614 * lily/grob.cc (get_print_stencil): add rotation support
3616 * lily/stencil-interpret.cc (interpret_stencil_expression):
3617 add rotation support
3619 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3621 * scm/define-grob-properties.scm: add 'rotation property
3623 * scm/define-markup-commands.scm: add rotate markup command
3625 * scm/output-ps.scm: add rotation support in PostScript backend
3627 * scm/output-svg.scm: add rotation support in SVG backend
3629 2006-05-13 Graham Percival <gpermus@gmail.com>
3631 * Documentation/user/music-glossary.itely: French correction.
3633 * Documentation/user/programming-interface.itely: major
3634 new docs, some reorg, some info from Nicolas.
3636 * Documentation/user/ various: small fixes.
3638 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3640 * Documentation/user/programming-interface.itely (Markup
3641 programmer interface): Remove duplicate text.
3643 2006-05-12 Graham Percival <gpermus@gmail.com>
3645 * Documentation/user/context-example.eps: new file.
3647 * Documentation/user/changing-defaults.itely: set up file to
3650 * Documentation/user/programming-interface.itely: changes
3653 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3655 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3657 2006-05-11 Graham Percival <gpermus@gmail.com>
3659 * Documentation/user/programming-interface.itely: first round of
3660 editing and merging emails from Nicolas.
3662 * Documentation/user/scheme-tutorial: minor edit.
3664 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3666 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3668 (Xml_node.message): use it.
3670 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3671 oops. Add duration argument.
3673 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3675 * lily/paper-column-engraver.cc (make_columns):
3676 * scm/define-grobs.scm: Revert my previous change and set the default
3677 in define-grobs.scm instead.
3679 2006-05-09 Graham Percival <gpermus@gmail.com>
3681 * Documentation/user/changing-defaults.itely: general editing,
3682 info about \set and \override.
3684 * Documentation/user/tweaking.itely, advanced-notation.itely:
3685 fixes from Dave Luttinen, thanks!
3687 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3689 * lily/paper-column-engraver.cc (make_columns): By default, a column
3690 needs to be breakable.
3692 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3694 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3696 (musicxml_time_to_lily): idem
3697 (musicxml_key_to_lily): idem
3698 (instrument_drumtype_dict): dict for supported drumtypes.
3699 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3700 moments and pending mm rests
3701 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3702 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3703 (musicxml_voice_to_lily_voice): add mode change.
3704 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3705 speed and less memory usage (factor 5 to 10).
3706 (convert): write -defs.ly and driver file separately so people
3707 can script their own part extraction.
3709 * python/musicxml.py (minidom_demarshal_node): new function:
3710 separate minidom handling.
3711 (lxml_demarshal_node): new function: support lxml.etree too.
3712 (Xml_node.message): new function: verbose error message, with XML
3713 path to offending node.
3714 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3715 (Part_list.generate_id_instrument_dict): new method: collect
3716 instrument names, to be able to set drum_type.
3717 (Part.interpret): handle underfull measures
3718 (Part.interpret): assign instrument names.
3720 * python/musicexp.py (Output_printer.close): new method
3721 (MusicWrapper.print_ly): new class: support other modes,
3723 (BarCheck.print_ly): new class. Support bar checks, with comments
3724 and fancy barchecks.
3725 (NoteEvent.__init__): also set drum_type for drum notes.
3726 (MultiMeasureRest.lisp_expression): dump mm rests.
3728 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3729 line-break-permission if forbidBreak is not set.
3731 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3733 * scm/define-context-properties.scm:
3734 * scm/define-grob-properties.scm:
3735 * scm/define-grobs.scm:
3736 * scm/define-music-display-methods.scm:
3737 * scm/define-music-properties.scm:
3738 * scm/define-music-types.scm:
3739 * scm/music-functions.scm:
3740 * ly/declarations-init.ly:
3741 * lily/include/constrained-breaking.hh:
3743 * lily/spaceable-grob.cc:
3744 * lily/simple-spacer.cc:
3745 * lily/paper-score.cc:
3746 * lily/paper-column.cc:
3747 * lily/paper-column-engraver.cc:
3749 * lily/gourlay-breaking.cc:
3750 * lily/constrained-breaking.cc:
3751 * python/convertrules.py:
3752 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3753 "page-break-penalty" and "line-break-permission".
3754 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3755 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3757 * lily/bar-engraver.cc:
3758 * lily/beam-engraver.cc:
3759 * lily/forbid-break-engraver.cc:
3760 * lily/ligature-engraver.cc:
3761 * lily/paper-column-engraver.cc:
3762 * lily/percent-repeat-engraver.cc:
3763 * lily/score-engraver.cc:
3764 * lily/score-engraver.hh:
3765 * lily/paper-column-engraver.hh:
3766 Inter-engraver communication regarding line breaks is done through context
3767 properties (Score.forbidBreak) instead of function calls.
3769 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3771 * VERSION (PACKAGE_NAME): release 2.9.4
3773 2006-05-08 Graham Percival <gpermus@gmail.com>
3775 * Documentation/user/working.itely: proofreading from Dave
3778 * Doucmentation/user/README.txt: updated with manual style info.
3780 * Documentation/user/ various: trim linewidth to 78 chars.
3782 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3784 * scm/define-grob-properties.scm (all-internal-grob-properties):
3785 remove chord-tremolo property.
3787 * lily/beam.cc (get_beam_segments): don't use stem position as
3788 base for broken ends.
3790 2006-05-06 Graham Percival <gpermus@gmail.com>
3792 * Documentation/user/putting.itely: proofreading from Dave
3795 * Documentation/user/ various: more reorg and clarifications.
3797 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3799 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3801 * ly/music-functions-init.ly: new function featherDurations
3803 * lily/beam.cc: read grow-direction for feathered beaming.
3805 * Documentation/topdocs/NEWS.tely (Top): typo.
3807 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3809 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3812 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3813 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3814 used by music streams.
3816 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3817 lily/stream-event.cc, lily/stream-event-scheme.cc,
3818 lily/listener.cc, lily/scheme-listener.cc,
3819 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3820 lily/include/stream-event.hh, lily/include/listener.hh,
3821 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3822 Created data structures for music streams.
3824 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3826 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3827 construction of a beam.
3830 * flower/include/std-vector.hh (default_compare): use only one comparison.
3832 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3833 (note-by-number): further attachment fixes.
3835 * scm/lily-library.scm (ordered-cons): new function.
3836 (interval-index): new function
3838 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3840 * lily/note-head.cc (get_stem_attachment): new function.
3842 * scm/define-markup-commands.scm (note-by-number): read 'style
3845 * input/regression/markup-note.ly: show note-head style option.
3847 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3850 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3852 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3854 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3856 * lily/include/constrained-breaking.hh: GCC 4 fix.
3858 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3860 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3861 Replace it with functions get_line_forces and get_line_configuration.
3862 (class Simple_spacer): Make data private.
3863 Rewrite compression algorithm to be faster and simpler.
3865 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3866 * lily/gourlay-breaking.cc (solve):
3867 * lily/constrained_breaking.cc (space_line):
3868 Change it to the new simple-spacer code.
3870 * lily/paper-score.cc (get_paper_systems):
3873 Delay breaking the systems until they are requested.
3874 (find_break_indices):
3875 Use vsize for indices.
3877 Move the "Calculating line breaks" message here.
3879 * lily/system.cc (pre_processing):
3880 Move the "Calculating line breaks" message away from here.
3881 (break_into_pieces):
3882 Allow multiple calls to this function in sequence (with touching-but-
3883 not-overlapping breakpoints).
3885 * lily/constrained-breaking.cc:
3886 Replace most of the get_XXXX functions with get_line_details.
3887 Only calculate the force for each line. Calculate configurations only
3888 for the lines we will actually use.
3889 Replace cols_ with lines_.
3891 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3893 * mf/GNUmakefile (depth): remove FC_FIND.
3895 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3897 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3899 * scm/framework-ps.scm (write-preamble): new function.
3900 (write-preamble): load mac fonts via fondu, even if gs-font-load
3903 2006-05-03 Werner Lemberg <wl@gnu.org>
3905 * mf/GNUmakefile (FC_FIND): Fix typo.
3907 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3909 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3911 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3913 * stepmake/aclocal.m4: run python-config for crosscompiling
3916 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3917 -f png for HTML, TEXINFO formats.
3919 * input/tutorial/lbook-html-test.html: new file.
3921 * lily/include/tie-formatting-problem.hh (class
3922 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3923 [column, direction]. This fixes laissez vibrer ties.
3925 * flower/include/tuple.hh (struct Tuple2): new file.
3927 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3928 $(FCMATCH), only if $(NCSB_DIR) not set.
3930 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3932 * config.make.in (DOCUMENTATION): set FCMATCH.
3934 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3936 2006-05-03 Graham Percival <gpermus@gmail.com>
3938 * Documentation/user/ various: final round of reorg.
3940 * Documentation/user/instrument-notation.itely: some more
3941 fixes from Eduardo, thanks!
3943 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3945 * VERSION (PACKAGE_NAME): release 2.9.3
3947 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3949 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3951 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3953 * scm/define-grob-properties.scm (all-user-grob-properties):
3954 Correct typo, thanks to Eduardo.
3956 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3958 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3960 * buildscripts/lilypond-words.py (F): indent fix.
3962 * input/regression/tie-arpeggio-collision.ly: new file.
3964 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3965 function: store outlines per column rank.
3967 * lily/include/tie-configuration.hh (class Tie_configuration): add
3968 column_ranks_ to specification and configuration, to distinguish
3969 between ties for different heads in arpegiated chords.
3971 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3973 * *.py: more 4 space indents.
3975 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3977 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3979 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3981 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3983 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3985 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
3987 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3989 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
3991 * python/convertrules.py (conv): indent 4 for python files.
3993 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
3995 * Documentation/user/changing-defaults.itely (Creating contexts):
3996 Clarify \new semantics.
3998 2006-04-28 Graham Percival <gpermus@gmail.com>
4000 * Documentation/user/ various: major new sections in the
4001 Learning manual, slight reorg elsewhere.
4003 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
4005 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
4007 * scm/framework-ps.scm (output-framework): remove PageMedia
4009 2006-04-27 Graham Percival <gpermus@gmail.com>
4011 * Documentation/user/ tweaks.itely, working.itely: new
4012 files, being more advanced "learning manual" chapters.
4014 * Documentation/user/ tutorial, putting, lilypond: reorg.
4016 2006-04-26 Graham Percival <gpermus@gmail.com>
4018 * input/regression/lyric-combine-polyphonic.ly: fixed test
4019 (no more "can't find context `one'" error).
4021 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4023 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4025 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4027 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4029 * lily/relocate.cc (read_relocation_dir): new function.
4031 2006-04-26 Graham Percival <gpermus@gmail.com>
4033 * Documentation/user/instrument-notation.itely: a few more fixes
4034 from Eduardo, thanks!
4036 * Documentation/user/README.txt: new file; contains info on
4037 style that used to be in lilypond.tely.
4039 * Documentation/user/ various: first round of doc reorg.
4041 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4042 graphic; this probably causes problems on some pdf
4043 viewers, notably Adobe Acrobat.
4045 2006-04-24 Graham Percival <gpermus@gmail.com>
4047 * Documentation/user/instrument-notation.itely: many alterations
4048 to Vocal music, from Eduardo Viera.
4050 2006-04-23 Graham Percival <gpermus@gmail.com>
4052 * Documentation/user/instrument-notation.itely: fix \new
4053 instead of \context problem.
4055 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4057 * lily/relocate.cc (expand_environment_variables): new function.
4059 (read_relocation_file): id.
4061 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4063 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4065 * ly/engraver-init.ly: remove old comments from TabVoice
4067 2006-04-20 Graham Percival <gpermus@gmail.com>
4069 * Documentation/user/instrument-notation.itely: added Erlend's
4070 latest doc patch, thanks!
4072 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4074 * lily/include/slur.hh:
4076 * lily/phrasing-slur-engraver.cc:
4077 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4078 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4079 Slur_engraver:: and putting it in
4080 Slur::auxiliary_acknowledge_extra_object ().
4082 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4084 * lily/note-collision.cc: fix a comment
4086 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4088 * stepmake/bin/add-html-footer.py: fix footer position in
4089 generated html files: before </body> and </html> tags.
4091 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4093 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4094 Earlier successive `make' commands finally compiled ok.
4096 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4098 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4100 * lily/include/stem-tremolo.hh:
4101 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4105 * lily/include/lookup.hh: add rotated_box ()
4107 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4109 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4110 been generated. Fixes "can't get `--help'" bug after make clean.
4112 * THANKS: alphabetize contributors.
4114 2006-04-17 Graham Percival <gpermus@gmail.com>
4116 * Documentation/user/instrument-notation.itely: added Erlend's
4117 tabs and banjo doc patch. Thanks!
4119 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4121 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4123 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4125 * scm/output-lib.scm: add some more predefined string tunings.
4127 * Documentation/user/instrument-notation.itely: and doc them.
4129 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4131 * ly/engraver.ly: Remove obsolete comments.
4133 * ly/gregorian-init.ly: Define default layout block.
4135 * input/puer-fragment.ly: Updated and extended.
4137 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4139 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4140 pdf conversion behaviour.
4142 * flower/file-name.cc (dir_name)
4143 (get_working_directory): Move from relocate.cc.
4145 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4147 * lily/relocate.cc: Encapsulate sys/stat.h in
4150 2006-04-14 Graham Percival <gpermus@gmail.com>
4152 * Documentation/user/ various: small updates from Cameron
4153 and Juergen, thanks!
4155 * Documentation/user/ various: small updates of my own.
4157 * THANKS: 2.7 -> 2.8.
4159 2006-04-11 Graham Percival <gpermus@gmail.com>
4161 * scm/define-context-properties.scm: typo.
4163 * Documentation/user/ : many more small updates.
4165 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4167 * scm/define-music-types.scm: disposed "docme".
4169 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4171 * lily/hairpin.cc: make niente circles a bit smaller.
4173 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4175 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4176 get-pfa and get-*-fonts targets.
4178 2006-04-10 Graham Percival <gpermus@gmail.com>
4180 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4181 music-glossary, programming-interface: more minor fixes
4184 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4186 * scm/define-context-properties.scm: another old \property update.
4187 This time tested for compiling!
4189 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4191 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4193 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4195 * scm/define-context-properties.scm (all-user-translation-properties):
4196 * Documentation/user/global.itely (Page formatting): Compile fix.
4198 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4200 * Documentation/user/advanced-notation.itely (Polymetric
4201 notation): Update the example to use the "+" symbol and add link
4202 to input/test/compound-time.ly.
4204 2006-04-08 Graham Percival <gpermus@gmail.com>
4206 * scm/define-grob-properties.scm: clarify docs for #'direction.
4208 * scm/define-context-properties.scm: update old \property override.
4210 * Documentation/user/ advanced-notation, global, lilypond-book:
4211 more minor doc updates.
4213 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4215 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4217 * scm/backend-library.scm (search-gs): oops.
4219 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4221 * scripts/lilypond-book.py (output): use base, not filename for href.
4223 * scm/backend-library.scm: only look for gs.
4225 * scripts/lilypond-book.py (output): fix printfilename.
4227 * lily/parser.yy (music_function_musicless_prefix): fold together
4228 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4230 * lily/slur.cc (print): only set font-size if not set yet.
4232 * lily/slur-configuration.cc (add_score): improved layout of debug
4235 2006-04-05 David Feuer <David.Feuer@gmail.com>
4237 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4238 (draw_circle): Hopefully fixed regression.
4239 Improved documentation for several procedures.
4241 2006-03-04 Werner Lemberg <wl@gnu.org>
4243 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4245 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4247 * scripts/musicxml2ly.py (bindir): add dynamic
4250 2006-04-04 Graham Percival <gpermus@gmail.com>
4252 * Documentation/user/ basic-notation, advanced-notation, putting,
4253 instrument-notation, invoking, lilypond, THANKS: another ream of small
4254 fixes from the Doc Helpers.
4256 2006-04-03 David Feuer <David.Feuer@gmail.com>
4258 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4260 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4262 * Cleaned up interfaces between PostScript and Scheme, and moved
4263 computations from PostScript to Scheme:
4265 * music-drawing-routines.ps
4266 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4267 with stroke_and_fill throughout.
4268 (euclidean_length, print_letter, draw_box): Deleted unused
4269 procedures. If someone needs draw_box, implement it using
4270 draw_round_box; don't duplicate code.
4271 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4272 Refactored/cleaned up interfaces.
4275 * output-ps.scm: reordered arguments to PostScript functions to
4276 match new interfaces
4277 (glyph-string): Rewrote glyph-string.
4278 (grob-cause): Replaced string-append with format.
4279 (repeat-slash): Rewrote to do computation here.
4280 (round-filled-box): Rewrote to do computation here.
4282 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4284 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4286 * stepmake/stepmake/toplevel- targets.make: print help info about
4289 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4291 * input/regression/hairpin-circled.ly: new file
4293 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4295 * lily/hairpin.cc (print): add support for circled tip
4297 * scm/define-grob-properties.scm: add circled-tip parameter
4299 * scm/define-grobs.scm: init circled-tip to false
4301 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4303 * scm/music-functions.scm (quote-substitute): set
4306 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4308 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4311 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4313 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4315 2006-03-31 David Feuer <david.feuer@gmail.com>
4317 * scm/framework-ps.scm:
4319 * scm/output-ps.scm: glyph-string now produces smaller, more
4320 readable, and probably faster PostScript. Several findfont
4321 scalefont setfont instances changed to selectfont
4322 Hacked-up string-appends changed to formats.
4324 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4326 2006-03-30 Graham Percival <gpermus@gmail.com>
4328 * scm/lily-library.scm: make "no version" warning message more polite.
4330 * lily/music.cc: add double quotes to failed octave check.
4332 * Documentation/user/ advanced-notation, changing-defaults,
4333 instrument-notation, invoking, music-glossary: whole bunch of minor
4336 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4338 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4339 $(buildscriptdir) iso. depth.
4341 * VERSION (PACKAGE_NAME): release 2.9.1
4343 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4345 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4347 * VERSION (PATCH_LEVEL): bump version number.
4349 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4352 * lily/pango-font.cc (pango_item_string_stencil): use
4355 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4356 $(outdir)/emmentaler-%.svg): remove canary.
4358 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4359 glyphnames if we have a ttf font.
4361 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4363 * Documentation/user/advanced-notation.itely (Font selection):
4364 Corrected reference to the font-family-override.ly example.
4366 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4368 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4369 stem-tremolo object in the stem (or else the stem might not be
4372 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4374 * lily/ttf.cc (print_trailer): only print existing glyphs.
4376 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4378 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4379 position the tremolo based on the position of the notehead.
4381 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4382 notes and update the texidoc line with the new positioning rules.
4384 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4386 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4388 * scripts/lilypond-book.py (Module): set default for linewidth if
4391 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4393 * VERSION (PACKAGE_NAME): release 2.9.0.
4395 * input/regression/stem-tremolo-position.ly: new file.
4397 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4399 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4401 * lily/stem-tremolo.cc (print): position
4402 the tremolo depending only on the end of the stem
4403 and not on the notehead
4404 (raw_stencil): center, on the middle staff line, the
4405 flag that is closest to the end of the stem (previously
4407 (calc_width): add this callback to shorten a tremolo when
4408 it is beamed or it is stemup with a flag
4409 (style): add this callback to make a tremolo rectangular when
4410 it is beamed or it is stemup with a flag
4411 (rotated_box): this is like Lookup::beam but makes a rotated
4412 rectangle instead of a parallelogram
4414 * lily/stem.cc (calc_stem_info): make sure the stem
4415 is long enough to fit the tremolo
4416 (calc-length): reduce the length of tremolo stems since the
4417 tremolo code is now capable of better positioning
4419 * scm/define-grobs.scm: make calc_width the default beam-width
4420 callback for stem-tremolo and add the style callback
4422 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4424 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4427 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4429 * lily/ttf.cc (make_index_to_charcode_map): restore old
4432 2006-03-28 Werner Lemberg <wl@gnu.org>
4434 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4436 2006-03-28 Graham Percival <gpermus@gmail.com>
4438 * THANKS: update for 2.9, add section for Documentation helpers.
4440 * Documentation/topdocs/NEWS.tely: compile fix.
4442 * Documentation/user/ basic-notation, global, advanced-notation,
4443 examples.itely: minor fixes from mailist.
4445 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4447 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4450 * lily/ttf.cc (print_trailer): use it.
4452 * lily/pango-font.cc (get_unicode_name): new function.
4454 * lily/ttf.cc (make_index_to_charcode_map): move function from
4456 (print_trailer): substitute uniXXXX name if applicable.
4458 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4459 (pango_item_string_stencil): use it to generate uniXXXX names.
4461 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4462 note heads, for uniform widths in shape note output.
4463 (overdone_heads): hmm. remove them again.
4465 * scripts/lilypond-book.py (output): add links to filenames.
4467 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4469 * lily/note-collision.cc (get_clash_groups): only consider when
4470 Note_column::dir <> CENTER.
4472 * scripts/lilypond-book.py (get_option_parser): init output_name
4475 2006-03-24 Graham Percival <gpermus@gmail.com>
4477 * Documentation/topdocs/NEWS.tely: add @end itemize
4479 * Documentation/user/ global, advanced-notation: minor
4482 2006-03-23 Graham Percival <gpermus@gmail.com>
4484 * Documentation/user/ lilypond.tely, music-glossary,
4485 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4487 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4489 * mf/GNUmakefile: don't install .enc files.
4491 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4493 * VERSION (PATCH_LEVEL): bump to 2.9.0
4495 2006-03-22 Graham Percival <gpermus@gmail.com>
4497 * Documentation/user/advanced-notation.itely: minor fixes
4500 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4502 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4504 * branch lilypond_2_8
4506 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4508 * scripts/lilypond-book.py (samefile): new function, for windoze
4511 2006-03-21 Graham Percival <gpermus@gmail.com>
4513 * ly/engraver-init.ly: add info about StaffGroup.
4515 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4517 * input/regression/stem-direction-context.ly: idem.
4519 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4523 * input/regression/page-layout-twopass.ly: comment out \markup so
4526 * lily/instrument-name-engraver.cc (finalize): add to instrument
4527 name global System. This also fixes chopped instrument names, but
4528 doesn't crash when there are slurs/beams.
4530 * lily/slur-configuration.cc (add_score): disallow negative slur
4533 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4535 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4537 * lily/instrument-name-engraver.cc (process_music): kludge: add
4538 InstrumentName spanner to axis group of left bound. Fixes chopped
4539 off instrument names in EPS images.
4541 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4543 * scripts/abc2ly.py (option_parser): update to 2.7.40
4545 2006-03-20 Graham Percival <gpermus@gmail.com>
4547 * THANKS: move small doc contributors to SUGGESTIONS.
4549 * Documentation/user/ basic-notation, advanced-notation,
4550 global: small changes from mailist.
4552 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4554 * Documentation/user/advanced-notation.itely (Text marks): update
4555 for new rehearsalMarkAlignSymbol convention.
4557 * VERSION (PATCH_LEVEL): bump version.
4559 * input/test/instrument-name-align.ly: new file.
4561 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4563 * input/test/instrument-name-align.ly: new file. Document how to
4564 align instrument names.
4566 * lily/mark-engraver.cc: remove properties.
4568 * scm/define-context-properties.scm
4569 (all-user-translation-properties): remove align symbol properties
4570 for barnumber/reh. mark.
4572 * lily/break-align-interface.cc (self_align_callback): new
4573 interface, new function. Look at complete alignment. This handles
4574 tunable break alignments in case break-align-symbols are missing.
4576 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4578 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4580 * python/convertrules.py (conv): mark/bar number alignment rule.
4582 * lily/break-align-interface.cc (calc_positioning_done): also
4583 store offset from last visible break-alignment to its
4584 neighbor. This makes alignment on non-visible objects more reliable.
4586 * po/lilypond.pot (Module): ran po-replace.
4588 * input/regression/tie-single-manual.ly (Module): new file.
4590 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4591 look at has_manual_position_.
4592 (from_ties): set has_manual_position_ if tie has staff-position set.
4594 * lily/tuplet-bracket.cc (calc_positions): idem.
4596 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4599 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4601 * scm/define-markup-commands.scm (smallCaps): new markup command
4602 for turning a text to small caps using smaller font size and upper
4605 2006-03-17 Graham Percival <gpermus@gmail.com>
4607 * Documentation/user/ examples, instrument-notation,
4608 advnaced-notation: minor fixes from mailist.
4610 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4612 * Documentation/user/tutorial.itely (First steps): change example
4615 2006-03-17 Graham Percival <gpermus@gmail.com>
4617 * Documentation/user/ examples, advanced: minor changes from mailist.
4619 * THANKS: add Geoff Horton, for documentation stuff.
4621 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4623 * python/lilylib.py (system): revert have_select kludge.
4625 * Documentation/user/tutorial.itely (Commenting input files):
4626 update version numbers in doc.
4628 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4629 bound-padding to multi-measure-interface
4631 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4633 * input/test/engraver-example.ily: update version number.
4635 * VERSION (PACKAGE_NAME): release 2.7.39
4637 * lily/note-spacing.cc (get_spacing): heighten threshold where
4638 accidentals/arpeggios influence previous spacing fully.
4640 * lily/rest.cc (y_offset_callback): only use direction if
4641 staff-position wasn't set before.
4643 * lily/bar-number-engraver.cc: add support for
4644 barNumberAlignSymbol.
4645 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4647 * lily/pointer-group-interface.cc (set_ordered): new function.
4648 (add_unordered_grob): new function.
4650 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4651 to ordered, unless the opposite has been proved. This fixes
4652 random reordering of large object groups across linebreaks,
4655 * lily/main.cc (do_chroot_jail): printf format fix.
4657 * lily/tie-formatting-problem.cc (generate_configuration):
4658 multiply y-shift for dot with direction.
4660 * scm/define-markup-commands.scm (note-by-number): put (magstep
4661 size) in y-attach too.
4663 * Documentation/topdocs/NEWS.tely (Top): show override.
4665 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4666 direction for stems.
4668 2006-03-15 Graham Percival <gpermus@gmail.com>
4670 * Documentation/user/ changing-defaults, global: minor
4673 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4675 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4677 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4678 breakable items after uniformly stretched notes.
4680 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4681 outline with outer edge of note heads. This prevents infinity
4682 problems with tied whole notes.
4684 * scripts/lilypond-book.py (do_file): use os.popen
4686 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4688 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4690 * Documentation/user/invoking.itely: Add ragged-right to bug report
4693 2006-03-14 Graham Percival <gpermus@gmail.com>
4695 * Documentation/user/global.itely: small fix from mailist.
4697 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4699 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4700 file descriptor returned by tempfile.mkstemp() when writing
4701 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4704 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4706 * po/fi.po: newline bugfix.
4708 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4710 * scm/paper.scm (paper-alist): Rounding fixes.
4712 2006-03-13 Graham Percival <gpermus@gmail.com>
4714 * Documentation/user/ changing-defaults, instrument-notation,
4715 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4717 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4721 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4723 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4726 * python/lilylib.py (print_environment): move ps_page_count to
4729 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4731 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4733 * scm/framework-ps.scm (embed-document): new function. Use to
4736 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4738 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4740 * Documentation/user/instrument-notation.itely (Setting simple
4741 songs): Added \book{...} around the full example, so the separate
4742 markups are included in the printed example.
4744 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4746 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4749 * python/lilylib.py (system): rewrite system() using
4750 subprocess. Remove >& redirection trickery.
4752 2006-03-11 Graham Percival <gpermus@gmail.com>
4754 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4755 notation-appendices.itely: minor fixes from mailist.
4757 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4759 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4760 unsplit man also needs images.
4762 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4764 * VERSION (PACKAGE_NAME): 2.7.38 released.
4766 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4768 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4771 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4773 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4774 respects the Score.skipTypesetting property.
4776 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4778 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4779 Prolog. No %%EOF after CFF file.
4781 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4783 * lily/constrained-breaking.cc (get_max_systems): used to return a
4785 (combine_demerits): use pointers to reduce copying data
4786 (calc_subproblem): idem
4787 (get_page_penalty): add page turn penalties
4789 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4791 * Documentation/user/invoking.itely (Invoking lilypond): better
4792 explanation of -e usage.
4794 * lily/main.cc (main_with_guile): don't append to
4795 init_scheme_code_string
4797 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4799 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4801 * scripts/convert-ly.py (do_options): don't print help for
4804 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4805 @code and @example. Update from texinfo.tex from CVS.
4807 2006-03-08 Graham Percival <gpermus@gmail.com>
4809 * Documentation/user/scheme-tutorial.itely: clarifies distances
4810 measured in staff-spaces.
4812 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4814 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4815 consider[k] is true.
4817 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4819 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4820 consider columns that have originals. Unifies spacing for mm
4821 rests around line breaks.
4823 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4824 (set_text_rods): idem.
4825 (calculate_spacing_rods): new function: share code between
4826 set_text_rods and set_spacing_rods.
4827 (set_text_rods): take extents of bounds into account.
4829 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4831 * Documentation/user/basic-notation.itely (Writing music in
4832 parallel): don't use relative.
4834 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4836 * ly/music-functions-init.ly (Module): add shiftDurations
4838 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4840 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4842 * ly/engraver-init.ly: init vocalName to nil.
4844 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4846 * scm/music-functions.scm (music->make-music): bugfix,
4847 KeyChangeEvents are now handled correctly.
4849 * scripts/lilypond-book.py: Add --debug option.
4851 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4853 * python/lilylib.py: add tempfile.
4855 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4857 * VERSION (PACKAGE_NAME): release 2.7.37
4859 * python/lilylib.py (ps_page_count): remove make_ps_images().
4860 (ps_page_count): remove mkdir_p
4861 (system): remove cleanup_temp.
4862 (exit): remove lilypond_version_(check)
4863 (error_log): remove pseudo_filter_p
4868 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4871 * lily/accidental-engraver.cc (make_standard_accidental): only add
4872 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4874 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4875 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4876 Make incompatibilities.
4878 * scm/output-ps.scm (grob-cause): replace backslashes by /
4879 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4881 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4883 * cygwin/GNUmakefile: Install fixes.
4885 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4887 * lily/note-head.cc (head::get_balltype): Compile fix.
4889 * flower/file-name.cc (dos_to_posix): Flower string fix.
4891 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4893 * python/lilylib.py: pychecker cleanups.
4895 * scripts/lilypond-book.py
4896 (Lilypond_snippet.output_print_filename): pychecker cleanups
4898 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4900 * python/lilylib.py (underscore): remove identify() , warranty()
4902 * ps/music-drawing-routines.ps: change Border routine for GSView
4905 * lily/stem.cc (height): use quantize-positions. This triggers
4906 set_stem_lengths, so scripts on beamed stems are handled correctly.
4908 * lily/side-position-interface.cc (aligned_side): check if edges
4909 of script are inside staff. Fixes accent of edge of the staff.
4911 * input/regression/staccato-pos.ly: more examples.
4913 * stepmake/aclocal.m4 (depth): fix bashism.
4915 * lily/lyric-combine-music-iterator.cc: move from
4916 new-lyric-combine-iterator.cc
4917 (process): add pending_grace_lyric_ member to delay lyrics on
4920 * lily/system-start-text.cc (print): suicide if we don't have any
4921 elements. Fixes hara kiri'd instrument names.
4923 * scripts/mup2ly.py (Module): remove.
4925 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4927 * Documentation/user/global.itely (A single music expression):
4928 close @lilypond properly
4930 * lily/volta-bracket.cc (modify_edge_height): change from
4931 after_line_breaking_callback. Suicide last bracket if appropriate.
4933 * python/lilylib.py: strip getopt support
4935 * scripts/etf2ly.py (do_options): use optparse
4937 * scripts/midi2ly.py: optparse, strip lilylib copy.
4939 * scripts/abc2ly.py (voices): use optparse.
4941 * stepmake/stepmake/generic-vars.make: new function absdir.
4943 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4945 * scripts/lilypond-book.py (find_file): use global_options for
4948 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4951 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4953 * python/lilylib.py (get_global_option): ughness for extracting
4954 global options from lilylib.
4955 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4957 * scripts/lilypond-book.py (get_option_parser): use optparse for
4958 option handling. Put options in global_options variable.
4960 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4962 * Documentation/index.html.in: clarify.
4964 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4966 * scm/layout-page-layout.scm (write-page-breaks): add a
4967 music-system-heights property to the page layout output.
4969 * scm/page.scm (make-page-stencil): take footer into account when
4970 computing the 'space-left page property
4971 (annotate-space-left): take footer into account when annonating
4974 2006-02-28 Graham Percival <gpermus@gmail.com>
4976 * Documentation/user/ advanced-notation, global: more (final)
4977 docs for music expressions, removed special fermatas.
4979 2006-02-27 Graham Percival <gpermus@gmail.com>
4981 * Documentation/user/ basic-notation, global: minor changes
4984 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
4986 * scm/framework-ps.scm:
4987 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4988 layer for inf? and nan? from framework-ps to lily-library.
4990 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
4992 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4993 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4995 * buildscripts/substitute-encoding.py (Module): remove file.
4997 * mf/GNUmakefile: more PFA strippage.
4999 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
5001 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
5004 * scm/framework-ps.scm: remove font name munging.
5006 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
5008 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5010 * scm/markup.scm (define-markup-command): change
5011 def-markup-command to define-markup-command
5013 * scm/music-functions.scm (define-music-function): change
5014 def-music-function to define-music-function.
5016 * python/convertrules.py (conv): rules for def-music-function
5017 and def-markup-commands
5019 * Documentation/user/programming-interface.itely,
5020 input/no-notation/display-lily-tests.ly,
5021 input/regression/lily-in-scheme.ly,
5022 input/regression/markup-user.ly,
5023 input/regression/music-function.ly, input/regression/tie-chord.ly,
5024 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5025 ly/gregorian-init.ly: use new macro names (define-music-function,
5026 define-markup-command).
5028 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5030 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5031 (output): add comments to lp-book latex output.
5033 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5036 2006-02-23 Graham Percival <gpermus@gmail.com>
5038 * Documentation/user/ tutorial, global: minor changes.
5040 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5042 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5043 blocks (for make 3.80)
5045 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5046 \notemode so that user should not have to explicitely type it.
5048 * scm/define-music-display-methods.scm: various
5049 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5052 * input/no-notation/display-lily-tests.ly: new tests for
5053 \applyOutput and \applyContext
5055 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5057 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5058 changed it slightly so that the number of systems returned by
5059 solve () will be the same as the last value passed to resize
5060 (). I've also added more documentation, removed casts, fixed style
5061 problems and put in some recovery if constraints aren't satisfied."
5063 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5065 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5066 for emacs < 22 compatibility.
5067 (count-rexp): Use it.
5068 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5069 substring juggling (Milan Zamazal).
5071 2006-02-23 Graham Percival <gpermus@gmail.com>
5073 * Documentation/user/ basic-notation, advanced-notation,
5074 global.itely, invoking.itely, tutorial,itely:
5075 minor fixes from mailist.
5077 * scm/define-markup-commands.scm: improve docs of \filled-box.
5079 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5081 * Documentation/index.html.in: changes concern the previous release.
5083 * input/regression/+.ly: cultivate typographical terminology.
5085 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5087 * scm/define-grob-interfaces.scm (parentheses-interface): add
5088 padding to parentheses-interface.
5090 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5091 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5093 * VERSION (PATCH_LEVEL): release 2.7.36
5095 * lily/slur.cc: add avoid-slur (ugh.)
5097 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5098 intersection gets smaller. This fixes slurs over extreme points.
5100 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5101 stems with neutral-direction set.
5103 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5105 * lily/open-type-font.cc (load_table): format error.
5107 * lily/change-iterator.cc (process): format fix.
5109 * flower/include/international.hh (_f): idem.
5111 * flower/include/std-string.hh: add format printf attribute.
5113 * scm/define-grobs.scm (all-grob-descriptions): height of all
5114 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5116 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5119 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5121 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5123 * input/regression/: upgraded syntax for some files.
5125 * THANKS: Add bughunters.
5127 2006-02-22 Graham Percival <gpermus@gmail.com>
5129 * Documentation/user/ invoking.itely, advanced-notation.itely,
5130 global.itely: long-awaited "let's make chapter 10 not suck"
5131 update. Rearrange chapter 10; now called "global issues",
5132 addresses file structure, etc. Some info from other files
5133 moved into global.itely.
5135 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5137 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5138 catch trill-span-event notes.
5140 * Documentation/user/examples.itely (Ancient notation templates): typo.
5143 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5145 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5147 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5149 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5151 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5152 froum Laissez_vibrer_engraver.
5154 * ly/declarations-init.ly (repeatTie): add \repeatTie
5156 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5158 * scm/define-grob-properties.scm (all-user-grob-properties): add
5159 head-direction property.
5161 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5162 from_lv_ties. Take head direction argument.
5164 * lily/semi-tie-column.cc: rename from
5165 laissez-vibrer-tie-column.cc. Rename class too.
5167 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5170 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5172 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5174 (find_breaks): idem.
5176 2006-02-21 Graham Percival <gpermus@gmail.com>
5178 * Documentation/user/advanced-notation.itely: fixed make-moment]
5181 * Documentation/user/basic-notation.itely: more clarification to
5184 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5186 * lily/include/constrained-breaking.hh (class
5187 Constrained_breaking): new file.
5189 * lily/constrained-breaking.cc (resize): new file.
5191 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5193 * Documentation/user/advanced-notation.itely (Clusters): insert
5196 * lily/tie-column.cc (calc_positioning_done): support for
5199 * lily/tie-formatting-problem.cc
5200 (generate_extremal_tie_variations): factor out.
5201 (score_ties_configuration): annotate all tie
5202 (print_ties_configuration): new routine.
5203 (generate_configuration): nudge extremal ties outside of the head
5205 (score_ties_configuration): oops. convert to staff-space before
5206 determining position symmetry.
5208 2006-02-20 Graham Percival <gpermus@gmail.com>
5210 * Documentation/user/*-notation.itely: misc minor editing,
5211 shifting doc sections around.
5213 * Documentation/user/*-notation-itely, global.itely,
5214 changing-defaults.itely: added new stuff from NEWS.
5216 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5220 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5222 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5223 lilypond --verbose for lp-book.
5225 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5226 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5228 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5229 $(buildscript-dir) iso. absolute depth.
5231 * buildscripts/genicon.py (dir): thinko.
5233 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5235 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5237 * scm/output-lib.scm: swap darkcyan/darkyellow
5239 * THANKS: Add bughunters.
5241 2006-02-19 Graham Percival <gpermus@gmail.com>
5243 * Documentation/user/programming-interfaces.itely: fixed example.
5245 * Documentation/user/instrument-notation.itely: fix @{ @}.
5247 * scm/script.scm: add avoid-slur for \open.
5249 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5251 * lily/tie-formatting-problem.cc (score_configuration): use
5252 sliding score for min-length.
5254 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5255 spaghetti for icons.
5257 * buildscripts/genicon.py (program_name): new file.
5259 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5261 (generate_configuration): for small ties, also look for collisions
5262 at Y + DIR*h + DELTA_Y.
5263 (get_variations): consider variation for dot positions too.
5265 * lily/side-position-interface.cc (aligned_side): take abs for
5266 quantized rounded position. Fixes tenuto below staff.
5268 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5269 markers when necessary.
5271 * lily/program-option.cc (internal_set_option): add
5272 strict_infinity_checking option.
5274 * scm/output-lib.scm (cyan): swap yellow and cyan.
5276 2006-02-19 Graham Percival <gpermus@gmail.com>
5278 * darwin.patch: trivial linenumber update.
5280 * Documentation/user/ {various}: `\context foo = named' changed
5281 to `\new foo = "name"' in docs.
5283 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5285 * scm/stencil.scm (annotate-y-interval): use it.
5287 * scm/lily-library.scm (interval-sane?): new function.
5289 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5292 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5295 * flower/include/std-vector.hh (iterof): add iterof macro.
5297 * lily/enclosing-bracket.cc (width): new function.
5299 * lily/align-interface.cc (align_elements_to_extents): reinstate
5302 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5304 * Documentation/index.html.in: fix spelling: thankyous.
5306 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5308 * lily/lyric-hyphen.cc: typo.
5310 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5312 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5313 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5316 * VERSION: release 2.7.35
5318 * lily/beam.cc (get_default_dir): oops. Take abs () for
5320 (get_default_dir): use extreme position criterion only in absence
5321 of forced stem directions.
5323 * VERSION (PATCH_LEVEL): bump VERSION.
5325 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5326 dependencies. Necessary for -jX builds.
5328 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5330 * lily/relocate.cc (setup_paths): Yet another const fix.
5332 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5334 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5336 * lily/relocate.cc (setup_paths): oops.
5338 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5340 * Documentation/index.html.in: order links: html before PDF.
5342 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5344 * lily/tie-column-format.cc (Module): remove.
5346 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5348 * lily/text-spanner.cc (print): idem.
5350 * lily/dynamic-text-spanner.cc (print): only print line if longer
5353 * lily/auto-change-iterator.cc (change_to): formatting.
5355 * lily/beam.cc (get_default_dir): take extreme note head as input
5358 * lily/tie.cc (get_default_dir): only look directions for visible
5361 * lily/side-position-interface.cc (aligned_side): oops. Don't
5362 mutiply with direction. This fixes quantized (staccato, tenuto)
5363 scripts below notes.
5365 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5366 direction. Fixes c-lyrics-center-align.ly
5368 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5370 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5373 * lily/std-string.cc:
5374 * lily/include/std-vector.hh (split_string): Move and rename from
5375 lily/include/misc.hh, lily/misc.cc. Update callers.
5377 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5379 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5381 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5383 * flower/test-file.cc: New file.
5385 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5388 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5390 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5392 * flower/include/file-storage.hh: remove file.
5394 * lily/include/midi-item.hh (class Midi_track): idem.
5396 * lily/include/source.hh (class Sources): idem.
5398 * lily/include/performance.hh (class Performance): use vector
5401 * flower/include/cons.hh (class Cons): remove file.
5403 * flower/include/flower-proto.hh: remove template cruft.
5405 * lily/include/font-metric.hh: use size_t not vsize for indices.
5407 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5410 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5412 * lily/include/paper-book.hh (class Paper_book):
5413 make get_system_specs() public.
5415 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5416 the force=10000 case if we don't have a current-best.
5418 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5421 * flower/include/flower-proto.hh: remove outdated templates.
5423 * scm/page.scm: use annotate-spacing
5425 2006-02-15 Graham Percival <gpermus@gmail.com>
5427 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5429 * THANKS: moved Erlend Aasland to contributors.
5431 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5433 * config.hh.in: remove HAVE_PANGO_16
5435 * lily/tuplet-bracket.cc (calc_positions): multiply with
5436 staff-space for beam case. This fixes tuplets+beams on scaled
5439 * config.hh.in: remove all Kpathsea related defines.
5441 * lily/dot-column.cc (side_position): reach stem via dots->
5442 head->stem. Inspect all stems for dot collisions.
5444 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5447 * lily/bar-number-engraver.cc (process_music): document function
5450 * lily/score.cc (default_rendering): add pscore, not systems
5453 * lily/paper-book.cc (get_system_specs): separate generation of
5456 * flower/include/std-vector.hh: don't include config.hh
5458 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5460 * flower/include/std-vector.hh: Better wrapper compatibility with
5463 * flower/include/flower-proto.hh: Remove cheap forward declaration
5466 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5468 2006-02-14 Graham Percival <gpermus@gmail.com>
5470 * Documentation/user/invoking.itely: add warning about command line.
5472 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5474 * lily/include/lily-proto.hh: add Prob, rm Page.
5476 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5478 * VERSION: release 2.7.34
5480 * lily/relocate.cc (framework_relocation): show canary if
5481 GHOSTSCRIPT_VERSION undefined.
5483 * GNUmakefile.in: remove $(VERSION) symlink.
5485 * lily/relocate.cc (setup_paths): add +
5487 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5489 * Documentation/index.html.in: specify sizes for all big HTML pages.
5491 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5493 * config.hh.in: remove @FRAMEWORKDIR@
5495 * lily/system-start-text.cc (get_stencil): new file: separate out
5496 system-start-delimiter text support.
5498 * input/**ly: replace \context with \new where appropriate.
5502 * lily/slur-scoring.cc (get_base_attachments): use
5503 robust_relative_extent. This fixes problems with empty paper-columns.
5505 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5507 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5509 * scm/define-music-properties.scm (all-music-properties):
5510 create-new property.
5512 * lily/context-specced-music-iterator.cc (construct_children):
5513 inspect 'create-new property iso. magical $uniqueContextId context
5516 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5518 * lily/context-key-manager.cc (Module): new file. Encapsulate
5519 object key generation.
5521 * lily/include/context-key-manager.hh (Module): new file.
5523 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5525 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5528 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5530 (reloc_b): excise --enable-framework-dir
5532 * lily/relocate.cc (framework_relocation): use getenv
5533 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5535 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5537 * flower/include/std-string.hh:
5538 * flower/include/std-vector.hh: Finish std:: conversion; move
5539 flower extensions from std:: namespace. Update users.
5541 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5542 their expansion to vector<*>. Update users.
5544 2006-02-10 Graham Percival <gpermus@gmail.com>
5546 * Documentation/user/invoking.itely: add example to File structure.
5548 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5549 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5551 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5553 * ly/paper-defaults.ly: typo.
5555 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5556 set_parent() for parentheses. This will make it show up in bbox
5559 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5560 ly:grob-common* functions.
5562 * lily/grob-scheme.cc (LY_DEFINE):
5563 ly:grob-common-refpoint-of-array: new function
5564 ly:grob-common-refpoint: new function
5565 ly:grob-relative-coordinate: new function
5567 * lily/instrument-name-engraver.cc (process_music): use
5568 Text_interface::is_markup(). This fixes \markup on instrument names.
5570 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5573 * lily/slur.cc (print): idem.
5575 * lily/tie.cc: add line-thickness for ties.
5577 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5579 * scm/output-svg.scm: Document diversion from GNU coding standards
5580 as a workaround for a bug in Microsoft Internet Explorer.
5582 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5584 * lily/instrument-name-engraver.cc (process_music): use
5585 is_markup() iso. is_string()
5587 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5589 * lily/percent-repeat-engraver.cc (process_music): only look at
5590 main_part_ for % repeats.
5592 * lily/stem-tremolo.cc (get_beam_translation): new function.
5593 (calc_slope): new function.
5594 (height): don't use real slope.
5596 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5598 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5599 new connect-to-neighbor, control-points and staff-padding
5600 properties to make ligature brackets showing up again.
5602 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5604 * VERSION: release 2.7.33
5606 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5609 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5610 remove applyOutput example.
5611 (Objects connected to the input): document \tweak, \parenthesize
5613 * lily/relocate.cc (prefix_relocation): allow "current"
5614 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5615 changing VERSION in a lily tree less painful.
5617 * input/regression/parenthesize.ly: new file.
5619 * scm/output-lib.scm (parenthesize-element): new function.
5621 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5623 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5625 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5626 cause: accidentals are caused by note heads, not note events.
5628 2006-02-08 Graham Percival <gpermus@gmail.com>
5630 * darwin.patch: small patch from Erlend, thanks!
5632 * Documentation/user/basic-notation.itely: add stem-neutral example.
5634 * Documentation/user/putting.itely: clarifications.
5636 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5639 note, add more guidelines to what should go into NEWS.
5641 * input/sakura-sakura.ly: document how to override font.
5643 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5645 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5647 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5649 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5651 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5652 convertrules. Add explicit grouping, needed for python2.2.
5654 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5656 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5658 2006-02-07 Graham Percival <gpermus@gmail.com>
5660 * Documentation/user/global.itely: fix line-width in (text) docs.
5662 * Documentation/user/lilypond-book.itely: same.
5664 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5666 * VERSION (PACKAGE_NAME): release 2.7.32
5668 * Documentation/topdocs/NEWS.tely (Top): document new variable
5671 * flower/include/array.icc (Message): remove file.
5673 * flower/include/std-vector.hh: make sure vsize and VPOS are
5674 defined for binary_search_bounds().
5676 * flower/std-string.cc (std): add to_string(long unsigned).
5678 * configure.in (gui_b): excise std_string option.
5679 (gui_b): excise std_vector option.
5681 * flower/string.cc (Module): excise flower array & string
5683 * flower/include/std-string.hh: excise flower string.
5685 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5687 * python/convertrules.py (lilypond_version_re_str): require
5688 only numbers and dots in \version string.
5690 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5692 * lily/system-start-delimiter.cc (print): allow style = text too.
5694 * lily/system-start-delimiter-engraver.cc
5695 (acknowledge_system_start_text): new function, also add add to
5696 support of system-start-text (instrument names). This fixes
5697 instrument names on piano staves.
5699 * lily/instrument-name-engraver.cc: rewrite. Use
5700 system-start-delimiter approach. This save memory and cpu.
5702 * scm/define-grobs.scm (all-grob-descriptions): remove
5703 instrument-name from break-alignment.
5705 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5707 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5709 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5712 * configure.in (std_vector): On by default.
5714 * lily/include/font-metric.hh:
5715 * lily/include/tfm-reader.hh:
5716 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5719 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5721 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5723 * VERSION (PACKAGE_NAME): 2.7.31
5725 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5726 EPS edge at 0, but take minimum with left-overshoot. This fixes
5727 cut off system start delims.
5729 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5730 hack: add to axis group if not added yet. This fixes hara kiri'd
5733 * lily/hara-kiri-group-spanner.cc
5734 (force_hara_kiri_in_y_parent_callback): fix signatures.
5736 * lily/hairpin.cc (print): check next hairpin to see whether or
5737 not to be continuing.
5739 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5741 * Remove trailing whitespace from makefiles.
5743 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5746 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5748 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5750 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5752 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5754 * configure.in: Use it.
5756 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5758 * scm/music-functions.scm (pitch-of-note): new function.
5760 * ly/music-functions-init.ly: add \octave and \addquote
5762 * lily/parser.yy (music_function_chord_body): softcode \octave.
5763 (lilypond_header): softcode \addquote
5765 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5767 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5768 array.hh, parray.hh at all. Getting ready to flip the
5771 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5773 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5776 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5778 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5780 * flower/include/array.hh: typo.
5782 2006-02-02 Graham Percival <gpermus@gmail.com>
5784 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5786 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5788 * flower/include/pqueue.hh: Derive from std::vector.
5790 * flower/include/parray.hh: Conform to std::vector interface.
5793 2006-02-02 Graham Percival <gpermus@gmail.com>
5795 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5797 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5799 * flower/file-path.cc (is_file): remove if 0 section.
5801 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5802 selecting afii61352.
5804 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5806 * flower/include/std-vector.hh (boundary): Oops, reverse.
5808 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5809 remove superfluous `d'.
5811 * flower/include/std-vector.hh (boundary, top): Detach from class.
5812 Remove empty vector shell.
5814 * flower/include/array.hh (reverse, swap): Detach from class.
5817 * flower/include/std-vector.hh
5818 * flower/include/array.hh (concat): Globally change to insert ().
5821 * flower/include/std-vector.hh
5822 * flower/include/parray.hh
5823 * flower/include/array.hh (elem, elem_ref): Globally replace by
5826 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5828 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5830 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5831 anticipate on identifier substitutions.
5833 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5835 * flower/include/std-vector.hh (insert): Remove, replace by
5836 std::vector interface. Update callers.
5838 * flower/include/array.icc (insert): Change signature to
5839 match std::vector interface.
5841 * flower/include/array.icc (vector_sort): Bugfix.
5843 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5845 * lily/parser.yy (output_def_head_with_mode_switch): new
5846 production. Result: dashes and underscores may be used in the
5849 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5851 * python/convertrules.py (conv): oops. One slash too much.
5853 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5855 * flower/include/std-vector.hh (sort): Remove, replace by
5856 ::vector_sort. Update callers.
5858 * flower/include/std-vector.hh (slice): Remove. Update callers.
5861 * flower/test-std.cc (vector_sort): New test.
5863 2006-02-01 Graham Percival <gpermus@gmail.com>
5865 * Documentation/user/putting.itely: fixes from Erik.
5867 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5869 * flower/test-std.cc: Add simple unit test for vector migration.
5871 * stepmake/stepmake/test*: Unit test support.
5873 * flower/include/std-vector.hh (del): Remove. Use erase (),
5876 * flower/include/array.hh (begin, end): Add.
5879 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5881 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5882 std::string not String.
5884 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5887 * lily/prob.cc (Prob): copy type_ too.
5889 * lily/lily-guile.cc (mangle_cxx_identifier): new
5890 function. Class_bla::foo_bar_[px] ->
5891 ly:class-bla::foo-bar[?!]. Changes throughout
5893 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5895 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5897 * lily/beam.cc (calc_direction): take dir from visible stem in
5900 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5902 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5903 Fix -1, >=0 boundary checks for unsigned vsize.
5905 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5906 loop for unsigned vsize.
5908 * configure.in (--enable-std-vector): New option.
5909 (--enable-std-string): On by default.
5911 * flower/include/std-vector.hh: New file. Enable switch to
5912 std::vector, update client code.
5914 2006-01-30 Graham Percival <gpermus@gmail.com>
5916 * scm/document-translation.scm: clarify "this context is also
5917 known as". Thanks, Werner!
5919 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5921 * Documentation/user/invoking.itely: small fix from Don.
5923 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5925 * scm/lily.scm (define-scheme-options): rename option
5926 preview-include-book-title to book-title-preview
5927 (define-scheme-options): move force-eps-font-include (from paper
5928 block) to eps-font-include -d option.
5930 * VERSION (PATCH_LEVEL): release 2.7.30
5932 * input/bach-schenker.ly (staffPiano): new file.
5934 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5936 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5939 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5941 * ps/lilyponddefs.ps: remove start-system, stop-system,
5942 start-page fluff. This saves putting { } code on the stack, fixing
5943 stack overflows when including EPS files.
5945 2006-01-29 Graham Percival <gpermus@gmail.com>
5947 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5949 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5951 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5953 2006-01-28 Graham Percival <gpermus@gmail.com>
5955 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5957 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5959 * input/mutopia/claop.py: Update.
5961 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5963 * input/regression/completion-heads.ly (texidoc): fix.
5965 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5967 * lily/tie-formatting-problem.cc
5968 (set_ties_config_standard_directions): use abs iso fabs for ints.
5970 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5972 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5973 little less than noteheight, to prevent overlaps in chords.
5975 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5976 head, and fudge stem-attachment.
5978 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5980 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5982 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
5984 * lily/main.cc (main): Debugging aid: catch exceptions.
5986 * flower/std-string.cc (to_string): Robustification. Fixes midi
5987 output with std::string.
5989 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
5991 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5993 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5995 * Fix -DSTRING_UTILS_INLINED.
5997 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5999 * VERSION (PATCH_LEVEL): release 2.7.29
6001 * lily/relocate.cc (setup_paths): mingw uses std string too.
6003 * lily/*.cc: various fixes for substr(ARG).
6005 * lily/sustain-pedal.cc (print):
6007 * flower/file-name.cc (slashify): use std strings.
6009 * flower/string-convert.cc: remove publib.h
6011 * scm/define-markup-commands.scm (verbatim-file): new markup
6012 command \verbatim-file
6014 * Documentation/topdocs/NEWS.tely: fixup URLs
6016 * input/regression/alignment-vertical-manual-setting.ly (Module):
6019 * lily/align-interface.cc (align_elements_to_extents): overwrite
6020 translations with numbers in alignment-offsets from left bound
6022 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6023 (page-translate-systems): new function: take into account Y-offset.
6025 * Documentation/topdocs/NEWS.tely (Top): document new features.
6027 * input/regression/page-layout-manual-position.ly (Module): new
6030 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6032 * flower/file-path.cc (path::parse_path): Oops.
6034 * Finish std::string interface. For now, use std:: marker
6035 throughout for easy s/r.
6037 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6039 * Documentation/user/putting.itely (Score is a single musical
6041 (Score is a single musical expression): more typos.
6043 * scm/page.scm (annotate-space-left): thinko.
6044 (annotate-page): more thinkos.
6046 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6048 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6049 for different \score blocks separately.
6050 (post-process-pages): put write-page-layout into paper block.
6052 * lily/output-def.cc (get_parser): new file.
6054 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6057 * lily/include/output-def.hh (class Output_def): add parser_ member.
6059 * input/regression/page-layout-twopass.ly (Module): new file.
6061 * scm/lily.scm: remove cpp hack.
6063 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6065 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6067 * GNUmakefile.in (c-clean): New target.
6069 * flower/include/std-string.hh: String/std::string compatibility:
6070 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6073 * flower/rational.cc:
6074 * flower/include/rational.hh:
6077 * flower/include/offset.hh:
6079 * flower/interval.cc:
6080 * flower/include/interval.hh:
6082 * flower/string-convert.cc:
6083 * flower/include/string-convert.hh: Use std::string [interface].
6086 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6088 * Documentation/index.html.in: clean up.
6090 2006-01-25 Graham Percival <gpermus@gmail.com>
6092 * Documentation/user/putting.itely: another new untested doc section.
6094 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6096 * scm/layout-page-layout.scm (write-page-breaks): write
6097 \spacingTweaks #ALIST. Handle grace timing.
6099 * scm/: more imports.
6101 * scm/page.scm (make-page): add footer/header.
6102 (annotate-space-left): revise: only take page argument.
6103 (layout->page-init): new function.
6105 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6106 version of the system/spacing/linebreak hack writing to the output
6108 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6111 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6114 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6116 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6118 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6120 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6121 handling to page.scm
6123 * lily/prob-scheme.cc (LY_DEFINE): new file.
6124 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6126 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6129 * lily/music.cc (derived_mark): derive Music from Prob.
6131 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6133 * lily/prob.cc (Module): Implement Prob (Property Object), object
6134 with shared and r/w property alists.
6136 * lily/include/prob.hh (Module): new file. Declare Prob.
6138 * flower/string.cc: remove is_empty().
6140 * flower/include/string.hh (class String): remove String:: qualifier.
6142 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6143 substitute appropriate functions.
6145 * flower/include/string.hh (class String): remove to_str0 and
6146 is_empty(). S&R everywhere.
6148 2006-01-23 Graham Percival <gpermus@gmail.com>
6150 * Documentation/user/basic-notation.itely: add hairpin
6151 after-linebreak tweak to commonprop.
6153 * Documentation/user/putting.itely: added two new sections.
6155 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6157 * flower/international.cc:
6158 * flower/include/international.hh:
6160 * flower/getopt-long.cc:
6161 * flower/include/getopt-long.hh: Use std::string [interface].
6164 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6166 * stepmake/stepmake/executable-rules.make: Add dependency on
6169 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6171 * flower/file-path.cc:
6172 * flower/include/file-path.hh: Use std::string [interface].
6175 * flower/direction.cc:
6176 * flower/axis.cc: Unused. Remove.
6178 * configure.in (--enable-std-string): New option.
6180 * flower/std-string.cc:
6181 * flower/include/std-string.hh: New file.
6183 * flower/file-name.cc[STD_STRING]:
6184 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6186 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6188 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6190 * scm/define-markup-commands.scm (with-dimensions):
6191 with-dimensions markup command.
6193 * input/test/font-table.ly: use it.
6195 * lily/open-type-font.cc (glyph_list): new function.
6197 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6199 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6201 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6203 * ly/music-functions-init.ly (parallelMusic): new music function
6204 for parallel music entry.
6206 * scm/define-music-properties.scm (all-music-properties): new
6207 'void music property
6209 * scm/music-functions.scm (ly:music-message): make public, to be
6210 used in music function definitions
6212 * scm/lily-library.scm (collect-music-for-book): discard music
6213 when the 'void property is set.
6215 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6217 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6219 * mf/GNUmakefile: idem.
6221 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6223 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6225 * Documentation/user/notation-appendices.itely (The Feta font):
6228 * input/test/font-table.ly: new file. Generate font table within lily.
6230 * Documentation/user/notation-appendices.itely (The Feta font):
6231 use new font-table.ly file.
6233 * stepmake/stepmake/install-out-targets.make
6234 (local-install-outfiles): only create directory if
6235 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6237 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6239 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6241 * VERSION (PACKAGE_NAME): release 2.7.28
6243 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6244 the right font from a Mac dfont.
6245 (write-preamble): don't forget directory, only look at files.
6247 This fixes problems with TTF files in dfonts that don't match
6248 their PostScript names.
6250 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6251 PS name from TTF font.
6253 * input/regression/tie-manual.ly: document new feature.
6255 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6257 * VERSION (MY_PATCH_LEVEL): bump to .28
6259 * Documentation/user/basic-notation.itely (Ties): add tie examples
6262 * lily/tie-formatting-problem.cc (score_ties_configuration):
6263 symmetry penalties for outer ties.
6265 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6267 * lily/tie-formatting-problem.cc (generate_configuration)
6268 (set_manual_tie_configuration): skip non-pair manual
6269 tie-configuration, so you can set individual ties as
6271 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6273 * input/regression/tie-chord.ly: use generateTiePattern to
6276 * lily/tie-formatting-problem.cc (peak_around): new function.
6277 (score_configuration): use sliding criterion for staff line collisions.
6278 (score_configuration): idem for dot collisions.
6279 (generate_configuration): use separate stem_gap for gap to stem.
6281 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6282 separate penalty factors for x and y distance.
6283 (struct Tie_details): separate penalties for tip and center line collisions.
6285 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6287 * lily/tie-formatting-problem.cc (generate_configuration): make
6288 large ties avoid stafflines in the horizontal section.
6289 (score_configuration): use softcoded penalties
6290 (score_aptitude): idem.
6292 * lily/tie-helper.cc (from_grob): softcode tie details
6294 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6296 * lily/staff-symbol-referencer.cc (on_line): rename from
6299 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6301 * ly/music-functions-init.ly: remove duplicate tag.
6303 * lily/include/*.hh: GCC 4.1 fixes.
6305 006-01-16 Erlend Aasland <erlenda@gmail.com>
6307 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6309 * scm/define-music-types.scm: fix bug in desc. string
6310 for OverrideProperty
6312 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6314 * scripts/lilypond-book.py: bugfix
6316 * scm/define-music-types.scm: fix typos.
6318 2006-01-14 Graham Percival <gpermus@gmail.com>
6320 * Documentation/user/ basic-notation.itely, global.itely,
6321 advanced-notation.itely, instrument-notation.itely: small
6322 additions (bugs and commonly tweaked properties).
6324 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6326 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6327 detection of mingw build.
6328 (MINGW_BUILD): opps.
6330 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6332 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6335 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6337 * scm/music-functions.scm (skip->rest): add skip->rest
6339 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6341 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6344 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6345 config dirs. Aids debugging.
6346 (display_config): also display config files.
6348 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6350 * VERSION: release 2.7.27
6352 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6353 for determining bar size.
6355 * lily/staff-symbol.cc (print): place lines at distance line-positions
6357 * scm/define-grob-properties.scm (all-user-grob-properties): add
6360 * lily/staff-symbol.cc (height): new function.
6362 * input/regression/staff-line-positions.ly: new file.
6364 2006-01-06 Graham Percival <gpermus@gmail.com>
6366 * input/test/add-staccato.ly: remove reference to old file.
6368 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6370 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6371 lilypond binary too.
6373 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6375 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6377 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6379 * scripts/midi2ly.py: Bugfix: Declare datadir.
6381 * make/ly-rules.make:
6382 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6383 that seems to be gone). Fixes make web.
6385 * The grand 2005-2006 replace.
6387 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6389 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6391 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6392 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6393 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6394 like -dgs-font-load.
6396 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6397 remove absolute path to lilypond binary.
6399 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6401 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6403 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6405 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6407 * mf/GNUmakefile: remove broken dvips map symlink.
6409 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6412 * configure.in: Cosmetic fixes.
6414 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6416 * Documentation/user/music-glossary.tely (Pitch names): Added
6417 Spanish pitch names and durations, thanks to Ernesto Gancedo
6419 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6421 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6422 init. Fixes verbose printing of .scm files.
6424 * stepmake/aclocal.m4: add spaces before - options.
6426 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6428 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6429 of path search in local block variable.
6431 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6433 * configure.in (NCSB_DIR): --enable-ncsb-dir
6434 (LINK_GXX_STATICALLY): denko.
6436 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6438 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6439 use locate to find c059033l.pfb.
6441 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6443 * lily/tie-formatting-problem.cc
6444 (problem::generate_base_chord_configuration): Use my_round (was
6447 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6448 do not invoke mbrtowc.
6450 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6452 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6454 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6456 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6458 * Documentation/user/invoking.itely (svg): revise.
6460 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6462 * lily/lexer.ll: use sourcefilename iso. renameinput.
6464 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6466 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6467 <PostScriptName>.ttf instead of c059XXXttf.
6469 * lily/program-option.cc (LY_DEFINE): special support for
6470 --verbose, so it works before option init too.
6472 * mf/GNUmakefile (local-install): oops.
6474 * lily/lyric-hyphen.cc (print): oops.
6476 * buildscripts/pfx2ttf.fontforge: new file.
6478 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6479 ($(outdir)/%.ttf): new rule.
6481 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6484 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6487 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6489 * VERSION: release 2.7.26
6491 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6493 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6495 * lily/font-config.cc (init_fontconfig): verbosity.
6497 * THANKS: add Muziekacademie Lede.
6499 * scripts/musicxml2ly.py (print_voice_definitions): new function
6500 (print_score_setup): new function
6501 (convert): read part definition to output staves properly.
6503 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6506 * python/musicexp.py (Output_printer.__init__): use _ in data
6508 (Output_printer.unformatted_output): new function: no formatting,
6510 (Duration.get_length): remove isinstance() checks for
6511 Output_printer everywhere.
6513 * input/regression/lyrics-bar.ly (texidoc): add
6514 Separating_line_group_engraver.
6516 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6518 * lily/relocate.cc (framework_relocation): New function,
6519 factored from set_relocation ().
6520 (prefix_relocation): Rename from set_relocation ().
6521 (setup_paths): Use it.
6523 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6525 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6526 numbers. Patch by Erlend Aasland.
6528 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6530 * lily/font-config.cc (init_fontconfig): print warning if cache
6531 file is not existant.
6533 * lily/main.cc: don't use #ifdef but #if
6535 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6537 * lily/grob-property.cc (internal_set_property): don't abort on
6538 calculation-in-progress.
6540 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6542 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6543 connect-to-neighbor property not connect-to-other
6545 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6546 (LY_DEFINE): oops. don't forget protection.
6548 * flower/parse-afm.cc (Module): strip AFM handling completely.
6550 * lily/stencil-expression.cc: idem.
6552 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6554 * lily/function-documentation.cc (ly_add_function_documentation):
6555 use static member iso. Protected_scm
6557 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6559 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6561 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6563 * lily/relocate.cc (set_env_dir): New function.
6564 (set_relocation): Use it to fix setting PANGO_PREFIX.
6566 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6568 * input/regression/stem-direction-context.ly: remove rest.
6570 * lily/melody-engraver.cc (process_music): restart for bar lines.
6571 (acknowledge_slur): restart for slurs.
6573 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6575 * Documentation/user/invoking.itely: describe how to view SVG
6576 output using Inkscape which replace embedded fonts with OTF fonts.
6578 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6580 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6582 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6584 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6587 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6589 * VERSION (PACKAGE_NAME): release 2.7.25
6591 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6593 * input/regression/stem-direction-context.ly: new file.
6595 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6597 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6600 * ly/engraver-init.ly: add Melody_engraver
6602 * lily/beam.cc (calc_direction): use default-direction
6603 iso. get_default_direction()
6605 * scm/define-grob-properties.scm (all-user-grob-properties): add
6606 default-direction property.
6608 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6610 * lily/stem.cc (calc_default_direction): remove
6611 Stem::get_default_direction, use default-direction with callback
6614 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6616 * lily/melody-engraver.cc: new file. Acknowledge stems for
6617 interpolated stem directions.
6619 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6621 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6623 * lily/slur-configuration.cc (fit_factor): more robust check for
6624 point in curve X-extent.
6626 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6627 (outside_slur_callback): check for 'outside avoidance.
6629 * lily/slur-configuration.cc (score_extra_encompass): don't use
6630 bound->column() == avoid->column() for checking extents, as this
6631 doesn't work for accidentals.
6633 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6634 DynamicText hardcoding.
6636 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6637 crash if bound stem is NULL
6639 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6642 2005-12-22 Graham Percival <gpermus@gmail.com>
6644 * scm/define-markup-commands.scm: typo. @code{\raise}
6647 * darwin.patch: now used again, includes a
6648 required patch from fink.
6650 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6652 * po/TODO: mention gtranslator along with kbabel.
6653 * po/fi.po: update translations.
6655 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6657 * lily/relocate.cc (setup_paths): Bugfix.
6659 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6661 * lily/slur-configuration.cc (score_extra_encompass): don't use
6662 "avoid" choice for avoid-slur.
6664 * stepmake/bin/install.py (dest): don't create existing dir.
6666 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6668 * stepmake/bin/install.py: Remove file before copying.
6671 * stepmake/aclocal.m4: Do not substitute INSTALL.
6673 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6675 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6676 depend on link-tree.
6678 * lily/relocate.cc (setup_paths): only check path for non-absolute
6679 dir without directory part.
6681 * flower/file-name.cc (is_absolute): new method.
6682 (is_absolute): check root_ too.
6684 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6686 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6687 relocation code. Oops, don't comment out too much.
6689 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6692 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6695 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6697 * .cvsignore: Add install-sh.
6699 * autogen.sh (srcdir): Typo.
6701 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6703 * autogen.sh (srcdir): urg. Touch install-sh.
6705 * stepmake/bin/install-sh (Module): remove.
6707 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6709 * lily/include/relocate.hh: new file.
6711 * lily/relocate.cc: new file. Contain relocation logic.
6713 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6714 (main): read LILYPOND_VERBOSE as the first thing.
6716 * stepmake/aclocal.m4: remove INSTALL variable.
6718 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6719 separate target for making font symlinks.
6720 (documentation-dir): use $(if $(findstring )) for switching off
6723 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6724 something if DOCUMENTATION is no.
6726 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6728 * VERSION: release 2.7.24
6730 * lily/script-column-engraver.cc (stop_translation_timestep):
6731 delay adding to script-column.
6733 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6735 * python/convertrules.py (conv): rule for number-visibility
6737 * lily/slur-configuration.cc (score_extra_encompass): different
6738 distance measure for avoid and inside avoidance.
6739 (score_extra_encompass): use 1/(distance+eps) as penalty.
6741 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6742 encompass objects for generating slur curves.
6744 * lily/slur.cc: use details iso. slur-details property.
6746 * input/regression/slur-tuplet.ly: new file.
6748 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6750 * flower/include/offset.hh (class Offset): new operator /=
6752 * lily/tuplet-number.cc (print): new file, new interface.
6754 * scm/define-grob-properties.scm (all-user-grob-properties):
6755 remove number-visibility property.
6757 * lily/tuplet-bracket.cc (calc_control_points): new function
6758 (calc_connect_to_neighbors): new function.
6759 (print): remove text handling for tuplet numberdef.
6761 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6764 * lily/lily-guile.cc (robust_scm2booldrul): new function
6766 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6768 * lily/tuplet-bracket.cc (calc_position_and_height): use
6769 staff-padding to control whether tuplet brackets are over staves.
6771 * lily/grob.cc (suicide): clear dim_caches_.
6773 * lily/dimension-cache.cc (clear): new function.
6775 * lily/grob.cc (extent): swap order of min-extent and extent
6776 calculations. This fixes hara kiri staves.
6778 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6780 * lily/main.cc: Nitpick: relocation is not based on path, but on
6781 directory (location).
6783 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6785 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6787 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6789 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6791 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6793 * stepmake/stepmake/generic-vars.make (Module): idem.
6795 * stepmake/stepmake/executable-targets.make (default): use it.
6797 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6799 * make/GNUmakefile: don't install make rules.
6801 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6803 (prepend_env_path): more verbosity.
6805 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6807 * GNUmakefile.in: add dir argument for find command.
6809 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6810 fixes weird line numbers for point & click.
6812 * lily/source-file.cc (get_counts): init line/column/char counts.
6814 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6816 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6818 2005-12-16 Graham Percival <gpermus@gmail.com>
6820 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6821 minor fixes from Fredric. Thanks!
6823 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6825 * ly/music-functions-init.ly: add \bar and \clef music function
6827 * lily/lily-lexer.cc: idem.
6829 * lily/parser.yy (FIXME): remove BAR and CLEF.
6831 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6833 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6835 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6836 function arguments too
6838 * lily/main.cc (set_relocation): new function.
6840 * scripts/musicxml2ly.py (convert): add \version
6842 * lily/tie.cc: remove get_default_attachments()
6844 * VERSION (PACKAGE_NAME): release 2.7.23
6846 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6847 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6849 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6851 * lily/tie-formatting-problem.cc (score_ties): new function
6852 (get_variations): new function. Try flipping dirs for collisions.
6853 (generate_optimal_chord_configuration): new function. 1-opt search
6854 for better configuration.
6856 * lily/tie-configuration.cc: new file.
6858 * lily/tie.cc: junk Tie::get_configuration()
6860 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6861 (score_ties_configuration): new function.
6862 (generate_ties_configuration): new function.
6863 (generate_base_chord_configuration): new function.
6864 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6865 (set_manual_tie_configuration): Move body from tie-column-format.cc
6867 * input/regression/tie-dot.ly: new file.
6869 * lily/tie-formatting-problem.cc (score_configuration): score
6872 * lily/tie-helper.cc (get_transformed_bezier): new function
6874 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6876 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6877 -undefined suppress iso. -framework Python
6879 * scm/define-grobs.scm (all-grob-descriptions): set
6880 springs-and-rods (thanks Joe Neeman!)
6882 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6884 * input/no-notation/display-lily-tests.ly (test):
6885 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6886 changed from \tag #'(a b) to \tag #'a \tag #'b
6888 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6890 * Documentation/topdocs/NEWS.tely: strip out-www.
6892 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6894 * config.make.in (AR): add AR and RANLIB
6896 * flower/libc-extension.cc: include cassert
6898 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6901 2005-12-11 Graham Percival <gpermus@gmail.com>
6903 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6905 * stepmake/stepmake/python-modules-vars.make: define
6906 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6908 * THANKS: added Johannes Schindelin.
6910 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6912 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6914 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6915 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6917 * lily/parser.yy: reorganize file layout.
6919 * ly/music-functions-init.ly: add tweak music function.
6921 * lily/grob-info.cc (ultimate_music_cause): new function:
6922 recursively lookup causes.
6924 * lily/parser.yy (chord_body_element): allow music functions for
6925 post-events, allow music functions for chord elements.
6927 * lily/font-config-scheme.cc (display_fontset): add cast.
6929 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6930 #'(a b) -> \tag #'a \tag #'b rule.
6932 * python/musicexp.py (Output_printer.dump_version): new function
6934 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6936 * lily/parser.yy (FIXME): remove \tag
6937 (FIXME): remove tag_music() function.
6939 * lily/lily-lexer.cc: remove \tag
6941 * ly/music-functions-init.ly: define music-function "tag"
6943 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6945 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6947 * VERSION (PATCH_LEVEL): release 2.7.22
6949 * input/regression/lyric-hyphen-retain.ly: renew.
6951 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6954 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6955 iso. minimum-length property for rods.
6957 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6958 LyricSpace item to keep lyrics spaced apart.
6960 * ly/engraver-init.ly: remove Separating_line_group_engraver
6962 * Documentation/user/music-glossary.tely: do setfilename before
6965 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6967 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6968 See xref documentation, for example.
6970 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6972 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6973 pending_skip iso. ly_voice[-1]
6974 (main): add if __main__ for debugging.
6976 * python/musicxml.py (Accidental.__init__): new class.
6978 * scripts/musicxml2ly.py (progress): new function
6979 (musicxml_key_to_lily): don't barf on modeless keys.
6980 (create_skip_music): new function.
6981 (musicxml_spanner_to_lily_event): new function. Handle beams too.
6982 (musicxml_note_to_lily_main_event): new function.
6984 * python/musicexp.py (Music.__init__): add comment field.
6985 (NestedMusic.append): new routine.
6986 (SequentialMusic.print_ly): print comment.
6987 (ArpeggioEvent.ly_expression): new class
6988 (BeamEvent.ly_expression): new class
6989 (NoteEvent.__init__): support for cautionary/forced accs.
6991 * lily/lookup.cc (slur): normal order for array loop.
6993 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6996 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6999 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
7001 * scm/music-functions.scm: Make phrasing slurs follow voice direction
7003 * scripts/lilypond-book.py: Introduce option
7004 --preserve-line-breaks, for usage with srcltx
7006 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7008 * scm/output-lib.scm (print-circled-text-callback): draw circle
7009 around text using make-circle-markup.
7011 * Documentation/user/*: strip out-www from file names.
7013 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7015 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7016 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7018 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7020 * Documentation/user/GNUmakefile: idem.
7022 * Documentation/user/macros.itexi: strip out-www
7024 * python/rational.py: python 2.3 compat.
7026 * VERSION (PATCH_LEVEL): release 2.7.21
7028 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7029 option formatting, lilypond style.
7031 * python/musicexp.py: grab from Ikebana: a library for composing
7032 ly music expressions.
7033 (Output_printer): class for advanced .ly printing.
7036 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7037 convert to pythonesque structure.
7039 * python/rational.py: PD rational number class.
7041 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7043 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7045 * lily/part-combine-iterator.cc: Minor bugfix
7047 * THANKS: Update bughunters
7049 2005-12-02 Werner Lemberg <wl@gnu.org>
7051 * mf/README: Document process for proper mf2pt1 conversion.
7053 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7056 * mf/feta-harmonica.mf: Removed. Unused.
7058 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7060 * scripts/lilypond-book.py (do_file): fix thinkos.
7062 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7064 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7065 ($(outdir)/parser.cc):
7066 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7068 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7070 * ly/titling-init.ly (tagline): it should be a space between
7071 "Music engraving by LilyPond" and the version number.
7073 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7075 * VERSION (PACKAGE_NAME): release 2.7.20
7077 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7079 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7081 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7083 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7085 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7087 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7089 * kpath-guile/: remove directory
7091 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7092 file. Encapsulate kpathsea using commandline tools.
7094 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7097 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7099 * Documentation/user/advanced-notation.itely (Setting automatic
7100 beam behavior): Correct a few typos. Thanks to David Bobroff.
7102 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7103 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7105 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7107 * scripts/*.py: gmane address for bugs.
7109 2005-11-28 Pal Benko <benkop@freestart.hu>
7111 * make/ly-rules.make: add -f switch to mv
7113 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7115 * lily/bar-line.cc: interpret it
7117 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7119 * configure.in (--disable-documentation): New switch.
7121 * GNUmakefile.in: Use it.
7123 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7125 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7127 * scripts/lilypond-book.py (do_file): search chunks for
7130 * GNUmakefile.in: add copy step in between so we can lose the
7131 out-www directories.
7133 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7135 * lily/pango-font.cc (pango_item_string_stencil): put
7136 geometry.width into glyph-string too.
7138 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7140 * scm/define-music-display-methods.scm (RevertProperty):
7141 (OverrideProperty): Use grob-property-path property, a list of
7142 symbols, instead of grob-property, which used to be a single
7144 (BassFigureEvent): a figure can be a plain number, not necessarily a
7147 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7149 * VERSION: release 2.7.19
7151 * lily/figured-bass-engraver.cc (process_music): check
7152 figuredBassCenterContinuations first.
7154 * scm/translation-functions.scm (format-bass-figure): make double
7157 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7160 * lily/system-start-delimiter-engraver.cc: move from
7161 Nested_system_start_delimiter_engraver, rename
7162 Nested_system_start_delimiter_engraver ->
7163 System_start_delimiter_engraver.
7165 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7166 bracket type from hierarchy.
7168 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7170 * lily/rest.cc (y_offset_callback): read staff-position.
7172 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7173 mark after-line-breaking-callback as internal.
7175 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7177 2005-11-25 Werner Lemberg <wl@gnu.org>
7179 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7181 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7183 * stepmake/bin/add-html-footer.py (do_file): add google
7185 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7186 staff if first_start_ is true.
7188 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7190 * scripts/midi2ly.py (split_track): add __repr__ members.
7191 (track_first_item): only return Item if not None. This fixes a
7192 problem when dumping a track that starts with an empty channel.
7194 * python/midi.c: doc module.
7196 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7198 * Documentation/user/global.itely (Creating MIDI files): Fix
7199 compilation problem.
7201 2005-11-22 Graham Percival <gpermus@gmail.com>
7203 * Documentation/user/basic-notation.itely: clarify dynamic
7206 * Documentation/user/advanced-notation.itely: add unicode
7207 escape control example, whatever that is. :)
7209 * Documentation/user/global.itely: added "removing dynamics
7212 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7214 * VERSION (PATCH_LEVEL): release 2.7.18
7216 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7217 System_start_delimiter_engraver by
7218 Nested_system_start_delimiter_engraver.
7220 * lily/nested-system-start-delimiter-engraver.cc (struct
7221 Bracket_nesting_node): new class.
7222 (struct Bracket_nesting_group): new class
7223 (struct Bracket_nesting_staff): new class.
7224 (process_music): create hierarchy of grobs. This allows separate
7225 tuning of different SSDs.
7227 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7228 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7230 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7232 * lily/side-position-interface.cc (aligned_side): multiply
7235 * lily/script-engraver.cc (make_script_from_event): allow setting
7238 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7240 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7242 * scm/define-grobs.scm (all-grob-descriptions): new grob
7243 NestedSystemStartDelimiter.
7245 * input/regression/system-start-heavy-bar.ly: new file.
7247 * lily/nested-system-start-delimiter-engraver.cc: new file.
7249 * lily/nested-system-start-delimiter.cc: new file.
7251 * input/regression/system-start-nesting.ly: new file.
7253 * scm/define-grobs.scm (all-grob-descriptions): use X side
7254 positioning for positioning braces for nested contexts.
7256 * lily/system-start-delimiter.cc (print): don't divide extent by
7258 (print): use style iso. glyph.
7259 (staff_bracket): translate glyph inside routine already.
7261 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7263 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7266 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7268 * scm/define-context-properties.scm
7269 (all-user-translation-properties): rename figuredBassFormatter
7270 from newFiguredBassFormatter.
7272 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7274 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7276 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7278 * lily/beam.cc (calc_beaming): new function.
7279 (calc_shorten): new function.
7281 * THANKS: add Edward Neeman.
7283 * input/regression/accidental-clef-change.ly: new file.
7285 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7287 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7289 * lily/clef-engraver.cc (inspect_clef_properties): reset
7290 localKeySignature for clef changes.
7292 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7294 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7295 add dummy definition that works in Linux and add information in
7296 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7298 * Documentation/user/changing-defaults.itely (Modifying context
7299 plug-ins): Add index for \with.
7301 * Documentation/user/music-glossary.tely (dal segno): Updated
7302 example to version >=2.6.
7304 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7306 * Documentation/user/instrument-notation.itely (Printing chord
7307 names): Reorder \chordmode and \repeat in one example.
7309 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7311 * VERSION: release 2.7.17
7313 * Documentation/topdocs/NEWS.tely (Top): add note about
7316 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7317 new function. Search region of 3 positions for best tie.
7318 (score_configuration): new function.
7319 (score_aptitude): new function.
7320 (generate_configuration): new function.
7321 (get_configuration): new function.
7322 (Tie_formatting_problem): new function
7324 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7326 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7328 * THANKS: add Eduardo Vieira & Ralph Little
7330 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7333 * lily/include/tie-formatting-problem.hh (class
7334 Tie_formatting_problem): add Tie_details to
7335 Tie_formatting_problem. Update calling conventions.
7337 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7340 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7342 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7344 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7345 scm/define-context-properties.scm: Maintenance bugfix: make
7346 ligature brackets work again by removing obsolete ligature
7347 primitive callback push/pop.
7349 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7350 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7353 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7355 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7356 used and do not call it a path.
7357 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7359 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7361 * lily/include/tie-formatting-problem.hh (class
7362 Tie_formatting_problem): new file.
7364 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7366 * Documentation/misc/ChangeLog-2.3: new file.
7368 * lily/audio-staff.cc (output): degarianize.
7370 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7372 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7373 Unset PYTHONOPTIMIZE. Fixes install if set.
7375 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7377 * python/convertrules.py (conv): add warning about drums.
7379 * make/stepmake.make: include toplevel-version.make after config.make.
7381 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7382 also allow python2.4
7384 * config.make.in (configure-srcdir): remove GXX GCC vars.
7386 * stepmake/aclocal.m4: don't do non-srcdir build with
7387 symlinks. Use inclusion, so the src directory name can be changed.
7389 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7391 * make/mutopia-vars.make:
7392 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7395 2005-11-13 Werner Lemberg <wl@gnu.org>
7397 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7398 but the affected path. This ensures that the (overlapping) outlines
7399 have the same direction, which is a necessary prerequisite for
7400 FontForge's algorithm to remove overlaps.
7403 * mf/feta-haak.mf: Formatting.
7404 (draw_bracket): Slightly modify outline to avoid an unnecessary
7406 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7407 them from the affected paths.
7409 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7411 * mf/README: remove xpm / accordion notes.
7413 * lily/tie-column-format.cc (set_chord_outline): add dots into
7414 skyline extents. This fixes tie formatting if the left head has dots.
7416 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7417 space inside the staff.
7418 (get_configuration): shift another position if necessary in case
7421 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7423 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7424 buildscript-dir iso. $(depth)/buildscripts.
7426 * tex/GNUmakefile (local-uninstall): remove
7427 music-drawing-routines.ps juggling.
7429 * stepmake/stepmake/install-targets.make (local-install-files):
7430 prepend src-dir to install targets.
7432 * lily/system-start-delimiter-engraver.cc
7433 (acknowledge_system_start_delimiter): use
7434 add_offset_callback(). This fixes translation of nested
7437 * lily/grob-closure.cc (add_offset_callback): only encaps in
7438 simple_closure if it's a procedure.
7440 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7443 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7444 remove-empty where pertinent.
7446 2005-11-12 Graham Percival <gpermus@gmail.com>
7448 * Documentation/user/instrument-notation.itely: added
7449 Cameron Horsburgh's multiple stanzas docs. Thanks!
7451 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7454 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7455 make picture in builddir, not srcdir.
7457 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7459 * VERSION: release 2.7.16
7461 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7464 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7466 * Documentation/user/examples.itely (Piano templates): Minor
7467 modification to the Piano centered lyrics example.
7469 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7471 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7474 * Documentation/user/point-and-click.itely: simplify p&c
7475 instruction: don't configure firefox. Put lilypond-invoke-editor
7476 in front of the browser.
7478 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7479 (run-browser): new function.
7481 * lily/parser.yy (Lily_lexer): recognize Book
7483 * lily/book.cc (clone): new function
7485 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7487 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7489 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7490 Maintenance bugfix: reduce number of font related warnings by
7491 updating naming conventions for glyph-name.
7493 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7495 * scm/define-grobs.scm (all-grob-descriptions): add
7496 rhythmic-grob-interface to TabNoteHead.
7498 * scm/layout-beam.scm (check-quant-callbacks): remove
7501 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7503 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7504 alignment of centered divisiones.
7506 * scm/scripts.scm (articulations): Maintenance bugfix:
7507 follow-into-staff -> quantize-position.
7509 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7510 plica head in porrectus deminutus.
7512 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7514 * make/lilypond.fedora.spec.in (Group): add %clean section.
7516 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7517 less then 1/5th of total length.
7518 (print): use gap too. Fixes tupletUp-single-bracket.ly
7520 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7521 events into EventChord. This fixes textspanners on mm rests. Fixes
7524 * lily/side-position-interface.cc (get_axis): read side-axis
7525 (set_axis): set side-axis.
7527 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7528 properties everywhere.
7530 * lily/spacing-spanner.cc (breakable_column_spacing): add
7531 average-spacing-wishes. Take maximum if not set.
7532 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7534 * scm/define-grobs.scm (all-grob-descriptions): add
7535 average-spacing-wishes.
7537 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7538 offset callbacks. This fixes alignment for Fingering objects.
7540 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7541 space for key - timesig combination.
7543 * input/regression/script-stem-tremolo.ly (Module): new file.
7545 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7548 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7549 Fixes: c-tremolo-script.ly.
7551 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7553 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7555 * scm/define-grobs.scm (all-grob-descriptions): remove
7556 self-X-offset. Fixes alignment of octavate-8.
7558 * scripts/lilypond-book.py (datadir): look in
7559 LILYPONDPREFIX/share/lilypond/current/
7561 * GNUmakefile.in: symlink current to <VERSION>.
7563 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7565 * lily/main.cc: eps listed as a backend.
7567 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7569 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7571 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7573 * lily/include/score.hh (class Score): remove texts_ member.
7575 * lily/beam.cc (set_stem_lengths): force direction callback.
7576 (print): read quantized-positions, so we can force
7577 Beam::set_stem_lengths to occur.
7578 (rest_collision_callback): use common X parent.
7580 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7582 * flower/file-path.cc (find): Bugfix: Return name of file found.
7584 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7585 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7586 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7588 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7590 * flower/offset.cc: idem.
7592 * mf/*.mf: update email address.
7594 * lily/font-config-scheme.cc: new file.
7596 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7598 * lily/*: cs.uu.nl -> xs4all.nl
7600 * VERSION (PATCH_LEVEL): release 2.7.15
7602 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7605 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7607 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7609 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7611 * lily/staff-performer.cc (process_music): add audio
7612 elements. This makes MIDI instrument changes work once again.
7614 * lily/main.cc (LY_DEFINE): add gmane address.
7616 * lily/beam.cc: remove calc_positions()
7618 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7619 original_ in private scope.
7620 (class Grob): drop pscore_ pointer, change to output_def pointer.
7621 (class Grob): cleanup class definition.
7623 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7625 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7627 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7628 absolute. Better diagnostics.
7630 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7631 This makes lilypond run from the build directory using argv0
7632 relocation (without any --prefix or LILYPONDPREFIX setting).
7634 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7636 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7638 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7639 with simple-closure.
7641 * lily/self-aligment-interface.cc (set_align_self): new function
7642 (set_center_parent): new function.
7644 * lily/side-position-interface.cc (set_axis): new function.
7646 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7649 * scm/define-grob-properties.scm (all-user-grob-properties):
7650 remove [XY]-offset-callbacks add [YX]-offset
7652 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7654 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7655 entry for time signatures after breathing signs. Bug report by
7658 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7660 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7661 not absolute, make it absolute using PATH.
7663 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7665 * python/midi.c (initmidi): Fix type for mingw.
7667 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7669 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7671 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7674 * stepmake/aclocal.m4: Support python cross compiling.
7676 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7679 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7681 * scm/output-lib.scm (chain-grob-member-functions): replace
7684 * lily/chained-callback.cc (Module): remove file.
7686 * lily/rest-collision.cc (force_shift_callback_rest): change to
7689 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7691 * lily/grob.cc (y_parent_positioning): remove axis argument from
7692 parent_positioning callbacks.
7693 (Grob): junk init code
7694 (get_offset): use generic property callbacks for
7695 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7696 (axis_parent_positioning): new function
7697 (axis_offset_symbol): new function
7698 (chain_offset_callback): new function
7699 (add_offset_callback): new function
7701 * lily/beam.cc (rest_collision_callback): change signature; this
7702 is now a chained callback.
7704 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7705 callback administration.
7707 * lily/simple-closure.cc: new file. Smob type that allows "grob
7710 (ly:make-simple-closure FUNC A B)
7712 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7715 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7718 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7720 * lily/rest.cc (polyphonic_offset_callback): remove.
7722 * lily/script-engraver.cc (try_music): remove bool* argument.
7724 * scm/script.scm (default-script-alist): set quantize-position
7727 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7729 * lily/side-position-interface.cc (aligned_side): move staff
7730 position quantization from
7731 Side_position_interface::quantised_position().
7732 (quantised_position): remove
7734 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7736 * input/regression/beam-quant-standard.ly: reindent, set
7737 debug-beam-quanting to #t.
7739 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7740 10000 if this is a "hard" concave beam.
7742 * lily/beam.cc (calc_least_squares_positions): change from
7743 calc_least_squares_dy
7744 (set_stem_lengths): this is now a chained callback.
7746 * lily/context-property.cc (execute_general_pushpop_property):
7747 bugfix override with procedure should have effect.
7749 * scm/define-grob-properties.scm (all-internal-grob-properties):
7750 remove position-callbacks.
7752 * scm/define-grobs.scm (all-grob-descriptions): use
7753 ly:make-callback-chain for positions property.
7755 * scm/layout-beam.scm (check-quant-callbacks): return list of
7758 * scm/lily.scm (type-p-name-alist): add callback-chain
7760 * lily/lily-guile.cc (type_check_assignment): type check failure
7761 is warning not message.
7763 * lily/grob-property.cc (try_callback): walk callback chain if
7766 * lily/chained-callback.cc: new file. new smob type.
7768 * lily/lily-guile.cc (procedure_arity): new function.
7770 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7772 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7774 2005-10-25 John Mandereau <john.mandereau@free.fr>
7776 * Documentation/user/instrument-notation.itely (Figured bass):
7777 describe new features
7779 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7781 * lily/beam.cc (calc_least_squares_dy): use property callback.
7783 * lily/beam-concave.cc (calc_concaveness): use property callback.
7785 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7787 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7791 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7793 * scm/layout-page-layout.scm (page-headfoot): annotate
7796 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7798 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7799 doesn't take y-space.
7801 * scm/paper.scm (paper-alist): fix A7 dimensions.
7803 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7805 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7806 src-wildcard, remove $(wildcard).
7808 * po/GNUmakefile (PO_FILES):
7809 * ps/GNUmakefile (PS_FILES):
7810 * tex/GNUmakefile (TEX_FILES):
7811 * cygwin/GNUmakefile (POSTINSTALLS):
7812 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7813 some wildcard calls.
7815 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7817 * THANKS: add Thomas Bushnell.
7819 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7821 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7822 (lilypond-main): Redirect to gui-main if 'gui is set.
7824 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7825 for alternative installations kludging s/share/lib/g
7828 * SConstruct (libdir_package_version): Define.
7830 * python/SConscript:
7831 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7834 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7836 * lily/main.cc: clarify --safe.
7838 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7840 * VERSION: release 2.7.14
7842 * Documentation/user/*.itely: remove minimumVerticalExtent.
7844 * scm/define-grobs.scm (all-grob-descriptions): remove
7845 RemoveEmptyVerticalGroup
7847 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7849 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7852 * python/convertrules.py (conv): add rules.
7854 * lily/grob.cc: remove is_empty()
7856 * lily/grob-property.cc: remove add_to_list_property().
7858 * scripts/convert-ly.py (datadir): add prefix switching hack to
7861 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7862 space-function tweak.
7864 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7866 * scm/define-grob-properties.scm (all-user-grob-properties):
7867 remove callback property.
7869 * lily/include/grob.hh (class Grob): remove property_callbacks_
7870 member. Properties of procedure type are assumed to be callbacks.
7872 * lily/ligature-engraver.cc (override_stencil_callback):
7873 rewrite. Use noteHeadLigaturePrimitive as source.
7875 * scm/define-grob-properties.scm (all-internal-grob-properties):
7876 remove ligature-primitive-callback
7878 * lily/include/dimension-cache.hh (class Dimension_cache): make
7879 class, with Grob as friend.
7881 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7882 has_extent_callback()
7884 * scm/translation-functions.scm (format-new-bass-figure): read
7885 figuredBassPlusDirection
7887 * scm/define-context-properties.scm
7888 (all-user-translation-properties): add figuredBassPlusDirection.
7890 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7892 * lily/align-interface.cc (set_ordered): new function.
7894 * lily/grob.cc (flush_extent_cache): rewrite.
7896 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7897 Interval pointer directly.
7899 * lily/main.cc (setup_paths): insert extra / .
7900 (setup_paths): junk cff entry.
7902 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7905 * lily/axis-group-engraver.cc (finalize): remove
7906 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7908 * lily/grob.cc (Grob): don't set extent from ctor.
7909 (extent): use property callbacks.
7911 * lily/axis-group-interface.cc: remove set_axes() function.
7913 * lily/grob-property.cc (del_property): new function.
7915 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7917 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7919 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7921 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7923 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7925 * mf/SConscript: Updates.
7927 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7929 * stepmake/stepmake/*:
7933 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7934 from any directory in build-dir. Cleanups.
7936 * make/srcdir.make.in: Remove.
7938 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7940 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7943 * lily/SConscript: Remove ttftools.
7945 * SConstruct: Resurrect.
7947 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7949 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7952 * lily/paper-book.cc (add_score_title): put Paper_score title into
7955 * scm/translation-functions.scm (format-new-bass-figure): also
7956 allow plus in combination with _
7958 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7960 * VERSION: 2.7.13 released.
7962 * lily/note-collision.cc (check_meshing_chords): don't wipe
7963 stencil, merely set transparent.
7965 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7966 (Top): document #'callbacks.
7967 (Top): document nested \override.
7969 * input/regression/figured-bass.ly: update for slash and pluses.
7971 * input/regression/figured-bass-continuation-forbid.ly (Module):
7974 * scm/translation-functions.scm (format-new-bass-figure): use
7975 slashed-digit if diminished is set.
7976 (format-new-bass-figure): add + if 'augmented is set.
7978 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7980 * input/test/piano-staff-distance.ly: remove file.
7982 * Documentation/user/advanced-notation.itely (Formatting cue
7983 notes): use length-fraction for making stems/beams smaller.
7985 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7988 * lily/new-figured-bass-engraver.cc: new property
7989 centerFiguredBassContinuations
7991 * Documentation/user/changing-defaults.itely (Difficult tweaks):
7994 * lily/context-property.cc (execute_general_pushpop_property):
7997 * input/regression/override-nest.ly: new file.
7999 * python/convertrules.py (FatalConversionError.subber): conversion
8000 rule for #'callbacks
8002 * input/regression/override-nest.ly: new function.
8004 * lily/parser.yy (music_property_def): allow \override #'a #'b =
8007 * lily/context-property.cc (lookup_nested_property): new function.
8008 (evict_from_alist): new function.
8009 (general_pushpop_property): new function.
8010 (execute_general_pushpop_property): rewrite. Support nested
8013 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8015 * lily/beam.cc: use length-fraction too.
8017 * scm/define-grob-properties.scm (all-user-grob-properties):
8018 remove property flag-width-function
8019 (all-user-grob-properties): remove space-function.
8021 * scm/layout-beam.scm: remove flag-width-function.
8023 * lily/beam.cc: remove flag-width-function
8025 * scm/layout-beam.scm: remove beam dir functions.
8027 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8029 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8030 for easier grace tweaks.
8032 * lily/beam.cc: remove dir-function.
8034 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8036 * lily/grob.cc: remove spacing-procedure.
8038 * lily/note-head.cc (calc_stem_attachment): new function.
8039 (internal_print): use callback to get glyph-name.
8041 * lily/grob-property.cc (get_interfaces): new function.
8043 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8045 * lily/stem.cc (calc_stem_end_position): new function.
8046 (calc_length): new function.
8047 document details for stem.
8048 remove Stem::get_direction()
8050 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8052 * lily/grob-property.cc (set_callback): new function.
8054 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8056 * lily/item-scheme.cc: new file.
8058 * lily/bar-line.cc (before_line_breaking): remove function.
8059 remove bar-size-procedure, break-glyph-function
8061 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8063 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8065 * lily/system-start-delimiter.cc (print): suicide from
8066 here. Remove after_line_breaking_callback.
8068 * lily/script-interface.cc (calc_direction): use callback for direction.
8070 * lily/side-position-interface.cc (aligned_side): don't use
8071 Side_position_interface::get_direction directly. Use callback.
8073 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8075 (get_print_stencil): rename from get_stencil: create stencil with
8076 transparency, color and cause.
8078 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8080 * python/convertrules.py (conv): insert temporary warning rule.
8082 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8084 * lily/grob-property.cc (try_callback): remove marker if applicable.
8086 * lily/grob.cc: elucidate doc about after/before-line-breaking
8088 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8090 * lily/stem.cc (height): idem.
8092 * lily/stem-tremolo.cc: idem.
8094 * lily/slur.cc (height): don't use get_uncached_stencil()
8096 * lily/rest.cc (y_offset_callback): use offset callback
8097 iso. after-line-breaking callback.
8099 * lily/grob.cc: change after/before-line-breaking-callback to
8100 after/before-line-breaking dummy properties.
8102 * lily/include/grob.hh: remove Grob_status.
8104 * scm/define-context-properties.scm
8105 (all-user-translation-properties): remove verticalAlignmentChildCallback
8107 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8108 (calc_direction): use callback
8109 (calc_positions): use callback.
8111 * lily/tie.cc (calc_direction): use callback. Only call parent
8112 positioning for more than one tie.
8114 * lily/tie-column.cc (calc_positioning_done): use callback
8116 * lily/slur-scoring.cc (calc_control_points): use callback
8118 * lily/slur.cc (calc_direction): use callback.
8120 * lily/note-collision.cc (force_shift_callback): remove.
8122 * lily/dot-column.cc (force_shift_callback): remove. Use
8123 other_axis_parent_positioning.
8125 * lily/grob.cc (other_axis_parent_positioning): new function.
8126 (same_axis_parent_positioning): new function
8128 * lily/align-interface.cc (alignment_callback): remove function.
8130 * lily/note-collision.cc (calc_positioning_done): use callback.
8132 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8133 (calc_direction): idem.
8134 remove print function.
8136 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8138 * lily/dot-column.cc (calc_positioning_done): use callback.
8140 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8142 * lily/beam.cc (calc_direction): use pseudo-property for beam
8144 (calc_positions): use callback
8146 * lily/align-interface.cc (calc_positioning_done): use
8147 callback. Fold fixed distance and normal alignment in one function.
8149 * lily/stem.cc (calc_stem_end_position): use callback.
8150 (calc_positioning_done): idem.
8151 (calc_direction): idem.
8152 (calc_stem_end_position): idem
8153 (calc_stem_info): idem.
8155 * lily/grob-property.cc (get_property_data): new function:
8156 (try_callback): new function.
8158 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8161 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8163 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8165 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8169 * lily/include/*.hh (Module): compile fixes.
8171 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8173 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8174 as an argument for char-syntax: use (char-syntax (or nil 0))
8175 instead of (char-syntax nil), thanks to Milan Zamazal.
8177 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8179 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8182 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8185 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8187 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8188 add class_name() method.
8190 * lily/music-scheme.cc: remove ly:music-name.
8192 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8194 * cygwin/postinstall-lilypond.sh: Remove cruft.
8196 * cygwin/postremove-lilypond.sh: Remove.
8198 * cygwin/GNUmakefile (default): Remove postremove rules.
8200 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8202 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8205 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8208 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8209 consider break index for broken spanner.
8211 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8212 characters from string before splitting.
8214 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8216 * scm/framework-ps.scm (output-preview-framework): use
8217 is-book-title to determine whether to chop off the booktitle.
8219 * lily/paper-book.cc (systems): init from book-title-properties
8220 (add_score_title): init score-title-properties.
8222 * ly/paper-defaults.ly: add {score,book}-title-properties.
8224 * scm/document-backend.scm (lookup-interface): error message if
8225 using unknown interface.
8227 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8230 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8232 (make_bracket): new function.
8234 * scm/lily.scm (define-scheme-options): add paper-size option.
8236 * ly/declarations-init.ly (laissezVibrer): get paper size from
8239 * scm/translation-functions.scm: use \fontsize for changing the
8242 * scm/define-grobs.scm (all-grob-descriptions): set
8243 between-length-limit to 1.0
8245 * lily/tie-helper.cc: add between_length_limit_ detail property.
8247 * mf/feta-bolletjes.mf: typos.
8249 * lily/note-head.cc (internal_print): don't shadow idx
8250 parameter. This fixes wrong attachment for do shape heads.
8252 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8254 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8256 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8258 * scm/layout-slur.scm: rename from slur.scm
8260 * scm/layout-page-layout.scm: rename from page-layout.scm
8262 * scm/layout-beam.scm: rename from beam.scm
8264 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8265 bass-figure-interface
8267 * lily/new-figured-bass-engraver.cc (process_music): add
8268 implicitBassFigures property.
8270 * scm/define-markup-commands.scm (pad-x): new markup.
8272 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8273 minimumVerticalExtent on FiguredBass context.
8275 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8276 case the continuation crosses a line break.
8278 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8280 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8281 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8282 absolute file name bug.
8284 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8286 * VERSION (PACKAGE_NAME): release 2.7.12
8288 * input/regression/figured-bass-continuation-center.ly: new file.
8290 * input/regression/beam-outside-beamlets.ly: new file.
8292 * lily/beam.cc (set_beaming): don't clip edges.
8293 (connect_beams): don't clip edges.
8295 * lily/beaming-info.cc (clip_edges): new function.
8297 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8299 * Documentation/user/instrument-notation.itely (Figured bass):
8300 demonstrate extenders, update seealso links.
8302 * scm/titling.scm (marked-up-headfoot): change tagline
8303 handling. tagline = ##f will blank the tagline as well.
8305 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8307 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8309 * lily/new-figured-bass-engraver.cc (struct
8310 New_figured_bass_engraver): add new_music_found_ member.
8312 * lily/lilypond-version.cc (Lilypond_version): deal with
8313 incorrectly formatted version strings.
8315 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8316 New_figured_bass_engraver by default.
8318 * lily/ttf.cc (print_trailer): only define glyph names when
8319 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8321 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8323 * lily/horizontal-bracket.cc (make_bracket): new function.
8325 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8326 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8327 BassFigureLine, BassFigureAlignment
8329 * lily/new-figured-bass-engraver.cc (process_music): new file.
8331 * lily/figured-bass-continuation.cc: new file.
8333 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8336 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8338 * scripts/lilypond-book.py: Bug fix, put the quote around the
8339 actual score for LaTeX documents.
8341 * scm/define-grobs.scm (all-grob-descriptions): Change
8342 collapse-height of the SystemStartBracket grob to 5.0,
8343 so the bracket disappears for single stave score lines (similarly
8344 to SystemStartBraces).
8346 * Documentation/user/advanced-notation.itely (Polymetric
8347 notation): Clarify the use of compressMusic.
8349 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8350 that the grace spacer note in other staves need the same duration
8351 and document the stroke-style property.
8353 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8355 * Documentation/user/global.itely (Vertical spacing): document
8356 alignment-extra-space and fixed-alignment-extra-space.
8358 * Documentation/topdocs/NEWS.tely (Top): add entry.
8360 * input/regression/alignment-vertical-spacing.ly: new file.
8362 * python/convertrules.py (conv): add rule.
8364 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8366 * lily/align-interface.cc (stretch_after_break): new
8367 function. Read fixed-alignment-extra-space property.
8368 (align_elements_to_extents): read alignment-extra-space property.
8370 * lily/lily-guile.cc (robust_scm2dir): new function.
8372 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8373 (annotate-space-left): new function. Annotate space left on page.
8374 (annotate-y-interval): new function.
8375 (paper-system-annotate-last): new function. Annotate bottom-space.
8377 * mf/feta-beugel.mf (y):
8379 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8381 * VERSION (PACKAGE_NAME): release 2.7.11
8383 * scm/lily-library.scm (interval-translate): new function
8384 (interval-center): new function.
8386 * scm/page-layout.scm (paper-system-annotate): new function. Add
8387 arrows for dimensions.
8389 * scm/stencil.scm (dimension-arrows): new function.
8391 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8393 * input/regression/page-spacing.ly: add annotatespacing
8395 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8396 (LY_DEFINE): new function ly:paper-system-set-property!
8398 * Documentation/user/global.itely (Paper size): explain how to add
8401 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8402 correspond to GS's definition.
8404 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8406 (print): only connect to next bracket if the next one is alive.
8407 (print): set padding to 0.0 if the bound is a breakable
8408 column. This makes tupletFullLength brackets reach up to the staff
8409 line if it doesn't connect to the next line.
8411 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8413 * lily/bar-number-engraver.cc: correct docs.
8415 * scm/output-lib.scm (first-bar-number-invisible): rename from
8416 default-bar-number-visibility
8418 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8420 * scm/define-music-properties.scm (all-music-properties): remove
8423 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8425 * po/fi.po: refresh.
8427 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8429 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8431 (disappear): bugfix.
8433 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8435 * lily/include/paper-system.hh (class Paper_system): remove
8436 staff_extents_ member.
8438 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8440 * lily/include/paper-system.hh (class Paper_system): remove
8441 number_ variable. Remove is_title_. Remove break_before_penalty_
8443 * lily/paper-book.cc (systems): use 'number property iso. number_
8446 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8447 remove ly:paper-system-number.
8449 * scm/lily-library.scm (paper-system-title?): new function.
8451 * lily/book.cc (process): bugfix: flip ?: cases.
8453 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8456 * ly/music-functions-init.ly: add outputProperty music function.
8458 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8460 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8462 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8464 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8466 * lily/paper-system.cc (internal_get_property): new function.
8468 * Documentation/user/global.itely (Vertical spacing): refer to
8471 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8474 * input/regression/page-spacing.ly: new file.
8476 * input/regression/page-top-space.ly: new file.
8478 * lily/spacing-spanner.cc: cmath -> math.h
8480 * lily/paper-system.cc (read_left_bound): new function. Read
8481 line-break-system-details from left bound to determine extents.
8483 * Documentation/user/programming-interface.itely (Using LilyPond
8484 syntax inside Scheme): change applyxxx -> applyXxx.
8486 * ly/music-functions-init.ly: add outputProperty music function.
8488 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8490 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8492 * python/convertrules.py (conv): rule
8494 * ly/music-functions-init.ly: applyxxx -> applyXxx
8496 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8499 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8501 * flower/include/real.hh: include <math.h> iso. <cmath>
8503 * flower/include/offset.hh: include real.hh
8505 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8507 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8508 fix example, now that 'interfaces is no longer directly available.
8510 * lily/book.cc (process): don't crash if paper == NULL.
8514 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8516 * scm/define-music-types.scm (music-descriptions): set length and
8517 start-callback for QuoteMusic
8519 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8521 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8522 arguments. Fixes compilation error with gcc 3.3.
8524 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8526 * VERSION: release 2.7.10
8528 * stepmake/stepmake/python-module-rules.make
8529 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8531 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8534 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8536 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8537 -Werror. Otherwise GCC barfs over various optimizations.
8539 * scm/define-grob-properties.scm (all-internal-grob-properties):
8540 add note-head property
8542 * Documentation/user/instrument-notation.itely (Laissez vibrer
8545 * input/regression/laissez-vibrer-ties.ly: new file.
8547 * lily/laissez-vibrer-engraver.cc: new file.
8549 * lily/include/tie-column-format.hh: new file.
8551 * lily/tie-column-format.cc: new file.
8553 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8555 * lily/laissez-vibrer-tie.cc: new file.
8557 * lily/include/laissez-vibrer-tie.hh: new file.
8559 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8561 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8563 * scm/define-grobs.scm (all-grob-descriptions): add
8564 LaissezVibrerTie, LaissezVibrerTieColumn
8566 * lily/tie-column.cc (set_tie_config_directions): new function
8567 (final_shape_adjustment): new function.
8568 (shift_small_ties): new function.
8570 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8572 * lily/include/tie.hh (struct Tie_details): add x_gap_
8573 (struct Tie_configuration): add head_position_
8575 * lily/tie-column.cc (set_chord_outline): new function.
8577 * mf/cmr.enc.in: remove file.
8579 2005-09-11 Graham Percival <gpermus@gmail.com>
8581 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8583 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8585 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8586 reduce aliasing effects.
8588 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8591 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8593 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8595 * flower/include/real.hh: std::fabs too.
8597 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8599 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8601 * lily, flower: Include C++ iso C headers. Import namespace std
8604 * lily/side-position-interface.cc:
8606 * lily/note-head.cc:
8607 * lily/include/includable-lexer.hh:
8608 * flower/include/string-data.icc: Remove using std::*.
8610 * lily, flower: Include C++ iso C headers. Import namespace std
8613 * lily/side-position-interface.cc:
8615 * lily/note-head.cc:
8616 * lily/include/includable-lexer.hh:
8617 * flower/include/string-data.icc: Remove using std::*.
8619 * Documentation/user/instrument-notation.itely (Entering lyrics):
8620 Multiple latin-1->utf-8 conversion fix.
8622 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8624 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8626 * lily/tie.cc (get_configuration): also avoid dots for non-space
8629 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8631 * Documentation/user/instrument-notation.itely: Bugfix.
8633 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8635 * tex/GNUmakefile: don't install texinfo.tex
8637 * tex/ : cleanup: remove unused files.
8639 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8641 * flower/include/real.hh: using std::{isnan,isinf}
8643 * VERSION (PATCH_LEVEL): release 2.7.9
8645 2005-09-05 Graham Percival <gpermus@gmail.com>
8647 * Documentation/user/ instrument-notation.itely,
8648 advanced-notation.itely: minor tweaks.
8650 * input/test/script-chart.ly: add item padding.
8652 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8654 * flower/offset.cc: use math.h iso. <cmath>
8656 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8659 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8660 (widen-left-stencil-edges): new function. Fix alignment problems
8661 with LaTeX includegraphics.
8663 * lily/text-interface.cc (interpret_markup): use abort().
8665 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8667 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8669 * lily/tie.cc (get_configuration): update bezier shape as we
8671 (get_configuration): don't move large ties if we're outside of the
8674 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8676 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8678 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8680 * .cvsignore: Add auto-generated configure files and then some.
8682 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8684 * scm/define-grobs.scm (DynamicLineSpanner): Add
8685 X-extent-callback. Fixes hairpin-slur collision.
8687 2005-08-31 Graham Percival <gpermus@gmail.com>
8689 * Documentation/user/advanced-notation.itely,
8690 basic-notation.itely: minor changes.
8692 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8694 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8695 \linebreak between each .eps file if \betweenLilyPondSystem is
8698 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8699 music): Document the \linebreak
8701 * Documentation/user/lilypond-book.itely,
8702 input/tutorial/lbook-latex-test.tex,
8703 Documentation/user/examples.itely: Remove \usepackage{graphics}
8705 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8707 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8709 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8712 * scripts/lilypond-book.py (PREAMBLE_LY): define
8713 inside-lilypond-book
8714 (modify_preamble): new function. Insert \RequirePackage{graphics}
8715 when no {graphics found in preamble.
8717 2005-08030 Graham Percival <gpermus@gmail.com>
8719 * Documentation/user/basic-notation.itely, global.itely,
8720 tutorial.itely: misc small changes.
8722 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8724 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8727 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8729 * lily/tie-column.cc (new_directions): put Tie down on center
8732 * lily/script-interface.cc (before_line_breaking): use
8733 Grob::programming_error
8735 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8737 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8740 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8742 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8744 2005-08-29 Werner Lemberg <wl@gnu.org>
8746 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8747 the `*.scale.pfa' files to avoid warnings.
8749 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8751 * lily/tempo-performer.cc (process_music): idem.
8753 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8755 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8757 * Documentation/user/advanced-notation.itely (Text markup): not a
8760 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8762 * lily/staff-performer.cc (initialize): add tempo/name to
8766 2005-08-26 Graham Percival <gpermus@gmail.com>
8768 * Documentation/user/advanced.itely: add text-only example.
8770 * Documentation/user/invoking.itely: add index entries for
8773 * Documentation/user/ tutorial.itely, basic-notation.itely:
8774 small fixes suggested by Steve D. Thanks!
8776 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8778 * input/regression/markup-bidi-pango.ly: new file.
8780 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8781 standard. Remove #ifdef. Remove memleak.
8782 (text_stencil): use text_dir to decide how to composite items.
8783 (text_stencil): determine uniform text direction for the entire
8786 * scripts/lilypond-book.py (output_name): remove
8787 latex_filter_cmd. Non-portable to non-Unix systems.
8788 (get_latex_textwidth): use File.write and os.unlink() instead.
8790 * THANKS: add Vicente & Trevor.
8792 * lily/grob.cc (discretionary_processing): look up origin for
8793 programming_error too.
8795 * input/regression/tie-broken.ly: new file.
8797 * lily/tie-column.cc (set_chord_outlines): set outline for line
8800 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8802 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8803 unscaled transform, just translate stencils.
8805 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8808 * scm/define-markup-commands.scm (wordwrap-string): use
8810 (wordwrap-stencils): idem.
8813 (wordwrap-stencils): translate last line to right for
8814 text-direction = LEFT.
8816 * scm/define-grob-properties.scm (all-user-grob-properties): add
8819 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8821 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8822 when copying a Lily_parser object.
8824 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8826 * scm/define-markup-commands.scm (null): add null markup.
8828 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8830 * lily/item.cc: Add documentation of center-invisible
8832 2005-08-24 Graham Percival <gpermus@gmail.com>
8834 * Documentation/user/advanced-notation.itely: add info about
8837 * Documentation/user/programming-interface.itely: fix example
8838 involving raised text.
8840 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8842 * lily/beam.cc (print): fix X start/end points of isolated
8845 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8847 * lily/multi-measure-rest.cc (set_text_rods): new function.
8849 * lily/vertical-align-engraver.cc (process_music): call
8850 Align_interface::set_axis(). This forces #'elements to be ordered,
8851 preventing random vertical reordering of staves.
8853 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8854 add avoid-slur property.
8856 * Documentation/user/basic-notation.itely (Measure repeats): add
8857 countPercentRepeats example.
8859 * Documentation/user/advanced-notation.itely (Other text markup
8860 issues): remove remark about normal-font. We have \normal-text
8862 * input/regression/tie-chord.ly: add note about remaining bugs.
8864 * lily/tie.cc (print): try Tie_column::set_directions () if
8865 control-points not yet defined.
8867 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8869 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8870 extent. This fixes braces falling out of the EPS bbox.
8872 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8875 2005-08-23 Graham Percival <gpermus@gmail.com>
8877 * {various} : change #up->#UP and #down->#DOWN.
8879 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8881 * Documentation/user/advanced-notation.itely: clarify
8882 what objects handles text on a multimeasure rest.
8884 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8886 * VERSION (PATCH_LEVEL): release 2.7.7
8888 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8890 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8892 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8894 * input/regression/*.ly: formatting clean-up. Default layout
8895 before music expression.
8897 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8898 romanze28-2 example.
8900 * scm/ps-to-png.scm: remove dir-re function.
8901 (make-ps-images): generate page names, instead of globbing them.
8902 This brings down LilyPond memory usage for make web by a factor
8905 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8906 don't use glob. With 3000 files, globbing
8907 Documentation/user/out-www/ can take too much time.
8909 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8911 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8913 * input/regression/tie-manual.ly: new file
8915 * input/regression/tie-chord.ly: update.
8917 * flower/include/interval.hh (struct Interval_t):
8919 * lily/tie.cc (distance): new function
8920 (height): new function.
8921 (init): new function
8922 (Tie_details): new struct.
8924 * lily/skyline.cc (skyline_height): new function.
8926 * lily/tie-column.cc (set_chord_outlines): new function.
8927 (new_directions): read tie-configuration
8929 * lily/skyline.cc: fix ASCII art.
8931 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8933 * python/convertrules.py (string_or_scheme): Fix spelling error
8935 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8937 * lily/tie-column.cc (set_directions): set directions only once.
8938 (add_configuration): new function.
8940 * lily/tie.cc (set_control_points): new function
8942 * lily/tie-column.cc (new_directions): new function.
8944 * ly/music-functions-init.ly: set 'pitch property
8945 iso. trill-pitch. This makes \relative work with \pitchedTrill
8947 * lily/tie.cc (get_configuration): new function. Don't generate
8948 control points, rather, generate configuration.
8949 remove head-pair property.
8951 * lily/include/tie.hh (struct Tie_configuration): new struct.
8953 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8955 * Documentation/topdocs/NEWS.tely: clarify.
8957 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8959 * lily/tie.cc: remove minimum-length
8961 * scm/define-grob-properties.scm (all-user-grob-properties):
8962 remove staffline-clearance, y-offset
8964 * input/regression/tie-dots.ly (Module): remove.
8966 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8967 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8969 * input/regression/tie-single.ly: new file.
8971 2005-08-21 Graham Percival <gpermus@gmail.com>
8973 * ly/bagpipe.ly: fix compile problem.
8975 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8977 * lily/midi-item.cc (name): new method.
8979 * lily/staff-performer.cc (acknowledge_audio_element): use
8980 signature of baseclass.
8982 * lily/engraver-group.cc (do_announces): move recursion call out
8985 * lily/drum-note-performer.cc (class Drum_note_performer): use
8986 process_music everywhere.
8988 * ly/performer-init.ly: add default children everywhere.
8990 * lily/paper-book.cc (output): call paper-book-write-midis
8991 directly: always write MIDI, even if no \layout {} block.
8993 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8995 * VERSION (PACKAGE_NAME): release 2.7.6
8997 * lily/percent-repeat-engraver.cc (try_music): don't print warning
8998 about not being able to handle repeat.
9000 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
9002 * Documentation/user/examples.itely (Piano templates):
9003 * lily/include/performer-group.hh: Remove last traces of
9004 Performer_group_performer. Fixes make web.
9006 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
9008 * Documentation/user/examples.itely (Piano templates): change
9009 Engraver_group_engraver -> Engraver_group
9011 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9012 scm_stand_in_procs is not weak_any.
9014 * lily/volta-bracket.cc (print): don't use strcmp().
9016 * lily/volta-engraver.cc (process_music): use
9017 Text_interface::is_markup() for setting the 'text property of the
9020 * input/mutopia/claop.py (accents): update syntax to 2.6
9022 * scm/define-context-properties.scm
9023 (all-user-translation-properties): add countPercentRepeats.
9025 * Documentation/user/basic-notation.itely (Measure repeats): add
9026 isolated percent example.
9028 2005-08-18 Graham Percival <gpermus@gmail.com>
9030 * input/ {various}: change direction #1, #-1 to
9031 #up/#down or \fooUp, \fooDown.
9033 * Documentation/user/music-glossary.tely: #-1 to #down.
9035 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9036 to #up, #-1 to #down.
9038 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9040 * lily/include/engraver-group.hh: rename.
9042 * lily/include/performer-group.hh: rename.
9044 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9046 * input/test/script-abbreviations.ly: Removed some old LaTeX
9049 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9051 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9052 Remove functions. Remove if 1: constructs, reindent.
9054 * scripts/convert-ly.py (add_version): Add functions from
9057 * scm/script.scm (default-script-alist):
9058 s/priority/script-priority. Fixes script stacking. Backportme.
9059 (Fermata): Very low priority.
9061 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9063 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9065 * input/regression/slur-script.ly: remove padding tweaks. Add
9068 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9069 time sigs and related stuff.
9071 * scm/define-grob-properties.scm (all-user-grob-properties): add