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 2006-10-26 Joe Neeman <joeneeman@gmail.com>
33 * lily/system.cc (get_paper_system):
34 * lily/paper-book.cc (systems):
35 move most of the backwards compatibility stuff into
38 * Documentation/topdocs/NEWS.tely: add 2 entries for the
41 * Documentation/user/page.itely: remove time-scaled-music
42 bug for the Page_turn_engraver
44 * lily/paper-book.cc (set_system_penalty): backwards
45 compatibility (breakbefore) for the old page breaker
47 2006-10-25 Graham Percival <gpermus@gmail.com>
49 * Diocumentation/user/instrument-notation.itely: added more
50 info about stanzas; thanks Geoff!
52 * Documentation/user/ {basic, advanced}: small fixes from
55 * THANKS: add some bug reporters.
57 2006-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
59 * scm/define-context-properties.scm (all-user-translation-properties):
60 noteToFretFunction: Add.
62 * scm/define-grobs.scm (all-grob-descriptions): FretBoard: use
63 fret-diagram-interface (WAS: fret-board-interface). Fixes build.
65 2006-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
67 * flower/file-name.cc (dos_to_posix): Help std::string.copy with
70 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
71 Remove bashism in delete.
73 2006-10-25 Han-Wen Nienhuys <hanwen@lilypond.org>
75 * scm/define-grobs.scm (all-grob-descriptions): set finger-code.
77 * scm/translation-functions.scm (determine-frets-mf): flatten let*
79 * scm/define-context-properties.scm
80 (all-user-translation-properties): add maximumFretStretch property.
82 * scm/translation-functions.scm (tunings): read and use maximumFretStretch.
84 * lily/source-file.cc (get_counts): use multibyte variable.
86 * scm/translation-functions.scm (determine-frets-mf): new
87 function: compute fret numbers.
89 * scm/output-lib.scm (string-frets->description) new function.
90 (fret-board::calc-stencil): new function
92 * scm/fret-diagrams.scm (fret-diagram-verbose): update doc string.
94 * scm/define-grobs.scm (all-grob-descriptions): add FretBoard grob.
96 * lily/include/lily-guile.hh (ly_cxx_vector_to_list): new function.
98 * lily/tab-note-heads-engraver.cc: cleanups.
100 * lily/fretboard-engraver.cc: new file
102 * ly/engraver-init.ly: add FretBoards context
104 2006-10-24 Joe Neeman <joeneeman@gmail.com>
106 * lily/grob.cc (pure_relative_y_coordinate)
107 (pure_height): use the new call_pure_function stuff
109 * lily/grob-property.cc (call_pure_function): wrapper for the scheme
112 * lily/side-position-interface.cc (pure_y_aligned_side): add an
115 * lily/simple-closure.cc (ly_eval_simple_closure): make
116 simple-closure evaluatable from scheme
117 (evaluate_with_simple_closure): make simple-closures pure-
120 * lily/slur.cc (pure_outside_slur_callback): new function
122 * ly/paper-defaults.ly: change default blank-page-force to 2 (this
123 fits in with previous changes that made the page forces much
126 * scm/define-grobs.scm (call-pure-function): generalise pure-Y-offset
127 and pure-Y-extent into this new function.
128 (pure-conversions-alist): add outside-slur-callback
130 2006-10-24 Mats Bengtsson <mabe@drongo.s3.kth.se>
132 * Documentation/user/advanced-notation.itely (Instrument names):
133 Remove obsolete bug workaround for instrument names on piano
136 2006-10-24 Han-Wen Nienhuys <hanwen@lilypond.org>
138 * Documentation/user/lilypond-book.itely (Integrating DocBook and
139 music): patch by Bertalan Fodor for docbook.
141 * Documentation/topdocs/GNUmakefile (LILYPOND_BINARY): use instead
142 of $(LILYPOND). Prevents lilypond run for .txt files.
144 * INSTALL.txt: gitness.
146 * .cvsignore: update to force gitness.
148 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
150 * lily/tuplet-bracket.cc (calc_position_and_height): robustness:
151 detect suicide in nested tuplets.
153 2006-10-23 Werner Lemberg <wl@gnu.org>
155 * lily/pango-font.cc (Pango_font::pango_item_string_stencil): Fix
156 typo in argument to FT_Get_X11_Font_Format.
158 2006-10-23 Han-Wen Nienhuys <hanwen@lilypond.org>
160 * stepmake/stepmake/po-vars.make: more gitness.
162 * flower/polynomial.cc (check_sol): no empty if bodies.
164 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
166 * stepmake/stepmake/po-vars.make: test change for GIT gateway.
168 2006-10-22 Jürgen Reuter <reuter@ipd.uka.de>
170 * Documentation/user/examples.itely (Transcription of mensural
171 music): Added more comments in .ly source. Suggest to remove
172 Forbid_line_break_engraver to allow line breaking at all bars.
174 * Documentation/user/instrument-notation.itely (Ancient
175 articulations): Updated @refbugs regarding episem.
177 * Documentation/user/instrument-notation.itely (Gregorian square
178 neumes ligatures): Added \augmentum dots. Updated @refbugs
179 regarding \augmentum.
181 * input/test/gregorian-scripts.ly: Removed obsolete TODOs.
183 * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated
186 * lily/vaticana-ligature-engraver.cc: Added TODO comment for
189 * ly/gregorian-init.ly: Added \augmentum macro.
191 2006-10-22 Han-Wen Nienhuys <hanwen@lilypond.org>
193 * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness.
195 * lily/pango-font.cc (pango_item_string_stencil): use
196 FT_Get_X11_Font_Format()
198 2006-10-22 John Mandereau <john.mandereau@free.fr>
200 * po/fr.po: update translation.
202 2006-10-21 Han-Wen Nienhuys <hanwen@lilypond.org>
204 * VERSION (PATCH_LEVEL): bump version
206 * input/regression/horizontal-bracket-break.ly: new file.
208 * scm/define-grobs.scm (all-grob-descriptions): calc
211 * lily/horizontal-bracket.cc (make_bracket): support
212 connect-to-neighbor. Fix #118
214 * VERSION: release 2.9.26-2
216 * lily/ttf.cc (make_index_to_charcode_map): remove debugging gobs.
218 * VERSION (PACKAGE_NAME): release 2.9.26
220 * buildscripts/output-distance.py (test_basic_compare): add
222 (FileLink.multi_img_cell): new function, glob multi-page png
225 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
227 * po/lilypond.pot: update.
229 * Documentation/topdocs/NEWS.tely (Top): remove TODOs.
231 * Documentation/user/global.itely (File structure): remove
234 * lily/parser.yy (FIXME): remove ADDQUOTE
236 * Documentation/user/global.itely (Extracting fragments of
237 notation): new node, about clip systems.
239 * Documentation/user/lilypond-book.itely (Many quotes of a large
240 score): ref to clip systems.
242 * Documentation/user/instrument-notation.itely (Entering lyrics):
243 add note about lyric ties and required font.
245 * lily/open-type-font.cc (glyph_list): format errors.
247 * Documentation/user/programming-interface.itely (Scheme
248 procedures as properties): more doco on simple-closure and scheme
250 (Input variables and Scheme): use lilypond[verbatim], document
253 * Documentation/user/page.itely (Displaying spacing): use \book
254 explicitly, so arrows show .
255 (Line breaking): add note about Forbid_line_break_engraver
257 * Documentation/user/tweaks.itely (Common tweaks): also set length
258 to prevent tie squeezing.
259 (Default files): use @var{}
261 * Documentation/user/converters.itely (Invoking abc2ly): remove mup2ly.
262 (Generating LilyPond files): add FOMUS.
264 2006-10-20 Joe Neeman <joeneeman@gmail.com>
266 * scm/define-grobs.scm (all-grob-descriptions): set side-axis and
267 Y-offset for TextScript and Script
269 * lily/text-engraver.cc (make_item):
270 * lily/script-engraver.cc (make_script_from_event):
271 remove call to Side_position_interface::set_axis since all scripts
272 now have this set by default
275 * lily/prob.cc: use variables
277 2006-10-20 Han-Wen Nienhuys <hanwen@lilypond.org>
279 * lily/page-turn-engraver.cc (acknowledge_note_head): don't look
280 at typography, rather analyse stream event duration.
282 * Documentation/user/page.itely (Page formatting): set a6 paper
283 for system separator example.
285 * lily/arpeggio.cc (Module): idem.
287 * lily/accidental-placement.cc: add script-priority property.
289 * scm/framework-ps.scm (dump-stencil-as-EPS): thinko.
291 * lily/ttf.cc (print_trailer): if all else fails: use
292 glyphIndexXXXX as glyph name. Fixes #117.
294 * lily/pango-font.cc (pango_item_string_stencil): only use cmap
295 entry if cmap contains glyph.
296 (get_index_to_charcode_map): remove from Pango_font class, use
297 global filename -> font mapping.
298 (get_glyph_index_name): new function.
299 (pango_item_string_stencil): use glyphIndexXXXX as glyph name,
302 * scripts/lilypond-book.py (main): use -deps-box-padding=-3
304 * scm/framework-ps.scm (dump-stencil-as-EPS): use eps-box-padding,
307 * scm/define-grob-properties.scm (all-user-grob-properties):
308 remove outdated doc. Fixes #116
310 * lily/completion-note-heads-engraver.cc (process_music): always
311 clone input events; otherwise we may overwrite input 'duration
312 property. Fixes #115.
314 * lily/general-scheme.cc (LY_DEFINE): explicit cast in case
317 * scm/output-svg.scm (pango-description-regexp-comma): Remove ^
320 * VERSION (PATCH_LEVEL): bump version.
322 2006-10-19 Han-Wen Nienhuys <hanwen@lilypond.org>
324 * lily/engraver.cc (internal_make_grob): use variables.
326 * flower/string-convert.cc (dec2double): clean-up warnings.
328 * configure.in (CXXFLAGS): add -Werror.
330 * VERSION (PACKAGE_NAME): release 2.9.25
332 2006-10-18 Joe Neeman <joeneeman@gmail.com>
334 * lily/simple-spacer.cc (get_line_forces): test for non-fitting
335 line even if we precede a forced break.
337 * lily/optimal-page-breaking.cc (try_page_spacing): square line
338 forces too. Make page-spacing weight default to 10 because the
339 changes to vertical springs decreased the page force/line force
340 proportions. Also, take the average of line force and page force
341 instead of just the sum.
343 * lily/constrained-breaking.cc (initialize): make the stiffness
344 of the vertical springs depend on the height of the system. This
345 prevents pages with only a few large systems from getting huge
348 * Documentation/user/page.itely (Page formatting): document the
349 change in default page-spacing-weight
351 * lily/include/constrained-breaking.hh: initialise bottom_padding_
353 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
355 * input/typography-demo.ly (melody): remove superfluous slur.
357 * scm/define-grob-interfaces.scm (piano-pedal-script-interface):
358 add piano-pedal-script-interface
360 2006-10-18 Bertalan Fodor <lilypondtool@organum.hu>
362 * scripts/lilypond-book.py: DocBook support.
364 2006-10-18 Han-Wen Nienhuys <hanwen@lilypond.org>
366 * lily/piano-pedal-engraver.cc (struct Pedal_info): remove
368 (stop_translation_timestep): set bound to currentMusicalColumn if
369 not set yet. Fixes #102
371 * lily/piano-pedal-bracket.cc: formatting.
373 * input/test/engraver-one-by-one.ly (MyStaff): reformat.
375 * lily/piano-pedal-align-engraver.cc: new class
376 Piano_pedal_align_engraver. Handle side-positioning Y-alignment
379 2006-10-18 Heikki Junes <hjunes@gmail.com>
381 * po/fi.po: Update Finnish translation (before the next release).
383 2006-10-17 Joe Neeman <joeneeman@gmail.com>
385 * lily/system.cc (get_paper_system): reinstate the backwards-
386 compatible page breaking for the old page breaker.
388 2006-10-17 Erik Sandberg <mandolaerik@gmail.com>
390 * lily/recording-group-engraver.cc: removed
392 * lily/context.cc, lily/translator-group.cc: Don't touch
393 Context::implementation_ if it's null
395 2006-10-17 Han-Wen Nienhuys <hanwen@lilypond.org>
397 * scm/paper.scm: only use left-margin if defined.
399 * scm/define-grob-interfaces.scm (stroke-finger-interface): typo.
401 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): idem.
403 * lily/new-fingering-engraver.cc: stringFingerOrientations ->
404 strokeFingerOrientations
406 * lily/script-column.cc (row_before_line_breaking): also handle
407 accidentals and arpeggios in horizontal script stacking.
409 * lily/script-row-engraver.cc (acknowledge_accidental_placement):
412 * input/regression/script-stack-horizontal.ly: trim.
414 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
416 * scm/output-lib.scm (stroke-finger::calc-text): allow reading of
419 * ly/music-functions-init.ly: rename to StrokeFingerEvent, set
420 'text if string argument.
422 * scm/define-grobs.scm (all-grob-descriptions): rename to StrokeFinger.
424 * scm/define-context-properties.scm
425 (all-user-translation-properties): change to strokeFingerOrientations
427 2006-10-16 Erik Sandberg <mandolaerik@gmail.com>
429 * lily/parser.yy: remove debug output
431 2006-10-16 Han-Wen Nienhuys <hanwen@lilypond.org>
433 * ly/paper-defaults.ly: set left/right margin.
435 * scm/paper.scm (set-paper-dimensions): use left-margin and
436 right-margin for computing linewidth.
438 * Documentation/topdocs/NEWS.tely (Top): idem.
440 * input/regression/lyric-tie.ly (texidoc): use vowels for tied
443 * scm/define-markup-commands.scm (tied-lyric): increase negative
444 space: space syllables tighter.
446 * VERSION (PATCH_LEVEL): bump version.
448 * scm/paper.scm: patch by Arvid Gr"otting, arvidgr@gmail.com: tune
451 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
453 * COPYING: further clarification
455 * VERSION: release 2.9.24
457 * input/regression/script-stack-horizontal.ly: add version.
459 * scm/lily-library.scm (list-join): use fold-right. Fixes #112
461 * input/regression/lyric-tie.ly (texidoc): use different words.
463 * mf/GNUmakefile (ALL_GEN_FILES): remove fonts.cache-1
465 2006-10-15 Erik Sandberg <mandolaerik@gmail.com>
467 * lily/*.cc, lily/include/*.hh: eliminate dummy arguments from
468 macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
470 2006-10-15 Han-Wen Nienhuys <hanwen@lilypond.org>
472 * mf/GNUmakefile: remove fc-cache calls; not necessary for fc 2.4;
474 * Doxyfile: remove file.
476 * scm/define-grob-interfaces.scm (string-finger-interface): add
477 string-finger-interface
479 * lily/general-scheme.cc (LY_DEFINE): move
480 ly_camel_case_to_lisp_identifier to here. Use vector<char> iso. char[]
482 * Documentation/topdocs/NEWS.tely (Top): add note for
483 string-finger feature.
485 * scm/define-grobs.scm (all-grob-descriptions): add 'string-names
488 * scm/output-lib.scm (string-finger::calc-text): read 'digit
491 * input/regression/script-stack-horizontal.ly: new file.
493 * ly/engraver-init.ly: add Script_row_engraver.
495 * lily/script-column.cc (order_grobs): refactor: separate axis
497 (row_before_line_breaking): new function.
499 * lily/script-row-engraver.cc (Script_row_engraver): new file.
501 * scm/define-grobs.scm (all-grob-descriptions): add ScriptRow
503 2006-10-14 Jürgen Reuter <reuter@ipd.uka.de>
505 * Documentation/user/instrument-notation.itely: Cleanup: Remove
506 annoying skip notes from mensural ligature example. Update
507 @refbugs for ligatures and mensural ligatures.
509 * lily/coherent-ligature-engraver.cc,
510 lily/include/coherent-ligature-engraver.hh,
511 lily/mensural-ligature-engraver.cc,
512 lily/vaticana-ligature-engraver.cc: Revise code for item
513 reparentizing. There should now be less programming_error
516 * lily/mensural-ligature-engraver.cc: Improve placement of dots.
518 * lily/mensural-ligature.cc, lily/vaticana-ligature.cc:
519 Maintenance bugfix: Don't create empty Stencil (), but empty box
520 instead. This fix should eliminate some programming_error
523 * ly/engraver-init.ly (MensuralStaff): Set default accidental
526 * input/regression/mensural-ligatures.ly: Maintenance bugfix: Move
527 \layout block _before_ score.
529 2006-10-14 Han-Wen Nienhuys <hanwen@lilypond.org>
531 * GNUmakefile.in (PATCH_FILES): remove darwin.patch.
533 * lily/pango-font.cc (pango_item_string_stencil): more verbose message.
535 2006-10-13 Erlend Aasland <erlenda@gmail.com>
537 * lily/note-collision.cc: fix issue #44 (dot/notehead collision)
539 2006-10-13 Han-Wen Nienhuys <hanwen@lilypond.org>
541 * VERSION (PATCH_LEVEL): bump version.
543 * COPYING: clarify exception note.
545 * lily/main.cc: remove remark about "COPYING".
547 * scm/framework-ps.scm (clip-system-EPSes): change ordering, so
548 system-count starts at 0 for each clip-region. Change name to
549 FILE[-COUNT]-from-FROM-to-TO-clip[-COUNT]. Take clip-regions from
550 layout block, per score.
552 2006-10-13 Erik Sandberg <mandolaerik@gmail.com>
554 * lily/input-smob.cc: add equal_p for Input
556 * lily/music-scheme.cc (ly_camel_case_to_lisp_identifier): new
559 * lily/parser.yy: MY_MAKE_MUSIC sets music origin
561 * lily/prob.cc: Add equal_p predicate for Prob
563 * lily/translator.cc: small cleanup
565 * scm/document-music.cc: use data from translator listener
566 registration to generate documentation for event classes
568 * lily/*: Eliminate accept arg of ADD_TRANSLATOR
570 * lily/include/*: Eliminate dummy arg of DECLARE_*SMOBS
572 2006-10-13 Jan Nieuwenhuizen <janneke@gnu.org>
574 * GNUmakefile.in (SCRIPTS): Remove lexer-gcc-3.1.sh.
576 2006-10-12 Jan Nieuwenhuizen <janneke@gnu.org>
578 * Documentation/topdocs/INSTALL.texi: Thinko.
580 * .cvsignore: Update.
582 * lexer-gcc-3.1.sh: Remove.
584 * Documentation/topdocs/INSTALL.texi: Remove obsolete ftp server.
585 Update anonymous cvs access. Remove comment about gcc 3.0.4.
587 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
589 * VERSION: release 2.9.23
591 * lily/paper-column-engraver.cc (stop_translation_timestep): also
594 * scm/framework-ps.scm (dump-stencil-as-EPS): fix thinkos.
596 * scm/lily.scm (type-p-name-alist): add rhythmic-location? type name.
598 * Documentation/topdocs/NEWS.tely (Top): doc new clipping feature
600 * input/regression/clip-systems.ly (Notes): new file.
602 * scm/lily.scm (define-scheme-options): add clip-systems option.
604 * scm/framework-ps.scm (dump-stencil-as-EPS-with-bbox): new
606 (dump-stencil-as-EPS): move bbox calculation from previous
608 (output-framework): use -dclip-systems
610 * scm/lily-library.scm (filtered-map): new function
612 * scm/framework-ps.scm (clip-system-EPS): new function.
613 (clip-system-EPSes): new function.
615 * lily/paper-column.cc: add rhythmic-location to interface
617 * scm/define-grob-properties.scm (all-user-grob-properties): add
618 rhythmic-location property.
620 * scm/clip-region.scm: new file: rhythmic-location data type and
621 system-clipped-x-extent function.
623 * ly/init.ly: use (scm clip-region)
625 * lily/paper-column-engraver.cc (stop_translation_timestep): set
626 rhythmic-location for paper column grobs.
628 * lily/grob-scheme.cc (LY_DEFINE): minor cleanup
630 2006-10-12 Jürgen Reuter <reuter@ipd.uka.de>
632 * ly/engraver-init.ly: Remove obsolete comment on
635 * Documentation/user/instrument-notation.itely: Tune Ancient
636 Articulations figure, such that the episem actually shows.
638 * lily/mensural-ligature.cc (internal_brew_primitive): Bugfix:
639 fix Han-Wen's fix (rev. 1.53): scm_is_pair -> scm_is_number.
641 * lily/vaticana-ligature-engraver.cc: Minor robustness fix /
644 2006-10-12 Graham Percival <gpermus@gmail.com>
646 * Documentation/user/ {some}: minor edits that were lost somehow.
648 2006-10-12 Han-Wen Nienhuys <hanwen@lilypond.org>
650 * VERSION (PACKAGE_NAME): bump version.
652 * input/regression/lyric-tie.ly (texidoc): new file.
654 * Documentation/topdocs/NEWS.tely (Top): add new feature.
656 * lily/general-scheme.cc (LY_DEFINE): elucidate docstring.
658 * scm/define-markup-commands.scm (tied-lyric): new function: split
659 string along ~ and reattach with U+203F (tie character) and
662 * scm/output-lib.scm (lyric-text::calc-text): new function.
664 * lily/lyric-engraver.cc (process_music): don't set 'text.
666 * scm/output-lib.scm (string-finger::calc-text): new function
667 (lyric-text::print): new function.
669 * lily/new-fingering-engraver.cc (add_fingering): refactor; make
670 generic for fingering & string number. Use for string-finger.
672 * scm/define-music-types.scm (music-descriptions): add
675 * lily/fingering-engraver.cc (listen_string_finger): new function
677 * scm/define-grobs.scm (all-grob-descriptions): add StringFinger
679 * scm/define-context-properties.scm
680 (all-user-translation-properties): add stringFingerOrientations
682 2006-10-11 Jürgen Reuter <reuter@ipd.uka.de>
684 * mf/parmesan-dots.mf (new), mf/parmesan-generic.mf,
685 ly/engraver-init.ly: Added vaticana-style augmentum dot glyph.
687 * lily/dots.cc: Added style property for dots.
689 * mf/parmesan-heads.mf: Fix typo in comment.
691 * mf/feta-bolletjes.mf, scm/output-lib.scm: Fix longa notes bug by
692 adding longa head to feta font and removing obsolete default
695 2006-10-10 Han-Wen Nienhuys <hanwen@lilypond.org>
697 * scm/output-lib.scm (fingering::calc-text): use origin
698 event-property, not music-property.
700 * lily/lilypond.rc.in: spell my name correctly.
702 2006-10-10 Joe Neeman <joeneeman@gmail.com>
704 * lily/grob.cc (pure_height): only add minimum-Y-extent if we
705 already have a non-empty extent. Fixes estimation for Hara-kiri
708 2006-10-09 Jürgen Reuter <reuter@ipd.uka.de>
710 * ly/gregorian-init.ly: Simplify definition of \episemInitium and
713 * lily/ligature-engraver.cc: Remove unused #include.
715 * lily/vaticana-ligature-engraver.cc: Fix placement of dots.
716 Bugfix: remove method check_for_prefix_loss(Item *) from global
717 namespace to avoid namespace pollution.
719 2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
721 * VERSION: release 2.9.22
723 * ly/generate-documentation.ly: update option name.
725 * lily/dynamic-text-spanner.cc (print): revert fix.
727 * scm/define-grob-interfaces.scm
728 (trill-pitch-accidental-interface):
729 add trill-pitch-accidental-interface
731 * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
732 dereference if it's really a duration.
734 * lily/figured-bass-engraver.cc (process_music): clear spanner if
735 useBassFigureExtenders is not set.
736 (listen_bass_figure): record as new event if
737 useBassFigureExtenders not set. Fixes #103.
739 * scm/stencil.scm (circle-stencil): don't center stencil argument,
740 instead: move circle. Fixes #107.
742 * scm/define-grobs.scm (all-grob-descriptions): set
743 allow-loose-spacing for PaperColumn and
744 NonMusicalPaperColumn. Kludge for #110.
746 * lily/spaceable-grob.cc: add allow-loose-spacing property.
748 * lily/spacing-determine-loose-columns.cc (is_loose_column):
749 allow-loose-spacing property.
751 * scm/define-markup-commands.scm (postscript): gsave & grestore
752 around embedded PS. Do setlinewidth too. Fixes #109.
754 2006-10-08 Jürgen Reuter <reuter@ipd.uka.de>
756 * lily/ligature-bracket-engraver: Bugfix: Add missing stream event
757 code. This patch fixes ligature brackets that were not at all
760 2006-10-08 Graham Percival <gpermus@gmail.com>
762 * Docuemntation/user/page.itely: clarify two-pass vs. ragged-bottom.
764 * ly/property-init.ly: fix sacred harp notehead shapes (bug 96).
766 * scm/define-context-properties.scm: clarified docs (bug 91).
768 * Documentation/user/basic-notation.itely: document volta brackets
769 not aligning (bug 63).
771 * Documentation/user/ global.itely invoking.itely: ignore or
772 add warnings about texstr.
774 2006-10-08 John Mandereau <john.mandereau@free.fr>
776 * po/fr.po: update translation.
778 * po/: update msgids.
780 2006-10-08 Jan Nieuwenhuizen <janneke@gnu.org>
782 * GNUmakefile.in (HELP_CATALOGS): Fix in-build-tree locales.
784 2006-10-08 Nicolas Sceaux <nicolas.sceaux@free.fr>
786 * Documentation/user/page.itely (Two-pass vertical spacing): add
787 documentation for two-pass spacing technique.
789 2006-10-06 Graham Percival <gpermus@gmail.com>
791 * Documentation/user/convert-ly.txt: new file; new
792 storage place for this file (moved from bugs/ CVS).
794 2006-10-06 Jürgen Reuter <reuter@ipd.uka.de>
796 * lily/note-head.cc: Fixed programming_error message.
798 2006-10-06 Han-Wen Nienhuys <hanwen@lilypond.org>
800 * scm/define-grobs.scm (pure-conversion): move pure-callback
803 * scm/script.scm (default-script-alist): set avoid-slur for turn,
804 marcato, stopped, thumb.
806 2006-10-05 Han-Wen Nienhuys <hanwen@lilypond.org>
808 * lily/completion-note-heads-engraver.cc (process_music): don't
809 skimp on memory usage.
811 * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
814 * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
815 parenthesis item. This fixes premature Y-extent triggering. Fixes
818 * VERSION (PATCH_LEVEL): bump version.
820 2006-10-04 Graham Percival <gpermus@gmail.com>
822 * Documentation/user/advanced-notation.itely: added
823 info about instrument names for piano or other contexts,
826 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
828 * mf/feta-bolletjes.mf (solfa_quarter_width): use
829 solfa_base_notewidth as unit for non-DO-notes too.
831 * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
833 * VERSION: release 2.9.21
835 * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
838 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
840 * python/lilylib.py (progress): Minor fix.
842 2006-10-04 Han-Wen Nienhuys <hanwen@lilypond.org>
844 * lily/note-name-engraver.cc: doc engraver.
846 * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
848 * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
850 * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
853 * lily/stem-engraver.cc (make_stem): don't set duration-log
855 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
856 write snippet-names binary.
858 * python/lilylib.py (system): use os.system for mingw32
860 * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
863 * scm/backend-library.scm: update email address.
865 * Documentation/topdocs/NEWS.tely (Top): add duration-log override
868 * scm/define-grobs.scm (all-grob-descriptions): use callback to
871 * lily/dots-engraver.cc (class Dots_engraver): new engraver:
872 handle dot creation separately.
874 * lily/tab-note-heads-engraver.cc (process_music): idem.
876 * lily/drum-note-engraver.cc (process_music): idem.
878 * lily/note-heads-engraver.cc (process_music): idem.
880 * lily/rest-engraver.cc: don't set duration-log.
882 * scm/output-lib.scm (string-number::calc-text): new function.
883 (note-head::calc-duration-log): new function.
885 * lily/fingering-engraver.cc (make_script): remove 'text setting.
887 * scm/output-lib.scm (fingering::calc-text): new function.
889 2006-10-04 Mats Bengtsson <mabe@drongo.s3.kth.se>
891 * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
892 and include-eps-font -> include-eps-fonts
894 2006-10-03 Han-Wen Nienhuys <hanwen@lilypond.org>
896 * lily/multi-measure-rest-engraver.cc: use internalBarNumber
898 * lily/timing-translator.cc: list properties.
899 (start_translation_timestep): update internalBarNumber too.
901 * scm/define-context-properties.scm
902 (all-user-translation-properties): add internalBarNumber.
904 * input/regression/spacing-no-note.ly: new file.
906 * buildscripts/output-distance.py (link_file): verbosity for OSError.
908 * lily/book.cc: #include cleanup.
910 * lily/include/lily-guile-macros.hh: add assert to
911 scm_or_str2symbol(SCM).
913 * VERSION (PATCH_LEVEL): bump version.
915 * lily/spacing-spanner.cc (musical_column_spacing): handle
916 musical->nonmusical spacing case, where there is no spacing
917 wish. Fixes issue #61.
919 * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
920 (pango_item_string_stencil): use logical rect horizontally (to
921 preserve spaces), ink_rect vertically (for time signatures).
923 * lily/font-metric.cc (word_stencil): new interface function
925 * input/regression/utf-8-mixed-text.ly: new file.
927 * lily/percent-repeat-engraver.cc (listen_percent): remove
930 * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
931 non-dynamic scripts. Fixes #30.
933 * lily/slur.cc (outside_slur_callback): make offset_scm optional.
935 * lily/beam.cc (rest_collision_callback): make prev_offset optional.
937 * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
938 SCM_UNDEFINED for non-existent data.
940 * lily/side-position-interface.cc (general_side_position): allow
941 optional current_offset argument for chaining, so combinations of side-position
942 and outside slur callback don't add up. Fixes issue #92.
944 * lily/pango-font.cc (pango_item_string_stencil): use
945 logical_rect. This prevents spaces after words from disappearing,
948 * VERSION: release 2.9.20
950 2006-10-02 Han-Wen Nienhuys <hanwen@lilypond.org>
952 * scm/define-grob-properties.scm (all-user-grob-properties):
953 mention stencil as user settable.
955 2006-10-02 Joe Neeman <joeneeman@gmail.com>
957 * Documentation/user/page.itely (Page formatting):
958 document auto-first-page-number
960 * lily/page-breaking.cc (find_chunks_and_breaks):
961 * lily/paper-score.cc (calc_breaking): Follow changes to the
962 Constrained_breaking interface
964 * lily/constrained-breaking.cc (calc_subproblem): run the main loop
965 here backwards, as an optimisation
966 (initialize): new function; move most of the code in resize () here
967 (combine_demerits): cache ragged_right_
968 (Constrained_breaking): constructor now takes the Paper_score
970 2006-10-02 Erik Sandberg <mandolaerik@gmail.com>
972 * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
973 avoid parser lookahead for 0-ary functions.
975 * lily/translator.cc: Extract event classes from
976 IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
978 2006-10-02 Heikki Junes <hjunes@gmail.com>
980 * po/fi.po: Fix spaces, commas etc. in Finnish translation using
983 2006-10-01 Nicolas Sceaux <nicolas.sceaux@free.fr>
985 * scm/layout-page-layout.scm (page-breaking-wrapper): new
986 function. Call the page breaking function selected in the
987 `page-breaking' \paper variable, then the post processing function
988 chosen using the `page-post-process' \paper variable.
989 (line-height): new function. Return the height of a system.
990 (line-minimum-position-on-page): new function. Return the position
991 of a system on page (using the previous line position), only
992 considering between system padding.
993 (stretchable-line?): new function. Says whether a line can be
994 stretched (ie. is not a title nor a single staff system).
995 (page-maximum-space-left): new function. Computes space left on a
996 page, when all systems are separated by their padding.
998 * lily/page-breaking.cc (breaking::make_pages): Move page post
999 processing function call to page breaking wrapper (common to all
1002 * lily/paper-book.cc (book::pages): call the page breaking
1003 wrapper, instead of the page breaker directly
1005 * ly/paper-defaults.ly: Add \paper variables for page breaking
1006 wrapper and page post processing function. Make
1007 `write-page-layout' value depend on the 'dump-tweaks option. Add a
1008 `system-maximum-stretch-procedure' variable for holding a function
1009 computing the maximum stretch a system allows.
1011 * scm/layout-page-dump.scm (write-page-breaks): computes the
1012 stretch to apply to systems on a page to minimize left
1013 space. Dump this stretch length.
1015 * ly/music-functions-init.ly (spacingTweaks): implement it. Read
1016 the system-stretch property of the tweak data to stretch the
1018 (includePageLayoutFile): Void function which includes the
1019 generated page-layout file if it exists and if the page layout
1020 dumping is not asked.
1021 (scoreTweak): if the score tweak named by the argument exists,
1024 2006-10-01 Joe Neeman <joeneeman@gmail.com>
1026 * lily/page-spacing.cc (compress_lines, uncompress_solution):
1027 handle correctly the case where there are multiple \noPageBreaks
1030 2006-09-30 Laura Conrad <lconrad@laymusic.org>
1032 * abc2ly.py adds segno (S) and Coda (O) to articulations.
1034 * abc2ly.py fix so that entering " -- " will translate to a -- in
1035 the lilypond instead of a " - - "
1037 2006-09-30 Han-Wen Nienhuys <hanwen@lilypond.org>
1039 * lily/align-interface.cc: fix typo
1041 * lily/dynamic-text-spanner.cc (print): Add a special case for
1042 trill spanner right sides.
1044 * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
1046 * lily/align-interface.cc (get_extents_aligned_translates): add
1047 support for padding variable.
1049 * lily/break-align-interface.cc (self_align_callback): oops: use
1050 loop variable in guard.
1052 * input/regression/repeat-percent-grace.ly: new file.
1054 * lily/percent-repeat-engraver.cc (start_translation_timestep):
1055 remember first currentCommandColumn of a grace run. Fixes issue 70.
1057 * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
1058 move class definition to CC file.
1060 * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
1062 * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
1063 measure-long repeats.
1065 * flower/include/international.hh: include stdarg.h
1067 2006-09-30 Joe Neeman <joeneeman@gmail.com>
1069 * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
1070 put_systems_on_pages to return an empty result, we need to assign
1071 demerits properly in that case.
1072 (put_systems_on_pages): Make the number of pages depend on the
1073 evenness of page_number. Add auto-first-page-number.
1074 (calc_subproblem): ensure that the page-number is even for the
1075 left-hand page. Warn if the first page-turn doesn't fit onto the
1076 first (right-hand) page.
1078 * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
1079 (min_page_count): make this publicly accessible
1080 (min_page_count): fix a bug when there are forced page breaks that
1081 was introduced when I made this loop run backwards
1082 (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
1083 replace space_systems_on_min_pages with these two. The logic in
1084 space_systems_on_min_pages was getting too convoluted and is better
1085 contained in page-turn-page-breaking.
1087 * lily/page-turn-engraver.cc (breakable_column): remove an always-true
1089 (breakable_column): typo
1091 * lily/source-file.cc (get_line): fix off-by-one error
1092 and clean up some of the logic
1094 2006-09-29 Joe Neeman <joeneeman@gmail.com>
1096 * lily/page-breaking.cc (make_pages): honour the first-page-number
1099 2006-09-27 Han-Wen Nienhuys <hanwen@lilypond.org>
1101 * VERSION (PACKAGE_NAME): bump version.
1103 2006-09-26 Pal Benko <benko.pal@gmail.com>
1105 * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
1106 (the latter is the same as petrucci-f which is kept for compatibility)
1108 2006-09-26 Erik Sandberg <mandolaerik@gmail.com>
1110 * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
1112 2006-09-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1114 * lily/global-context.cc (run_iterator_on_me): break out of loop
1115 if moment doesn't increase.
1117 * scm/define-grob-properties.scm (all-user-grob-properties): add
1120 * lily/accidental.cc (after_line_breaking): read forced property.
1122 * lily/accidental-engraver.cc (process_acknowledged): set 'forced
1125 * input/regression/accidental-forced-tie.ly: new file.
1127 2006-09-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1129 * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
1131 * lily/figured-bass-engraver.cc: only listen to rest events if
1132 ignoreFiguredBassRest is not set.
1134 * scm/define-context-properties.scm
1135 (all-user-translation-properties): add ignoreFiguredBassRest property
1137 2006-09-24 Joe Neeman <joeneeman@gmail.com>
1139 * lily/paper-book.cc (get_system_specs):
1140 (set_system_penalty): fix breakbefore.
1141 We used to set a penalty on the system after the break, now we
1142 set a permission on the system before the break
1144 * lily/grob-property.cc: add scm debugging hooks into
1145 property modification
1147 * lily/context-property.cc:
1149 rename make_foo_from_properties to internal_make_foo and
1150 move it from context-property.cc to a member function of
1153 * lily/include/lily-guile-macros.hh:
1154 overload ly_symbol2scm macro so that there is no more need
1157 * lily/volta-repeat-iterator.cc:
1158 * lily/tweak-engraver.cc:
1159 * lily/tuplet-bracket.cc:
1160 * lily/span-bar-engraver.cc:
1161 * lily/script-engraver.cc:
1162 * lily/prob-scheme.cc:
1163 * lily/pointer-group-interface.cc:
1165 * lily/grob-scheme.cc:
1166 * lily/grob-property.cc:
1168 * lily/context-property.cc:
1169 * lily/break-substitution.cc:
1170 * lily/break-align-engraver.cc:
1171 * lily/axis-group-interface.cc:
1172 * lily/align-interface.cc:
1173 remove calls to internal_FOO
1175 * lily/system-start-delimiter-engraver.cc:
1176 * lily/parenthesis-engraver.cc:
1177 * lily/accidental-engraver.cc:
1178 remove calls to make_foo_from_properties
1180 2006-09-23 Graham Percival <gpermus@gmail.com>
1182 * Documentation/user/programming-iterfaces.itely: fix
1183 def-music-function -> define-music... leftover.
1185 2006-09-23 Joe Neeman <joeneeman@gmail.com>
1187 * lily/page-spacing.cc (min_page_count): by running the loop
1188 backwards, we can calculate ragged_last properly.
1190 2006-09-22 Mats Bengtsson <mabe@drongo.s3.kth.se>
1192 * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
1193 printfirst-page-number -> print-first-page-number
1195 * python/convertrules.py: corresponding rule.
1197 * Documentation/user/page.itely (Page formatting): Document the
1198 default values of all page layout parameters.
1200 2006-09-22 Erik Sandberg <mandolaerik@gmail.com>
1202 * lily/lexer.ll: remove limitation on music function arity. New
1203 mode extratoken, which inserts extra EXPECT_* tokens after
1204 MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
1206 * lily/parser.yy: Change grammar for music function accordingly.
1208 * lily/include/lily-parser.hh: New method get_state, new member
1209 hidden_state. Works around a problem when parser fetches
1210 MUSIC_FUNCTION token but not the following EXPECT_* token.
1212 * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
1215 * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
1216 references to Music; use ASSIGN_EVENT_ONCE everywhere
1218 * lily/grob-info.cc: junk *music_cause
1220 * lily/music.cc: copy eventified articulations to stream event
1222 * lily/part-combine-iterator.cc: Cleanup using enums
1224 * lily/translator-group.cc: Junk OldMusicEvent, and associated
1227 * lily/include/engraver.hh: Junk music.hh include
1229 * lily/stream-event.cc: Changed constructors
1231 2006-09-21 Graham Percival <gpermus@gmail.com>
1233 * Documentation/user/tweaks.itely (Fitting music onto fewer
1234 pages): change settings to avoid warning messages.
1236 2006-09-21 Mats Bengtsson <mabe@drongo.s3.kth.se>
1238 * Documentation/user/tweaks.itely (Fitting music onto fewer
1239 pages): Add between-system-space setting.
1241 2006-09-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1243 * lily/accidental-placement.cc (calc_positioning_done): don't
1244 trigger Y-extent calculation too early. Use pure_height instead.
1246 * lily/scale.cc (LY_DEFINE): new file.
1248 2006-09-20 Joe Neeman <joeneeman@gmail.com>
1250 * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
1251 that happen at the start of a score: having a zero-length
1252 chunk was messing up min_system_count calculations.
1254 * lily/source-file.cc (get_line): lower_bound, not
1255 binary_search. Fixes problem where point-and-click would
1256 always point to the first line.
1258 2006-09-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1260 * lily/accidental-placement.cc (calc_positioning_done): also put
1261 stems into accidental support.
1263 * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
1266 * scm/script.scm (default-script-alist): avoid-slur and
1267 slur-padding for portato script.
1269 * lily/stem-tremolo.cc (translated_stencil): new function.
1270 (height): use new function. Fixes tremolos on whole notes.
1272 * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
1275 2006-09-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1277 * scripts/abc2ly.py (try_parse_comment): idem.
1279 * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
1280 bar_string iso. string.find()
1284 * lily/slur.cc (get_curve): always use scm_is_pair() looping
1287 2006-09-18 Graham Percival <gpermus@gmail.com>
1289 * Documentation/user/basic-notation.itely: add bug
1290 warning about ties and octavation/clef.
1292 2006-09-18 Han-Wen Nienhuys <hanwen@lilypond.org>
1294 * VERSION (PACKAGE_NAME): release 2.9.18
1296 2006-08-29 Milan Zamazal <pdm@brailcom.org>
1298 * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
1299 figure out midi file names right here.
1301 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1303 * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
1305 * scm/backend-library.scm: option naming: gs-font-load*s*
1307 * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
1310 2006-09-17 Joe Neeman <joeneeman@gmail.com>
1312 * scm/define-music-types.scm (music-descriptions): remove
1313 BreakEvent and fix {Page,Line}{Break,Turn}Event so
1314 Music::to_event doesn't complain.
1316 * lily/accidental-placement.cc (ape_compare):
1317 * lily/semi-tie.cc (compare):
1318 * lily/note-column.cc (shift_compare): replace by XXX_less
1320 * lily/tie-formatting-problem.cc (set_chord_outline):
1321 * lily/tie-column.cc (calc_positioning_done):
1322 * lily/system.cc (post_processing)
1324 * lily/stem.cc (note_head_positions)
1325 (calc_positioning_done):
1326 * lily/spanner.cc (do_break_processing)
1327 (find_broken_piece):
1328 * lily/span-bar.cc (print):
1329 * lily/semi-tie-column.cc (calc_positioning_done):
1330 * lily/rest-collision.cc (calc_positioning_done):
1331 * lily/program-option.cc (get_help_string):
1332 * lily/note-collision.cc (get_clash_groups):
1333 * lily/new-fingering-engraver.cc (position_scripts):
1334 * lily/keyword.cc (Keyword_table):
1335 * lily/hara-kiri-group-spanner.cc (request_suicide):
1336 * lily/grob-pq-engraver.cc (stop_translation_timestep):
1337 * lily/accidental-placement.cc (calc_positioning_done):
1339 * lily/beam.cc (get_beam_segments):
1340 * lily/grob-array.cc (remove_duplicates):
1343 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
1344 ragged-last-bottom = ##f (test the new page breaker)
1346 * flower/include/std-vector.hh (vector_sort): use STL sort stuff
1348 * scm/define-context-properties.scm
1349 (all-internal-translation-properties): remove properties that
1350 were used to communicate page-turn stuff to the paper-column
1353 * lily/lily-guile.cc (robust_scm2string): new function
1355 * lily/paper-column-engraver.cc: Clean up page turn stuff
1357 * lily/page-turn-engraver.cc: Re-write the page turn logic here
1358 instead of cluttering up paper-column-engraver.cc
1360 2006-09-17 Nicolas Sceaux <nicolas.sceaux@free.fr>
1362 * scm/layout-page-dump.scm (scm): export utility function names,
1363 to allow user writing cutsom dumping functions.
1365 * scm/layout-page-layout.scm: export utility function names to
1366 enable custom page breaking function writing. Tabify.
1367 (line-next-space): use ?-suffix only for predicates
1368 (page-maximum-space-to-fill): new function. Return the space
1369 between first and bottom system of a page, to give to
1371 (space-systems): use a space-to-fill argument (for instance as
1372 computed by page-maximum-space-to-fill) instead of computing
1373 internaly this space with the page height. That way, the caller
1374 can adjust the space to use.
1375 (make-page-from-systems, walk-paths): compute space to fill before
1376 calling space-systems.
1378 2006-09-17 Han-Wen Nienhuys <hanwen@lilypond.org>
1380 * scm/script.scm (default-script-alist): set paddings for every
1381 type here, increase for portato mark.
1383 * scm/lily.scm (define-scheme-options): typo: add s, so it is
1386 2006-09-16 Han-Wen Nienhuys <hanwen@lilypond.org>
1388 * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
1389 use spanner::set-spacing-rods
1391 * lily/note-column.cc: reformat.
1393 * lily/rest-collision.cc (calc_positioning_done): fix whole/half
1394 step positioning for note/rest combinations.
1396 * input/regression/rest-note-collision.ly: new file.
1398 * scm/define-grobs.scm (all-grob-descriptions): add
1401 * flower/include/std-vector.hh: switch off again.
1403 * VERSION (PATCH_LEVEL): bump to 2.9.18
1405 * flower/include/std-string.hh: idem.
1407 * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
1409 2006-09-15 Mats Bengtsson <mabe@drongo.s3.kth.se>
1411 * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
1414 2006-09-08 Joe Neeman <joeneeman@gmail.com>
1416 * Documentation/user/page.itely: update page breaking documentation
1418 2006-09-07 Han-Wen Nienhuys <hanwen@lilypond.org>
1420 * lily/note-collision.cc (calc_positioning_done): only access
1421 first head if available.
1423 * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
1425 * scm/framework-ps.scm (output-preview-framework): use new name.
1427 * lily/program-option.cc (internal_set_option): use new names.
1429 * Documentation/user/SConscript (lilypond_book_flags): update -d
1432 * Documentation/user/lilypond-book.itely (Inserting LilyPond
1433 output into other programs): new variable names.
1435 * scm/lily.scm (define-scheme-options): uniformize var names.
1437 * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
1438 tuplets_ is non-empty before popping.
1440 2006-09-07 Joe Neeman <joeneeman@gmail.com>
1442 * lily/spanner.cc (find_broken_piece):
1443 * lily/spacing-spanner.cc (get_columns):
1444 * lily/source-file.cc (get_line):
1445 * lily/simple-spacer.cc (get_column_description):
1446 * lily/keyword.cc (lookup):
1447 use the new binary search.
1449 * flower/include/std-vector.hh: replace binary_search with
1450 a more STL-like version
1452 2006-09-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
1454 * lily/tie-performer.cc: remove unused last_event_ property.
1455 (class Tie_performer): add now_tied_heads_ property for
1456 partially-tied heads.
1457 (acknowledge_audio_element): when adding an Audio_note, put the
1458 note in now_tied_heads_ if the audio note is partially tied.
1459 (stop_translation_timestep): always include entries in
1460 now_tied_heads_ in heads_to_tie_.
1462 * lily/drum-note-performer.cc (process_music): look for tie-events
1463 in the articulations; pass to Audio_note constructor.
1465 * lily/note-performer.cc (process_music): look for tie-events in
1466 the articulations; pass to Audio_note constructor.
1468 * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
1471 * lily/include/audio-item.hh (class Audio_note): add tie_event_.
1472 include initializer in constructor.
1474 2006-09-02 Joe Neeman <joeneeman@gmail.com>
1476 * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
1477 unless they are breakable. This fixes discrepancies between the forces
1478 calculated here and the forces calculated in get_line_configuration.
1480 * lily/grob.cc (pure_relative_y_coordinate): fix some
1481 mis-estimation that was happening with piano staves.
1483 * lily/constrained-breaking.cc (resize): don't choke if we get a
1484 measure that won't fit on a line.
1485 (combine_demerits): don't consider uniformity when ragged
1487 * lily/page-spacing.cc (solve): why the f* were there two of these?
1488 (calc_subproblem): properly handle the case where a system is taller
1491 * lily/system.cc (get_paper_system): ensure that all the permissions
1492 and penalties are passed to the paper systems.
1494 * lily/page-breaking.cc (create_system_list): support system-count.
1496 * scm/define-grobs.scm (pure-print-callbacks): add
1497 ly:script-interface::print
1499 * lily/page-spacing.cc (min_page_count): fix calculation of min
1500 pages if we are ragged and there are non-zero springs.
1502 * scm/layout-page-layout.scm: if the pure-height estimates are under
1503 the real height, allow space-systems to ignore padding if it is
1504 needed in order to fit the systems on one page
1506 * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
1508 (solve): fix performance problem. Make sure we always get at least
1511 * lily/page-breaking.cc (make_pages): include write-page-breaks
1514 * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
1516 * scm/define-grobs.scm: add the new slur-callback
1517 fix pure-relevant to not exclude grobs whose extent is already
1520 * ly/paper-defaults.ly: make ly:optimal-breaking the new default
1523 * lily/slur.cc (pure_height): new callback to estimate the height
1526 2006-09-02 Graham Percival <gpermus@gmail.com>
1528 * Documentation/user/invoking.itely: small update on
1529 MacOS X notes; thanks Trevor!
1531 2006-09-01 Han-Wen Nienhuys <hanwen@lilypond.org>
1533 * VERSION (MY_PATCH_LEVEL): release 2.9.17
1535 * lily/lexer.ll: accept EOF in all states.
1537 * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
1539 * lily/source-file.cc (Source_file): always 0-terminate character
1540 array, to prevent Flex from barfing.
1542 * lily/global-context.cc (get_output): robustness: don't crash if
1543 no Score context found.
1545 * lily/include/book.hh (class Book): idem.
1547 * lily/include/context-def.hh (struct Context_def): idem.
1549 * lily/include/score.hh (class Score): don't derive from Input.
1551 * lily/book.cc (Book): add a copy ctor.
1553 * buildscripts/output-distance.py (FileLink.calc_distance): count
1554 orphans in distance too.
1556 * python/midi.c (midi_parse_track): robustness: don't read past
1559 * ly/performer-init.ly: add Control_track_performer, move
1560 Tempo_performer and Time_signature_performer to Score.
1562 * lily/score-performer.cc (acknowledge_audio_elements): override
1563 from base class: add to audio-columns
1565 * lily/control-track-performer.cc (add_text): new file: generate
1568 * lily/performance.cc: move output_header_track to
1569 Control_track_performer ()
1571 * lily/midi-walker.cc (Midi_walker): get channel in constructor.
1573 * lily/include/midi-item.hh (class Midi_channel_item): insert
1574 class into hierarchy, for items that can have a channel setting. Dehungarify.
1576 * lily/include/performer.hh (class Performer): remove
1577 play_element(); move functionality into announce/acknowledge.
1579 * lily/audio-staff.cc (output): remove channel_ from Midi_track.
1581 * lily/tie-engraver.cc (stop_translation_timestep): only wipe
1582 heads_to_tie_ if there are new heads to tie. Fixes polyphony in ties.
1584 2006-08-28 Han-Wen Nienhuys <hanwen@lilypond.org>
1586 * lily/tie-engraver.cc (stop_translation_timestep): robustness for
1589 * lily/all-font-metrics.cc: remove TFM support.
1591 * lily/include/tfm.hh: remove TFM support, TFM reader.
1593 * lily/include/binary-source-file.hh: remove Binary_source_file.
1595 2006-08-27 Graham Percival <gpermus@gmail.com>
1597 * Documentation/topdocs/NEWS.itely: add @c marker for
1598 stuff I've processed.
1600 * Documentation/user/ various: info from NEWS.
1602 2006-08-27 Joe Neeman <joeneeman@gmail.com>
1604 * lily/paper-column-engraver.cc (finalize): Oops, this change
1605 should have gone in on 2006-08-23
1607 2006-08-26 Mats Bengtsson <mabe@s3.kth.se>
1609 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
1610 quotes to quote arguments. Fixes Windows problem.
1612 * python/lilylib.py (progress): idem
1614 2006-08-26 Han-Wen Nienhuys <hanwen@lilypond.org>
1616 * scripts/musicxml2ly.py: fix for importing
1617 minor key signatures from MusicXML. (Phillip Kirlin)
1619 2006-08-24 Phillip Kirlin <pkirlin@acm.org>
1621 * python/musicxml.py:
1622 (Attributes.get_key_signature): now correctly retrieves mode from
1625 2006-08-25 Han-Wen Nienhuys <hanwen@lilypond.org>
1627 * lily/parser.yy (output_def_body): take ownership of identifier
1630 * Documentation/user/advanced-notation.itely (Metronome marks):
1631 update use of \tempo in \midi.
1633 * VERSION: release 2.9.16
1635 2006-08-24 Erik Sandberg <mandolaerik@gmail.com>
1637 * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
1640 2006-08-24 Han-Wen Nienhuys <hanwen@lilypond.org>
1642 * input/regression/tie-chord-partial.ly: clarify example.
1644 * scm/define-music-properties.scm (all-music-properties): remove
1647 * ly/music-functions-init.ly: remove \untied.
1649 * lily/tie-engraver.cc (struct Head_event_tuple): store both
1650 stream events and music events.
1651 (stop_translation_timestep): search acknowledged heads for
1654 * input/regression/tie-chord-partial.ly: new file.
1656 * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
1657 for \char markup command.
1659 * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
1661 * scm/define-music-types.scm (music-descriptions): consistency:
1662 Use solo-{one,two}-event iso. solo-[12]-event.
1664 * lily/part-combine-engraver.cc (process_music):
1665 Use solo-{one,two}-event iso. solo-[12]-event.
1667 * ly/declarations-init.ly (partCombineListener): add Timing as
1670 * flower/std-string.cc (string_copy): use copy ()
1672 * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
1674 2006-08-24 Graham Percival <gpermus@gmail.com>
1676 * Documentation/user/changing-defaults.itely, global.itely,
1677 lilypond-book.itely, page.itely: minor changes from mailist.
1679 2006-08-23 Han-Wen Nienhuys <hanwen@lilypond.org>
1681 * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
1684 * scm/define-context-properties.scm
1685 (translator-property-description): robustness: detect type errors
1686 in property definitions.
1688 * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
1689 after getting it from SCM.
1691 * lily/smobs.cc (protect_smob): switch off fancy smob protection
1694 * lily/include/performer.hh (class Performer): strip get_tempo()
1697 * lily/midi-def.cc: strip file.
1699 * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
1701 * lily/include/context-def.hh (struct Context_def): use
1702 VIRTUAL_COPY_CONSTRUCTOR().
1704 * lily/source-file.cc: smobification.
1706 * lily/include/source-file.hh (class Source_file): smobify
1707 Source_file. Trim redundant members.
1709 * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
1710 clones after creation. This plugs a huge memory leak.
1712 * python/convertrules.py (FatalConversionError.sub_tempo):
1713 complete rule for \midi{ \tempo }
1715 * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
1717 * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
1719 2006-08-23 Joe Neeman <joeneeman@gmail.com>
1721 * input/regression/optimal-page-breaking-hstretch.ly: test for
1722 ragged-last-bottom also
1724 * lily/paper-column-engraver.cc (finalize): make the end of a score
1725 breakable by default. This is to balance out a change in behaviour
1726 of the page-turn-breaker which no longer makes the end of a score
1729 * lily/paper-book.cc (pages): set the systems_ once the pages are
1732 * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
1733 Page_breaking interface.
1735 * lily/page-breaking.cc (class Page_breaking): make the interface
1736 more consistent and provide abstractions for dealing with
1739 * lily/optimal-page-breaking.cc (solve): use a more straightforward
1740 algorithm. Use the new interface to Page_breaking.
1742 * lily/page-spacing.cc: better support for ragged-bottom and
1745 2006-08-22 Han-Wen Nienhuys <hanwen@lilypond.org>
1747 * python/convertrules.py (conv): warning on \tempo{}
1749 * ly/performer-init.ly: set tempoWholesPerMinute.
1751 * ly/midi-init.ly: remove \midi
1753 * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
1756 * lily/metronome-engraver.cc (process_music): use tempoUnitCount
1757 tempoUnitDuration for determining what to print.
1759 * lily/lyric-extender.cc: typo.
1761 * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
1763 * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
1766 * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
1768 * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
1769 eps-pad-boxes is set.
1771 * scripts/lilypond-book.py (main): use -deps-pad-boxes.
1773 * THANKS: update sponsors.
1775 * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
1777 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1779 * input/regression/tie-chord-untied.ly: new file.
1781 * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
1783 * scm/define-music-properties.scm (all-music-properties): add
1786 * buildscripts/mutopia-index.py (allfiles): look for .ly rather
1788 (headertext_nopics): sanitize no-examples text.
1790 * scm/page.scm (make-page-stencil): don't rely on extents of
1791 page-stencil. This fixes spurious space around .EPS files produced
1792 with the EPS backend.
1794 2006-08-21 Han-Wen Nienhuys <hanwen@lilypond.org>
1796 * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1798 * lily/hara-kiri-engraver.cc (process_music): remember
1799 keepAliveInterfaces after processing \set
1801 * lily/lyric-extender.cc (print): support left/right-padding for
1804 * scm/documentation-generate.scm (string-append): revert lilypond/
1807 2006-08-20 Graham Percival <gpermus@gmail.com>
1809 * Documentation/user/lilypond.tely: clarification to
1810 license presentation (not to actual license).
1812 * Documentation/user/basic-notation.itely,
1813 instrument-notation.itely: minor changes.
1815 * input/ {regression, test}/+.ly: clarification to
1816 text (you can click on examples). Thanks, Mats!
1818 * input/manual/bar-lines.ly: adds ||: repeats.
1820 2006-08-20 Han-Wen Nienhuys <hanwen@lilypond.org>
1822 * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES
1824 * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1826 * Documentation/user/lilypond.tely: strip lilypond/ from info
1827 links, rename to category LilyPond
1829 * lily/pango-font.cc (description_string): new function.
1831 * VERSION: release 2.9.15
1833 * lily/spacing-engraver.cc (stop_translation_timestep): use
1834 Dscho's fix for spacing spanner.
1836 * scm/define-music-types.scm (music-descriptions): use
1837 apply-output-event for ApplyOutputEvent
1839 * lily/output-property-engraver.cc (listen_apply_output): rename
1840 from listen_layout_instruction.
1842 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1845 2006-08-19 Han-Wen Nienhuys <hanwen@lilypond.org>
1847 * scm/lily.scm (lilypond-all): option read-file-list: substitute
1848 commandline args with contains, split by \n.
1850 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1851 write snippet-names file, call with -dread-file-list. Fixes
1852 command limitations on 64-bit systems.
1854 * input/regression/stencil-color-rotation.ly: new file.
1856 * lily/include/translator.hh (struct Acknowledge_information):
1857 revert: don't use Protected_scm in global objects, as GUILE can't
1858 handle gc_unprotect from automated destructors on MacOS X.
1860 * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1861 color, not the original stencil. Fixes combinations of
1862 color/transparency/rotation.
1864 * scripts/lilypond-book.py (main): add --formats=eps for
1867 * lily/spacing-engraver.cc (stop_translation_timestep): don't
1868 crash if spacing_ is nonexistent.
1870 2006-08-14 Mats Bengtsson <mabe@s3.kth.se>
1872 * scripts/lilypond-book.py (output): Remove obsolete(!?)
1873 \catcode`\@=12 in the LaTeX output.
1875 2006-08-11 Han-Wen Nienhuys <hanwen@lilypond.org>
1877 * scm/define-music-types.scm (music-descriptions):
1878 use sustain-event iso. sustain-pedal-event.
1880 2006-08-11 Joe Neeman <joeneeman@gmail.com>
1882 * scripts/convert-ly.py: honour the -n command-line switch
1884 2006-08-10 Han-Wen Nienhuys <hanwen@lilypond.org>
1886 * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1887 break specification.
1889 2006-08-10 Joe Neeman <joeneeman@gmail.com>
1891 * Documentation/user: convert-ly the user manual
1893 2006-08-09 Han-Wen Nienhuys <hanwen@lilypond.org>
1895 * stepmake/aclocal.m4: version check patch (thanks MWD)
1897 * ly/music-functions-init.ly: robustness. Don't crash if
1898 currentBarNumber is not a number.
1900 * VERSION (PATCH_LEVEL): bump.
1902 2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
1904 * stepmake/aclocal.m4: better version check; handle fooX.Y
1907 * ly/performer-init.ly: instrument name fixup.
1909 * input/manual/chord-names-jazz.ly (banterProperties):
1910 instrumentName update
1912 * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1914 * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1916 * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1917 function. Use hash tables to check membership.
1919 * lily/general-scheme.cc (LY_DEFINE): new function.
1921 * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1923 * lily/include/translator.hh (struct Acknowledge_information): add
1926 * ly/music-functions-init.ly: change name to BreathingEvent
1928 * input/regression/*.ly: apply it.
1930 * python/convertrules.py (conv): better instrumentName conversion
1933 * scm/define-music-types.scm (music-descriptions): add
1934 line-break-event to LineBreakEvent music
1936 * lily/music.cc (to_event): don't crash if music type not set.
1938 * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1941 * lily/spacing-engraver.cc (stop_translation_timestep): set
1942 spacing for proportional notation too.
1944 * scm/translation-functions.scm (format-bass-figure): inspect
1947 * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1949 2006-08-08 Joe Neeman <joeneeman@gmail.com>
1951 * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1953 * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1955 * scm/layout-page-layout.scm (make-page-from-systems): new function
1956 (optimal-page-breaks): use the new page-breaking calling convention
1958 * scm/define-context-properties.scm (all-user-translation-properties):
1961 * lily/paper-column-engraver.cc (stop_translation_timestep): add
1962 revokePageTurns functionality. If there is a special barline within
1963 the breakable region, break there instead of at the end of the region.
1965 * lily/paper-book.cc (pages): use the new page-breaking calling
1968 2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
1970 * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1972 * scripts/lilypond-book.py: insert \sourcefileline command in
1973 output, so lilypond error messages refer to the spot in the
1974 original .lytex / .itely sourcefile.
1976 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
1978 * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1979 space to next column for distance to fixed col.
1981 * VERSION (PACKAGE_NAME): release 2.9.14
1983 * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1986 * lily/accidental-engraver.cc (process_acknowledged): don't create
1987 accidental for trill span event. This fixes spurious accidentals
1990 2006-08-04 Mats Bengtsson <mabe@s3.kth.se>
1992 * scm/define-grob-properties.scm (all-user-grob-properties):
1993 Clarify documentation of side-axis and direction. Thanks to Paul
1994 for the inspiration.
1996 * lily/bar-line.cc: Add documentation for "||:" also in the
1997 interface documentation.
1999 2006-08-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2001 * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
2003 * lily/paper-column.cc (set_system): new function.
2005 * lily/spacing-engraver.cc (stop_translation_timestep): store
2006 SpacingSpanner refs in Paper_column.
2008 * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
2009 compute loose clique spacing using GraceSpacing/SpacingSpanner.
2011 2006-08-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2013 * lily/beam-engraver.cc (listen_beam): add method for
2014 Grace_beam_engraver too.
2016 2006-08-03 Mats Bengtsson <mabe@s3.kth.se>
2018 * python/convertrules.py: Fix indentation bug that broke
2019 conversion of files older than 1.3.117.
2020 Fix escape error in the description for 2.9.6.
2022 2006-08-02 Erik Sandberg <mandolaerik@gmail.com>
2024 * lily/*-engraver.cc: convert all try_music functions to listen_*
2027 * lily/piano-pedal-engraver.cc: some additional cleanups: use
2028 enums to represent pedal types, and calculate more data statically.
2030 * scm/part-combiner.scm (recording-group-emulate): create a
2031 softcoded substitute for recording-group-engraver.cc.
2033 * lily/music.cc: make a common transpose function for events and
2036 * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
2037 ManualMelismaEvent, and obsoletes Melisma_translator.
2039 2006-08-02 Han-Wen Nienhuys <hanwen@lilypond.org>
2041 * input/test/instrument-name-align.ly: update version.
2043 2006-08-02 Mats Bengtsson <mabe@s3.kth.se>
2045 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2046 Doc the --pdf flag to lilypond-book.
2048 2006-07-31 Han-Wen Nienhuys <hanwen@lilypond.org>
2050 * Documentation/topdocs/NEWS.tely (Top): add description.
2052 * input/regression/tuplet-full-length-note.ly: add file.
2054 * lily/instrument-name-engraver.cc (acknowledge_axis_group):
2055 always store axis group.
2057 2006-07-27 Han-Wen Nienhuys <hanwen@lilypond.org>
2059 * input/regression/instrument-switch.ly: new file.
2061 * lily/instrument-switch-engraver.cc (process_music): new file.
2063 * ly/engraver-init.ly: add Instrument_switch_engraver
2065 * ly/music-functions-init.ly: \instrumentSwitch
2067 * scm/define-context-properties.scm
2068 (all-user-translation-properties): add instrumentCueName
2070 * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
2072 2006-07-26 Han-Wen Nienhuys <hanwen@lilypond.org>
2074 * ly/music-functions-init.ly: music function \transposition.
2076 * lily/parser.yy (command_element): softcode \transposition.
2078 * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
2079 (process_music): oops.
2081 * lily/instrument-name-engraver.cc (start_spanner): new
2082 function. Create spanner when property changes.
2083 (stop_spanner): new function.
2085 * python/convertrules.py (conv): add rule.
2087 * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
2088 shortInstrumentName iso. instr.
2090 * scm/output-ps.scm (dashed-line): add phase argument to
2093 * lily/bar-line.cc (dashed_bar_line): new function.
2094 (compound_barline): support \bar "dashed".
2096 * lily/lily-parser-scheme.cc (LY_DEFINE): only write
2097 --output=DIR to DIR/BASE if it is a dir.
2099 * flower/file-name.cc (file_part): new function
2100 (dir_part): new function
2102 * lily/lily-parser-scheme.cc (LY_DEFINE):
2104 * DEDICATION: update
2106 2006-07-25 Han-Wen Nienhuys <hanwen@lilypond.org>
2108 * lily/instrument-name-engraver.cc: formatting.
2110 * python/convertrules.py (conv): bugfix for \epsfile.
2112 2006-07-25 Joe Neeman <joeneeman@gmail.com>
2116 * lily/gourlay-breaking.cc: Oops, these should have been included
2119 2006-07-24 Han-Wen Nienhuys <hanwen@lilypond.org>
2121 * scripts/*.py (program_name): cleanup relocation snippets.
2123 * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
2125 2006-07-24 Joe Neeman <joeneeman@gmail.com>
2127 * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
2128 page-breakable by default
2130 * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
2131 correctly calculated for a single-system page
2133 * scm/lily-library.scm (interval-sane?): also check that the first number is no
2134 bigger than the second number
2136 * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
2137 acknowledge that we aren't satisfying constraints)
2139 * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
2142 * lily/grob.cc (pure_height): add minimum-Y-extent
2144 * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
2147 * lily/constrained-breaking.cc: convert code to use new Matrix class
2148 (get_best_solution): new function
2150 * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
2151 is a page with no systems
2153 2006-07-23 Han-Wen Nienhuys <hanwen@lilypond.org>
2155 * VERSION (PACKAGE_NAME): release 2.9.13
2157 * scm/define-grobs.scm (all-grob-descriptions): remove stray
2160 2006-07-21 Han-Wen Nienhuys <hanwen@lilypond.org>
2162 * Documentation/topdocs/NEWS.tely (Top): doc new features.
2164 * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
2167 * scm/define-grob-properties.scm (all-user-grob-properties):
2168 remove grace-space-factor.
2170 * scm/define-grob-interfaces.scm (grace-spacing-interface): add
2171 grace-spacing-interface
2172 (spacing-options-interface): add.
2174 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
2176 * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
2178 * lily/spacing-basic.cc (note_spacing): do init_from_grob on
2179 GraceSpacing object.
2181 * lily/note-spacing.cc: fix prop list formatting
2183 * lily/beaming-pattern.cc (de_grace): new function. Sensible
2184 beaming for grace notes too.
2186 * input/regression/spacing-grace.ly: update.
2188 * lily/grace-spacing-engraver.cc: new file.
2190 * lily/spacing-spanner.cc: add strict-grace-spacing.
2192 2006-07-20 Graham Percival <gpermus@gmail.com>
2194 * lily/parser.yy: compile fix.
2196 2006-07-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2198 * scm/define-grobs.scm (all-grob-descriptions): typo.
2200 * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
2201 .eps extension from includegraphics.
2203 * scripts/lilypond-book.py (main): add support for --pdf.
2205 * lily/spacing-spanner.cc (calc_common_shortest_duration): use
2206 callback to compute common shortest duration.
2207 (set_springs): typo.
2209 * scm/define-grob-properties.scm (all-user-grob-properties): add
2210 strict-grace-spacing.
2212 * lily/spacing-determine-loose-columns.cc (is_loose_column):
2213 support float_grace_columns_.
2215 * lily/spacing-options.cc (init_from_grob): new file.
2217 * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
2219 * input/regression/spacing-loose-grace.ly: new file.
2221 * Documentation/topdocs/NEWS.tely (Top): document new feature.
2223 * lily/tuplet-engraver.cc (struct Tuplet_description): read
2224 tupletFullLengthNote too. Choose right bound depending on value.
2226 * input/regression/tuplet-full-length-note.ly: new file.
2228 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2230 * lily/*-performer.cc: Converted try_music to listen_*
2232 * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
2233 as a stream-event internally. Introduce event_cause (), deprecate
2236 * scm/define-music-types.scm: Removed BusyPlayingEvent
2238 2006-07-19 Mats Bengtsson <mabe@s3.kth.se>
2240 * Documentation/user/advanced-notation.itely (Font selection):
2241 Document how to get a list of available fonts using 'lilypond
2242 -dshow-available-fonts blabla'.
2244 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2246 * GNUmakefile.in: filter lily-XXX.pdf files.
2248 * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
2250 * scm/define-grob-properties.scm (all-internal-grob-properties):
2251 remove delta-pitch. Use delta-position everywhere.
2253 * scm/output-lib.scm (fall::print): use new order.
2255 * scm/output-ps.scm (path): reorder arguments.
2257 * scm/output-svg.scm (path): support for path primitive.
2259 * input/regression/bend-after.ly: new file.
2261 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
2262 recipe for eps -> pdf conversion.
2264 2006-07-19 Erik Sandberg <mandolaerik@gmail.com>
2266 * lily/parser.yy, lily/lexer.ll: added some simplifications by
2269 2006-07-19 Graham Percival <gpermus@gmail.com>
2271 * input/manual/screech-boink.ly: moved to here.
2273 * input/screech-boink.ly: deleted.
2275 * scm/define-grob-properties.scm: clarify doc string.
2277 2006-07-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2279 * Documentation/topdocs/NEWS.tely (Top): doc new feature.
2281 * scm/output-ps.scm (path): define path.
2283 * scm/define-stencil-commands.scm
2284 (ly:register-stencil-expression): add path.
2286 * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
2288 * ly/engraver-init.ly: add Fall_engraver
2290 * lily/parser.yy (music_function_event): allow musicfunction
2291 without music arg as music_function_event.
2293 * lily/grob-scheme.cc (LY_DEFINE):
2294 ly:grob-robust-relative-extent. New function.
2296 * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
2298 * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
2300 * scm/output-lib.scm (fall::print): new function
2302 * lily/fall-engraver.cc (stop_fall): new file.
2304 * ly/music-functions-init.ly: alphabetise.
2306 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
2309 2006-07-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2311 * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
2313 * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
2316 * lily/translator-group.cc (connect_to_context): non const error message.
2318 * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
2320 * scm/paper.scm (internal-set-paper-size): define landscape to #f
2323 * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape.
2325 * stepmake/stepmake/texinfo-rules.make: strip DVI support.
2327 * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
2330 * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
2332 * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
2334 * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
2336 * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
2338 * lily/main.cc (parse_argv): don't overwrite previous --formats string.
2340 * scm/backend-library.scm (postscript->pdf): strip .eps too.
2342 2006-07-14 Nicolas Sceaux <nicolas.sceaux@free.fr>
2344 * scm/layout-page-layout.scm: Define module, tidy code, use more
2345 functions iso. a single big one.
2347 * scm/layout-page-dump.scm: move page dump functions used in two
2348 pass spacing to this file. Define module.
2350 * scm/lily.scm (ly:load): don't load layout-page-layout.scm
2353 * ly/paper-defaults.ly: use module layout-page-layout.
2355 2006-07-14 Erik Sandberg <mandolaerik@gmail.com>
2357 * lily/music.cc: Revised MusicEvent event class. It now contains
2358 event data directly instead of encapsulating it in music. The
2359 previously used class is renamed to OldMusicEvent.
2361 * lily/stream-event.cc: Stream events are now probs.
2363 * lily/translator-group.cc, lily/translator.cc: Translators can
2364 now listen directly to stream events, by using macros
2365 [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
2367 * lily/arpeggio-engraver.cc: Converted to use new event system
2369 * THANKS: Corrected spelling mistake.
2371 2006-07-12 Graham Percival <gpermus@gmail.com>
2373 * Documentation/user/SConscript, make/lilypond-vars.make,
2374 input/GNUmakefile: doc build looks in input/manual instead
2377 * input/manual/ GNUmakefile, SConscript: build files for
2380 * input/test/ various: some files moved to input/manual/
2382 * Documentation/user/basic-notation.itely: small updates;
2383 thanks Kieren and Charles!
2385 2006-07-12 Han-Wen Nienhuys <hanwen@lilypond.org>
2387 * VERSION (PACKAGE_NAME): release 2.9.11
2389 * Documentation/topdocs/NEWS.tely (Top): update prop value
2391 * Documentation/user/basic-notation.itely (Tuplets): new property
2394 2006-07-11 Han-Wen Nienhuys <hanwen@lilypond.org>
2396 * python/convertrules.py (conv): tweaks.
2398 * VERSION (PATCH_LEVEL): bump version.
2400 * python/convertrules.py (conv): add rule for
2401 tupletNumberFormatFunction.
2403 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
2404 tupletNumberFormatFunction.
2406 * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
2407 text through 'text callback.
2409 * lily/time-scaled-music-iterator.cc (construct_children): copy
2410 tweaks generated events.
2412 * scm/define-context-properties.scm
2413 (all-user-translation-properties): remove tupletNumberFormatFunction
2415 * lily/tuplet-engraver.cc (process_music): don't read
2416 tupletNumberFormatFunction
2418 * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
2421 2006-07-11 Erik Sandberg <mandolaerik@gmail.com>
2423 * lily/global-context-scheme.cc: Separated ly:run-translator into
2426 * lily/score-engraver.cc, lily/score-performer.cc,
2427 scm/define-context-properties.scm: Make paper/midi output
2428 accessable as a context property.
2430 * lily/score-translator.cc, lily/score-context.cc: Removed.
2432 2006-07-07 Guido Amoruso <guidonte@katamail.com>
2434 * scm/ps-to-png.scm (Module):
2435 * scm/framework-tex.scm (Module):
2436 * scm/framework-ps.scm (Module):
2437 * scm/backend-library.scm (Module):
2438 * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
2439 "dDEVICEHEIGHTPOINTS".
2441 2006-07-04 Graham Percival <gpermus@gmail.com>
2443 * Documentation/user/ various: general improvements to
2444 "working with lilypond files" section.
2446 2006-07-03 Erik Sandberg <mandolaerik@gmail.com>
2448 * lily/sequential-iterator.cc: Change the default get_music_list
2449 to read elements-callback music property
2451 * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
2452 processing of multimeasure rests. Softcoded
2453 sequential-music-iterator.
2455 * lily/sequential-music-iterator.cc: Removed.
2457 2006-06-28 Graham Percival <gpermus@gmail.com>
2459 * Documentation/user/basic-notation.itely: clarify \repeatTie.
2461 2006-06-27 Erik Sandberg <mandolaerik@gmail.com>
2463 * lily/parser.yy: Wrap non-post-events in EventChords before
2464 assigning them to identifiers.
2466 2006-06-27 Mats Bengtsson <mabe@s3.kth.se>
2468 * lily/bar-line.cc (compound_barline): Fix parenthesis error,
2469 gives correct vertical placement of \bar ":" in all staff
2470 sizes. Thanks Martial!
2472 2006-06-26 Graham Percival <gpermus@gmail.com>
2474 * Documentation/user/invoking.itely : minor update from mailist.
2476 2006-06-26 Erik Sandberg <mandolaerik@gmail.com>
2478 * lily/ various: Introduce stream events of types Prepare,
2479 OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
2480 ChangeContext, SetProperty, RevertProperty, Override and Revert.
2482 * lily/global-context*.cc: Time is now -inf before iteration
2485 * lily/include/context.hh: Removed unique_, init_
2487 * Documentation/topdocs/NEWS: Make the feathered beam example
2488 avoid triggering a bug.
2490 2006-06-24 Graham Percival <gpermus@gmail.com>
2492 * Documentation/user/ various: small additions from mailist.
2494 2006-06-22 Mats Bengtsson <mabe@s3.kth.se>
2496 * ly/performer-init.ly: Add some missing links in the context
2497 hierarchy for MIDI output. There are probably some more missing!
2499 2006-06-21 Graham Percival <gpermus@gmail.com>
2501 * Documentation/user/ various: minor spelling fixes;
2502 thanks Dave Luttinen!
2504 * Documentation/user/ various: small clarifications;
2505 thanks Anthony Youngman!
2507 2006-06-20 Han-Wen Nienhuys <hanwen@lilypond.org>
2509 * po/fr.po: add \n appropriately.
2511 * lily/lexer.ll: remove ? from version-seen?
2513 2006-06-19 John Mandereau <john.mandereau@free.fr>
2515 * po/fr.po; update translation, by Jean-Charles Malahieude and
2518 2006-06-19 Han-Wen Nienhuys <hanwen@lilypond.org>
2520 * THANKS: add Markus Schneider.
2522 * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
2523 Staff_symbol_engraver
2525 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
2526 replace staff_engraver
2528 * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
2531 * lily/staff-collecting-engraver.cc
2532 (acknowledge_end_staff_symbol): new function
2534 * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function.
2536 * lily/staff-collecting-engraver.cc
2537 (acknowledge_end_staff_symbol): new function.
2539 * lily/main.cc: switch on relocation by default.
2541 2006-06-18 Han-Wen Nienhuys <hanwen@lilypond.org>
2543 * lily/spacing-spanner.cc (musical_column_spacing): set
2544 compound_fixed_note_space to 0.0. Document why.
2546 * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
2547 range of inverse_hooke_
2548 (Simple_spacer): init completely.
2550 (get_line_configuration): don't use cols.resize(); it introduces
2553 * scm/framework-ps.scm (dump-page): add setstrokeadjust.
2555 * ps/music-drawing-routines.ps: remove selectfont L1 hack.
2557 * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
2558 try. Divide by beatlength.
2560 * input/regression/beaming-ternary-metrum.ly: update doc.
2561 add beatLength hack.
2563 * scm/music-functions.scm (make-time-signature-set): add
2564 standard-beat-grouping.
2566 2006-06-17 Han-Wen Nienhuys <hanwen@lilypond.org>
2568 * input/regression/tie-whole.ly: new file.
2570 * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
2571 cross center of note head in case of invisible stem.
2573 2006-06-16 Graham Percival <gpermus@gmail.com>
2575 * Documentation/user/ various: small fixes from mailist.
2577 2006-06-16 Han-Wen Nienhuys <hanwen@lilypond.org>
2579 * lily/breathing-sign.cc (offset_callback): idem.
2581 * lily/align-interface.cc (align_to_fixed_distance): remove
2584 * lily/beaming-pattern.cc (count_factor_twos): oops. We want
2587 2006-06-15 Han-Wen Nienhuys <hanwen@lilypond.org>
2589 * VERSION (PACKAGE_NAME): release 2.9.9
2591 * ly/lilypond-book-preamble.ly: add \version
2593 2006-06-14 Han-Wen Nienhuys <hanwen@lilypond.org>
2595 * scripts/lilypond-book.py (PREAMBLE_LY): include
2596 lilypond-book-preamble.ly
2598 * lily/stem.cc (get_beaming): return max of 0 and
2599 scm_ilength. Fixes slurring from/to beams.
2601 * ly/lilypond-book-preamble.ly: new file.
2603 * lily/slur.cc: add inspect-index feature.
2605 2006-06-13 Graham Percival <gpermus@gmail.com>
2607 * Documentation/user/tutorial.itely: trivial fix.
2609 2006-06-13 Erik Sandberg <mandolaerik@gmail.com>
2611 * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
2612 all non-event music in the parser via MAKE_SYNTAX.
2614 * lily/parser-scheme.cc: Add ly:parser-error function
2616 * scm/paper.scm: fix typo
2618 2006-06-13 Han-Wen Nienhuys <hanwen@lilypond.org>
2622 * lily/font-config.cc (init_fontconfig): add warning if cache_file
2625 * buildscripts/output-distance.py (test_compare_signatures):
2627 (read_signature_file): use new signature format.
2629 * scm/stencil.scm (write-system-signature): simpler signature
2632 * lily/stem.cc (calc_stem_end_position): calc quantized-positions
2635 * lily/note-spacing.cc (stem_dir_correction): don't inspect
2636 stem_end_position, but estimate instead.
2638 * lily/tuplet-bracket.cc (calc_positions): look at
2639 stem-end-position for tuplet bracket slope. Fixes sloped tuplet
2640 brackets narrower than beams.
2642 * lily/lexer.ll: set version-seen? even if version is
2645 * lily/rest.cc (y_offset_callback): bugfix: decide position
2646 override based on scm_is_number(). Fixes \rest on center staff
2649 * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
2650 patterns for 16th triplets.
2652 2006-06-10 Graham Percival <gpermus@gmail.com>
2654 * Documentation/user/ page.itely, global.itely: editing
2657 * Documentation/user/ various: findex -> funindex.
2659 2006-06-10 Erik Sandberg <mandolaerik@gmail.com>
2661 * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
2662 insert extra tuplet events.
2664 2006-06-10 Graham Percival <gpermus@gmail.com>
2666 * Documentation/user/programming-interfaces.itely: add
2669 * python/convertrules.py: add annotatefoo -> annotate-foo
2672 * Documentation/user/global.itely: start editing.
2674 * Documentation/user/page.itely: major editing, new spacing
2677 2006-06-10 Han-Wen Nienhuys <hanwen@lilypond.org>
2679 * scm/define-markup-commands.scm (wordwrap-markups): use
2680 output-def 'line-width if undefined.
2682 * HACKING: trim outdated info.
2684 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2686 * scm/define-grobs.scm (all-grob-descriptions): Add
2687 line-spanner-interface to all grobs that already have
2688 text-spanner-interface or dynamic-text-spanner-interface
2690 * scm/page.scm: Rename annotate{headers,systems,page}->
2693 * input/regression/page-spacing.ly,
2694 input/regression/page-layout-manual-position.ly: idem
2696 2006-06-09 Han-Wen Nienhuys <hanwen@lilypond.org>
2698 * lily/line-spanner.cc: cleanup property list.
2700 * scripts/lilypond-book.py (find_toplevel_snippets): don't use
2701 generator expressions (2.3 compat).
2703 2006-06-09 Mats Bengtsson <mabe@s3.kth.se>
2705 * lily/vertical-align-engraver.cc: Make sure that the
2706 align{Above,Below}Context properties are included in the automatic
2709 2006-06-08 Joe Neeman <joeneeman@gmail.com>
2711 * scm/paper-system.scm (paper-system-annotate): also annotate the
2712 estimated pure-Y-extent
2714 * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
2716 * lily/system.cc (break_into_pieces): set the estimated height
2717 of each child system
2719 * lily/stem.cc (pure_height): new pure-Y-extent callback
2721 * lily/staff-symbol-referencer.cc (callback): don't destroy
2722 the staff-position property
2724 * lily/hara-kiri-group-spanner.cc (request_suicide): split
2725 consider_suicide into two functions
2727 * lily/constrained-breaking.cc (resize): use the new pure
2728 callbacks to estimate the height of a system
2730 * lily/axis-group-interface.cc (pure_group_height): new
2731 side-effect-free VerticalAxisGroup height-callback
2733 * lily/align-interface.cc (get_extents_aligned_translates):
2734 split align_elements_to_extents into two functions
2735 (get_pure_child_y_translation): new function
2737 * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
2739 * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
2741 * lily/paper-score.cc: cache break_indices and columns
2743 * lily/side-position-interface.cc: new pure-Y-extent callbacks
2745 2006-06-08 Han-Wen Nienhuys <hanwen@lilypond.org>
2747 * lily/font-config.cc (init_fontconfig): do the init if
2748 cache_file, but don't look at cache_file.
2750 * input/regression/quote-tie.ly: new file.
2752 * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
2753 to Head_event_tuple, so we deal gracefully with ties on
2756 * lily/pango-font.cc (pango_item_string_stencil): type correctness
2759 2006-06-08 Graham Percival <gpermus@gmail.com>
2761 * input/test/ smart-transpose.ly, reverse-music.ly:
2762 \applyMusic to music functions update, thanks Michael!
2764 2006-06-07 Graham Percival <gpermus@gmail.com>
2766 * input/test/ add-staccato.ly, add-text-script.ly,
2767 unfold-all-repeats.ly, music-box.ly: \applyMusic to
2768 music functions update, thanks to Michael Meixner.
2770 * Documentation/user/music-glossary.tely: small fix
2773 * Documentation/user/ various: minor additions from mailist.
2775 * Documentation/user/lilypond.tely, basic-notation.itely:
2776 small test of @funindex. (works here)
2778 * input/test/font-table.ly: reduce size to partially
2779 de-ugly version in manual.
2781 * Documentation/user/page.itely: new file (split former
2782 "global issues" into "page settings" and "non-musical
2785 * Documentation/user/ various: fix @ref{}s to match
2786 new chapter names (above).
2788 2006-06-07 Jan Nieuwenhuizen <janneke@gnu.org>
2790 * SConstruct (LILYPONDPREFIX): Bootstrap fix.
2792 2006-06-06 Graham Percival <gpermus@gmail.com>
2794 * Documentation/user/advanced-notation.itely: add example
2795 for segno/coda on barline.
2797 * tex/texinfo.tex: merge from upstream.
2799 2006-06-06 Jan Nieuwenhuizen <janneke@gnu.org>
2801 * scripts/lilypond-book.py (process_snippets): Argument fix.
2804 * buildscripts/builder.py:
2807 * Documentation/user/SConscript: More SCons fixes.
2809 2006-06-03 Jan Nieuwenhuizen <janneke@gnu.org>
2811 * lily/font-config.cc (init_fontconfig): Only initialize if
2812 global cache_file is found.
2814 2006-06-06 Erik Sandberg <mandolaerik@gmail.com>
2816 * ly/music-functions-init.ly: Updated \overrideProperty to use the
2819 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2821 * VERSION (PACKAGE_NAME): release 2.9.8
2823 * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2824 function. Delay ledger modifying ledgered grobs to
2825 stop_translation_timestep(), to ensure that we're ledgering
2826 according to the new spanner.
2827 (acknowledge_staff_symbol): don't check for non-NULL
2828 staff_sym->get_bound()
2830 * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2833 * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2836 * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2837 directly from srcdir/stepmake/aclocal.m4
2839 * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2842 * lily/simple-spacer.cc (get_column_desc): desc -> description.
2844 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2846 * lily/simple-spacer.cc (get_line_configuration): add
2847 keep-inside-line rods
2848 (struct Column_desc): add constructor
2849 (struct Rod_desc): add constructor
2850 (get_line_forces): check for forced page breaks here too
2852 * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2853 support/elements cycles between InstrumentNames and AxisGroups
2855 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2857 * config.make.in (METAFONT): remove MAKEINFO_VERSION
2859 * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2860 make-txt-files target.
2862 * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2863 make-txt-files target.
2865 * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2867 * stepmake/stepmake/generic-vars.make (distdir): create dist in
2870 2006-06-06 Jürgen Reuter <reuter@ipd.uka.de>
2872 * Documentation/user/instrument-notation.itely,
2873 input/regression/breathing-sign-ancient.ly,
2874 input/test/divisiones.ly: Removed redundant property settings for
2877 * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2878 fix lyrics alignment problems. They are implemented now as scheme
2879 functions that add the appropriate unicode char to the first lyric
2880 event rather than adding a separate lyric event. Minor edit of
2883 2006-06-06 Han-Wen Nienhuys <hanwen@lilypond.org>
2885 * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2886 pollute src dir with built .txt files, but install directly from
2887 Documentation/topdocs/out/
2889 * buildscripts/output-distance.py
2890 (ComparisonData.create_html_result_page): put version/directories
2893 * Documentation/topdocs/NEWS.tely (Top): document spacing section
2896 * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2897 Patch by Karl Hammar
2899 * buildscripts/readlink.py: add file.
2900 Patch by Karl Hammar
2902 2006-06-06 Joe Neeman <joeneeman@gmail.com>
2904 * lily/tuplet-number.cc (print): prevent stencil from being
2907 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2909 * scm/stencil.scm (write-system-signature): explicitly
2910 -well, superfluously- close output port.
2912 * buildscripts/output-distance.py (main): oops. Add extra argument.
2914 2006-06-05 Graham Percival <gpermus@gmail.com>
2916 * Documentation/user/music-glossary.tely: clarified example
2917 from Francisco Vila, thanks!
2919 2006-06-05 Han-Wen Nienhuys <hanwen@lilypond.org>
2921 * input/regression/spacing-section.ly: new file.
2923 * lily/input.cc (programming_error): new function.
2925 * lily/spacing-engraver.cc (try_music): new function. Accept
2926 spacing-section-event
2928 * lily/spacing-spanner.cc (set_springs): take slices of all
2929 columns for spacing.
2931 * lily/include/paper-column.hh (class Paper_column): add
2932 Paper_column::compare.
2934 * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2936 * scm/define-music-types.scm (music-descriptions): add
2939 * lily/music-iterator.cc (report_event): use programming_error for
2940 sending non-event error.
2942 * lily/input.cc (programming_error): new function
2944 * buildscripts/output-distance.py (main): use compare-XXX for
2946 (main): --threshold option, default at 0.30
2948 * output-distance.py (main): add --threshold option.
2950 2006-06-04 Nicolas Sceaux <nicolas.sceaux@free.fr>
2952 * scm/paper-system.scm (paper-system-annotate): fix problem when
2953 annotating an empty system
2955 2006-06-04 Han-Wen Nienhuys <hanwen@lilypond.org>
2957 * GNUmakefile.in: reinstate old web tar/copying.
2959 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2961 * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2962 nothing changes. (Erik S)
2964 * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2967 2006-05-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
2969 * scm/define-markup-commands.scm (whiteout): do not force
2970 foreground color of argument markup to black.
2972 * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2973 the left of the arrow, instead of below the arrow name, so that,
2974 when two little arrows are vertically stacked, their dimensions
2975 and name should not overlap. Add a color key parameter.
2977 * scm/paper-system.scm (paper-system-annotate): Annotate
2978 next-space+next-padding instead of next-space. Annotate space
2979 between next-padding and next-space+padding, respectively, and
2980 following system extent and refpoint-Y-extent. Use colors.
2982 * scm/page.scm (annotate-page): translate annotations slightly to
2985 2006-06-03 Han-Wen Nienhuys <hanwen@lilypond.org>
2987 * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2988 fix for x-staff slurs. Thanks Joe!
2990 * buildscripts/output-distance.py
2991 (SystemLink.output_expression_change_count): keep track of changed
2992 details, and dump in details html page.
2994 * input/regression/figured-bass-staff.ly: add note about setting
2995 properties in Staff context.
2997 * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2998 add slurs and ties to support too.
3000 * buildscripts/output-distance.py (main): set dest_dir
3001 argument. Add --max-count option.
3003 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3005 * ly/gregorian-init.ly: Converted to utf-8. Added memorable
3006 shortcuts for special unicode chars that are useful in chant
3007 notation. Revised exisiting and added new comments.
3009 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3011 * make/mutopia-rules.make: remove duplicate recipe.
3013 2006-06-02 Werner Lemberg <wl@gnu.org>
3015 * tex/texinfo.cnf: Fix typo (\euro -> \minus).
3016 Add support for U+0132 (IJ) and U+0133 (ij).
3018 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3020 * buildscripts/output-distance.py (FileLink): new class. collect
3021 info systems from one .ly file.
3022 (FileLink.link_files_for_html): further tweaks.
3024 2006-06-02 Graham Percival <gpermus@gmail.com>
3026 * tex/texinfo.tex: partial fix for @funindex.
3028 * Documentation/user/macros.tely: uncomment @funindex (doesn't
3031 2006-06-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3033 * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
3035 * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
3036 @example too. Backportme.
3038 2006-06-02 Graham Percival <gpermus@gmail.com>
3040 * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
3041 from Werner Lemberg.
3043 2006-06-02 Paco (Francisco Vila) <fravd@ya.com>
3045 * Documentation/user/music-glossary.tely: additional spanish
3046 updates and a lyrics fix in an example.
3048 2006-06-02 Jürgen Reuter <reuter@ipd.uka.de>
3050 * scm/define-grob-properties.scm: Previous patch contained
3051 spurious line from another patch not yet committed. Fixed.
3053 * scm/define-grob-properties.scm: Add missing doc strings for
3056 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3058 * buildscripts/output-distance.py
3059 (ComparisonData.write_text_result_page): separate the scores, sort
3062 * scm/framework-eps.scm (output-classic-framework): start at 1 for
3065 * buildscripts/output-distance.py (me_path): use argv[0] for
3067 (ComparisonData.img_cell): use colored borders.
3069 * scm/stencil.scm (write-system-signature): escape newlines too.
3070 (write-system-signature): use (1,-1) interval for empty interval
3072 2006-01-01 Graham Percival <gpermus@gmail.com>
3074 * Documentation/user/music-glossary.tely: Spanish updates
3075 from Francisco Vila.
3077 * Documentation/user/lilypond-book.itely: addition from
3080 * Documentation/user/ various: edits, small additions
3083 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3085 * GNUmakefile.in (tree-lib-prefix-current):
3086 (tree-share-prefix-current): Use version number in tree, add
3089 2006-06-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3091 * GNUmakefile.in: write VERSION, again.
3093 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
3094 $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
3096 * stepmake/aclocal.m4: robuster version detection.
3098 * buildscripts/output-distance.py
3099 (ComparisonData.create_html_result_page): copy only if file
3100 exists, fixup src paths.
3102 * stepmake/bin/add-html-footer.py (built): junk gulp_file()
3104 2006-06-01 Jan Nieuwenhuizen <janneke@gnu.org>
3106 * stepmake/aclocal.m4: Robustification for (gcc) version detection.
3107 Another datarootdir reto.
3109 * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
3110 available. This should be moved to postinstall-lilypond-doc.
3112 2006-05-31 Han-Wen Nienhuys <hanwen@lilypond.org>
3114 * GNUmakefile.in: simplify local-WWW-post.
3115 remove -type l from find.
3117 * buildscripts/output-distance.py (ComparisonData.compare_trees):
3118 fixes. Don't follow symlinks.
3119 (ComparisonData.create_html_result_page): remove previous results.
3120 insert ../python in path.
3122 * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
3124 2006-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
3126 * config.make.in (datadir): Add datarootdir to silence autoconf.
3128 * stepmake/aclocal.m4: Update for autoconf-2.59d.
3130 2006-05-31 Erlend Aasland <erlenda@gmail.com>
3132 * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
3134 * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
3135 slash beams too wide.
3137 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3139 * VERSION: release 2.9.7
3141 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3143 * lily/relocate.cc (read_relocation_dir): Do not blindly
3146 2006-05-30 Han-Wen Nienhuys <hanwen@lilypond.org>
3148 * lily/parser.yy: replace THIS by PARSER
3150 * Documentation/index.html.in: add link to test-results.html page.
3152 * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
3154 * scm/translation-functions.scm (format-bass-figure): translate
3155 digits over 10 to the left
3157 * scm/define-markup-commands.scm (translate-scaled): new markup.
3159 * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
3162 * ly/engraver-init.ly: add Figured_bass_engraver
3164 * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
3166 * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
3168 * lily/score-engraver.cc (announce_grob): only note START announces.
3170 * lily/include/engraver-group.hh (Translator_group):
3171 acknowledge_hash_table_ is now drul.
3173 * lily/engraver.cc (announce_end_grob): new method.
3175 * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
3177 * lily/translator-dispatch-list.cc (create): take start_end argument.
3179 * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
3180 acknowledge_static_array_ to drul
3182 * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
3184 * scm/define-grob-interfaces.scm
3185 (bass-figure-alignment-interface): add bass-figure-alignment-interface
3187 * scm/define-grobs.scm (all-grob-descriptions): add
3188 BassFigureAlignmentPositioning
3190 * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
3191 number stays up to date. Backportme.
3193 2006-05-30 Mats Bengtsson <mabe@s3.kth.se>
3195 * Documentation/user/basic-notation.itely (Bar lines): Document
3198 2006-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
3200 * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
3202 * scripts/lilypond-book.py: Bugfix: do not blindly attempt
3203 .../current hack if LILYPONDPREFIX is fine. Fixes `scons doc'
3206 * Resurrect `scons lily' build.
3208 * SConstruct (symlink_tree): Bugfix: link
3209 music-drawing-routines.ps to file iso directory.
3211 * lily/SConscript: Remove kpath-guile from LIBS.
3213 * SConstruct (libdir_package_version): Typo.
3214 (configure): Comment-out fontforge for lack of fontforge.pc .
3215 Also add libdir* to environment.
3217 2006-05-30 Graham Percival <gpermus@gmail.com>
3219 * Documentation/user/ various: minor additions from mailist and
3222 2006-05-30 Paco <fravd@ya.com>
3224 * Documentation/user/music-glossary.tely: numerous corrections and
3225 some new translations.
3227 2006-05-29 Han-Wen Nienhuys <hanwen@lilypond.org>
3231 * buildscripts/output-distance.py
3232 (ComparisonData.create_html_result_page): new routine: summarise
3233 results in HTML page with images.
3234 (ComparisonData.create_text_result_page): create summary text files too.
3236 * GNUmakefile.in (web-ext): package .signature files too. They
3239 * scm/stencil.scm (write-system-signature): typo.
3241 * GNUmakefile.in: create web-root/VERSION to help upload scripts.
3243 * scm/stencil.scm (write-system-signature): better escaping.
3244 only write signature for music systems, not for markup systems.
3246 * scm/framework-ps.scm (output-framework): dump-signatures support
3249 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
3251 * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
3252 for -dno-point-and-click
3254 * lily/grob.cc (get_print_stencil): don't read
3255 point_and_click_global to determine whether to set grob-cause.
3257 2006-05-28 Han-Wen Nienhuys <hanwen@lilypond.org>
3259 * buildscripts/output-distance.py (main): new function.
3260 (ComparisonData): new class.
3262 * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
3263 careful with generating new LedgerLineSpanners.
3265 * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
3267 * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
3268 context. This fixes double ledger lines in output.
3270 * lily/system.cc (get_paper_system): remove 3 layer limit.
3272 * buildscripts/output-distance.py (SystemLink.distance): new
3273 file. Compare signatures.
3275 * python/safeeval.py (SafeEval.visitUnarySub): new file.
3277 * lily/grob-array.cc (remove_duplicates): rename from
3278 uniq(). Sort before calling uniq() so it actually works.
3280 2006-05-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3282 * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
3283 \version from lilypond file snippet.
3284 (Lilypond_file_snippet.ly): oops. typo.
3285 (find_toplevel_snippets): urgh. again.
3287 * lily/system.cc (get_paper_systems): uniq all_elements_ , to
3288 prevent duplicated broken items in output.
3290 * scm/framework-eps.scm (output-classic-framework): only dump if
3291 dump-signatures is set.
3293 * scm/lily.scm (define-scheme-options): add dump-signatures option.
3295 * scm/stencil.scm (write-system-signature): new routine: write
3296 python parseable signature of a separate paper system.
3299 2006-05-26 Han-Wen Nienhuys <hanwen@lilypond.org>
3301 * lily/stanza-number-engraver.cc (process_music): use is_markup()
3305 2006-05-25 Erik Sandberg <mandolaerik@gmail.com>
3307 * translator-group.cc: send music events to engravers in
3308 non-bottom contexts.
3310 * tuplet-engraver.cc: process tuplet brackets in correct order.
3312 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3314 * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
3315 arg 2 might point us to a new binary (patch by Karl Hammar)
3317 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3319 * VERSION (PACKAGE_NAME): release 2.9.6
3321 * Documentation/topdocs/NEWS.tely (Top): trim explanation.
3323 * Documentation/user/*.itely: 2nd
3324 attempt: replace funindex -> findex globally.
3326 2006-05-24 Nicolas Sceaux <nicolas.sceaux@free.fr>
3328 * input/no-notation/display-lily-tests.ly: fix \applyOutput
3329 test. Add \break, \pageBreak, \pageTurn, etc, tests.
3331 * scm/define-music-display-methods.scm: display methods for
3332 breaks. Fix \applyOutput.
3334 2006-05-24 Han-Wen Nienhuys <hanwen@lilypond.org>
3336 * Documentation/user/macros.itexi: comment out funindex expansion.
3338 * Documentation/user/music-glossary.tely: junk \oldaddlyrics
3341 * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
3342 Karl Hammar. Backportme.
3344 * Documentation/user/advanced-notation.itely (Balloon help): idem.
3346 * Documentation/user/changing-defaults.itely (Creating contexts): idem.
3348 * Documentation/user/programming-interface.itely (Running a
3349 function on all layout objects): idem.
3351 * Documentation/user/introduction.itely (Automated engraving):
3352 update \applyOutput syntax
3354 * lily/lyric-combine-music-iterator.cc (start_new_syllable):
3355 remove debugging hook.
3357 * configure.in (LINK_GXX_STATICALLY): use "" to allow $
3360 * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
3362 * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
3363 TEXI2DVI_FLAGS to texi2dvi invocation.
3365 2006-05-24 Erik Sandberg <mandolaerik@gmail.com>
3367 * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
3368 works. More work is done by iterator now, and engraver has been
3369 very much simplified.
3371 * lily/translator-group.cc: try_music is now invoked through a
3374 * lily/*-iterator.cc: Massive cleanups. Junked
3375 try_music_in_children globally. Renamed try_music to report_event,
3376 and made that method descend to a bottom context automatically.
3378 * lily/event-iterator.cc: New file.
3380 * lily/output-property-iterator.cc,
3381 lily/old-lyric-combine-music-iterator.cc: Removed.
3383 * python/convert-rules.py: Modified the syntax for \applyOutput.
3385 2006-05-23 Graham Percival <gpermus@gmail.com>
3387 * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
3390 * Documentation/user/ various: stuff that might have helped
3391 to fix the pdf creation, plus some minor doc additions.
3393 * Documentation/user/changing-defaults.itely: remove @b from
3394 @b{ @internasref{foo}}; this breaks texi2dvi -E.
3396 2006-05-23 Han-Wen Nienhuys <hanwen@lilypond.org>
3398 * lily/beaming-pattern.cc (beamify): deal with negative start
3399 moments for beaming patterns.
3401 2006-05-22 Han-Wen Nienhuys <hanwen@lilypond.org>
3403 * lily/beaming-info.cc (beamify): new function: read beatLength
3404 and beatGrouping from context.
3406 * input/regression/beam-beat-grouping.ly (Module): new file.
3408 * input/regression/beam-unconnected-beamlets.ly (Module): new file.
3410 * lily/beam.cc (get_beam_segments): generate events for
3411 max_connect_ case too.
3412 (get_beam_segments): read Stem::max-beam-connect.
3414 * input/regression/beam-single-stem.ly: new file.
3416 * lily/stem.cc (set_beaming): use #f as signaling value for
3419 * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
3421 * lily/beam.cc (set_beaming): read clip-edges property.
3422 (calc_direction): don't suicide for single stem.
3424 * lily/beaming-info.cc (best_splitpoint_index): take bool*
3425 argument, remove 1<<15 hack. Remove clip_edges()
3427 * lily/hairpin.cc (print): only do padding for nonmusical bounds
3429 2006-05-21 Graham Percival <gpermus@gmail.com>
3431 * Documentation/user/basic-notation.itely: reorg.
3433 * Documentation/user/ various: minor fixes.
3435 2006-05-20 Han-Wen Nienhuys <hanwen@lilypond.org>
3437 * lily/stencil-expression.cc (register_stencil_head): opps, append
3438 to cdr of static SCM object.
3440 2006-05-19 Graham Percival <gpermus@gmail.com>
3442 * Documentation/user/README.txt, lilypond.tely, macros.itexi:
3443 update framework for command index. DOC WRITERS: use @funindex
3444 instead of @cindex @code{}.
3446 * Documentation/user/ various: replace @cindex @code{} => @funindex
3448 2006-05-19 Han-Wen Nienhuys <hanwen@lilypond.org>
3450 * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
3451 case positions is set manually.
3453 2006-05-18 Erik Sandberg <mandolaerik@gmail.com>
3455 * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
3458 2006-05-18 Han-Wen Nienhuys <hanwen@lilypond.org>
3460 * Documentation/user/changing-defaults.itely (Contexts explained):
3461 use absolute dimension for @image.
3463 * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
3464 out image for illustration too.
3465 ($(outdir)/%.png): add more png <-> eps rules.
3467 2006-05-17 Graham Percival <gpermus@gmail.com>
3469 * Documentation/user/ various: remove trailing whitespace, cosmetic
3470 change to reduce changes produced by diff.
3472 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3474 * lily/main.cc (do_chroot_jail): correctness tweak.
3476 * python/lilylib.py (system): import subprocess in system () only.
3478 * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
3480 * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
3481 variable. Backportme.
3483 2006-05-17 Erik Sandberg <mandolaerik@gmail.com>
3485 * lily/parser.yy: Change all syntax rules of type Music to SCM type
3487 2006-05-17 Werner Lemberg <wl@gnu.org>
3489 * lily/lexer.ll (init_signature_has_table): Add
3490 `scm-scm-music-music'.
3492 * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
3493 (Generic_prefix_music_scm): Add rule for it.
3495 * lily/quote-iterator.cc (Quote_iterator::process): Handle
3496 `quoted-transposition' property.
3498 * ly/music-functions-init.ly (transposedCueDuring): New function.
3500 * scm/define-music-properties.scm (all-music-properties): Updated.
3502 * Documenation/topdocs/NEWS.itely: Document it.
3504 2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
3506 * python/lilylib.py (system): move import subprocess to system()
3509 * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
3511 * VERSION (PATCH_LEVEL): release 2.9.5
3513 * Documentation/topdocs/INSTALL.texi (Top): update versions and
3516 * ly/engraver-init.ly: switch on hairpinToBarline by default.
3518 2006-05-16 Graham Percival <gpermus@gmail.com>
3520 * Documentation/user/basic-notation.itely: editing from Dave, thanks!
3522 * Documentation/user/ various: minor fixes.
3524 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3526 * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
3528 2006-05-16 Mats Bengtsson <mabe@s3.kth.se>
3530 * Documentation/user/advanced-notation.itely (Instrument names):
3531 Modified obsolete instruction on how to move instrument names away
3532 from the staves. Hmm, at second thought the bug probably has been
3533 solved, so the full bug description should probably be removed.
3535 2006-05-16 Han-Wen Nienhuys <hanwen@lilypond.org>
3537 * lily/dynamic-engraver.cc (typeset_all): hang ending on
3538 currentCommandColumn.
3540 * lily/hairpin.cc (print): also add padding for non-neighbor
3543 * scm/define-context-properties.scm
3544 (all-user-translation-properties): add hairpinToBarline
3546 * input/regression/hairpin-to-barline.ly: new file.
3548 * lily/context.cc (internal_send_stream_event): thinko fix.
3550 * lily/tie.cc (set_default_control_points): robustness fix.
3552 * python/musicxml.py (Part.interpret): don't complain about
3553 incomplete measures.
3555 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
3556 new music if last_event_chord() returned None.
3558 * python/musicxml.py (Part.interpret): skip back over chord notes.
3560 2006-05-16 Erik Sandberg <mandolaerik@gmail.com>
3562 * lily/percent-repeat-engraver.cc, lily/parser.yy,
3563 lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
3564 lily/slash-repeat-engraver.cc,
3565 lily/include/percent-repeat-iterator.hh: Rework percent repeats:
3566 iterator sends PercentEvents
3568 * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
3569 rework tuplets: send start/stop events to engraver
3571 * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
3572 dispatchers event-source and events-below to Context
3574 2006-05-15 Graham Percival <gpermus@gmail.com>
3576 * Documentation/user/README.txt: update info for doc writers.
3578 * Documentation/user/programming-interface.itely: integrate
3579 Nicolas' fixes for chapter rewrite.
3581 * Documentation/user/ various: minor fixes.
3583 2006-05-15 Han-Wen Nienhuys <hanwen@lilypond.org>
3585 * lily/clef-engraver.cc: cleanup.
3587 * Documentation/user/GNUmakefile: dist context-example.eps too.
3589 * lily/key-engraver.cc (create_key): use
3590 explicitKeySignatureVisibility for cancellation too.
3592 * lily/font-config.cc (init_fontconfig): don't close file if
3595 2006-05-15 Erlend Aasland <erlenda@gmail.com>
3597 * Documentation/topdocs/NEWS.tely: niente and rotation news
3599 2006-05-14 Erlend Aasland <erlenda@gmail.com>
3601 * lily/include/stencil.hh
3602 * lily/stencil.cc (rotate): new function. Makes it possible
3603 to rotate a stencil around a given offset.
3605 * lily/grob.cc (get_print_stencil): add rotation support
3607 * lily/stencil-interpret.cc (interpret_stencil_expression):
3608 add rotation support
3610 * lily/stencil-scheme.cc (ly:stencil-rotate): new function
3612 * scm/define-grob-properties.scm: add 'rotation property
3614 * scm/define-markup-commands.scm: add rotate markup command
3616 * scm/output-ps.scm: add rotation support in PostScript backend
3618 * scm/output-svg.scm: add rotation support in SVG backend
3620 2006-05-13 Graham Percival <gpermus@gmail.com>
3622 * Documentation/user/music-glossary.itely: French correction.
3624 * Documentation/user/programming-interface.itely: major
3625 new docs, some reorg, some info from Nicolas.
3627 * Documentation/user/ various: small fixes.
3629 2006-05-12 Mats Bengtsson <mabe@s3.kth.se>
3631 * Documentation/user/programming-interface.itely (Markup
3632 programmer interface): Remove duplicate text.
3634 2006-05-12 Graham Percival <gpermus@gmail.com>
3636 * Documentation/user/context-example.eps: new file.
3638 * Documentation/user/changing-defaults.itely: set up file to
3641 * Documentation/user/programming-interface.itely: changes
3644 2006-05-12 Han-Wen Nienhuys <hanwen@lilypond.org>
3646 * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
3648 2006-05-11 Graham Percival <gpermus@gmail.com>
3650 * Documentation/user/programming-interface.itely: first round of
3651 editing and merging emails from Nicolas.
3653 * Documentation/user/scheme-tutorial: minor edit.
3655 2006-05-11 Han-Wen Nienhuys <hanwen@lilypond.org>
3657 * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
3659 (Xml_node.message): use it.
3661 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice):
3662 oops. Add duration argument.
3664 2006-05-10 Joe Neeman <joeneeman@gmail.com>
3666 * lily/paper-column-engraver.cc (make_columns):
3667 * scm/define-grobs.scm: Revert my previous change and set the default
3668 in define-grobs.scm instead.
3670 2006-05-09 Graham Percival <gpermus@gmail.com>
3672 * Documentation/user/changing-defaults.itely: general editing,
3673 info about \set and \override.
3675 * Documentation/user/tweaking.itely, advanced-notation.itely:
3676 fixes from Dave Luttinen, thanks!
3678 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3680 * lily/paper-column-engraver.cc (make_columns): By default, a column
3681 needs to be breakable.
3683 2006-05-09 Han-Wen Nienhuys <hanwen@lilypond.org>
3685 * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
3687 (musicxml_time_to_lily): idem
3688 (musicxml_key_to_lily): idem
3689 (instrument_drumtype_dict): dict for supported drumtypes.
3690 (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
3691 moments and pending mm rests
3692 (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
3693 (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
3694 (musicxml_voice_to_lily_voice): add mode change.
3695 (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
3696 speed and less memory usage (factor 5 to 10).
3697 (convert): write -defs.ly and driver file separately so people
3698 can script their own part extraction.
3700 * python/musicxml.py (minidom_demarshal_node): new function:
3701 separate minidom handling.
3702 (lxml_demarshal_node): new function: support lxml.etree too.
3703 (Xml_node.message): new function: verbose error message, with XML
3704 path to offending node.
3705 (Attributes.get_measure_length): sane interface to MusicXML attributes.
3706 (Part_list.generate_id_instrument_dict): new method: collect
3707 instrument names, to be able to set drum_type.
3708 (Part.interpret): handle underfull measures
3709 (Part.interpret): assign instrument names.
3711 * python/musicexp.py (Output_printer.close): new method
3712 (MusicWrapper.print_ly): new class: support other modes,
3714 (BarCheck.print_ly): new class. Support bar checks, with comments
3715 and fancy barchecks.
3716 (NoteEvent.__init__): also set drum_type for drum notes.
3717 (MultiMeasureRest.lisp_expression): dump mm rests.
3719 * lily/paper-column-engraver.cc (stop_translation_timestep): set
3720 line-break-permission if forbidBreak is not set.
3722 2006-05-09 Joe Neeman <joeneeman@gmail.com>
3724 * scm/define-context-properties.scm:
3725 * scm/define-grob-properties.scm:
3726 * scm/define-grobs.scm:
3727 * scm/define-music-display-methods.scm:
3728 * scm/define-music-properties.scm:
3729 * scm/define-music-types.scm:
3730 * scm/music-functions.scm:
3731 * ly/declarations-init.ly:
3732 * lily/include/constrained-breaking.hh:
3734 * lily/spaceable-grob.cc:
3735 * lily/simple-spacer.cc:
3736 * lily/paper-score.cc:
3737 * lily/paper-column.cc:
3738 * lily/paper-column-engraver.cc:
3740 * lily/gourlay-breaking.cc:
3741 * lily/constrained-breaking.cc:
3742 * python/convertrules.py:
3743 Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
3744 "page-break-penalty" and "line-break-permission".
3745 Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
3746 Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
3748 * lily/bar-engraver.cc:
3749 * lily/beam-engraver.cc:
3750 * lily/forbid-break-engraver.cc:
3751 * lily/ligature-engraver.cc:
3752 * lily/paper-column-engraver.cc:
3753 * lily/percent-repeat-engraver.cc:
3754 * lily/score-engraver.cc:
3755 * lily/score-engraver.hh:
3756 * lily/paper-column-engraver.hh:
3757 Inter-engraver communication regarding line breaks is done through context
3758 properties (Score.forbidBreak) instead of function calls.
3760 2006-05-08 Han-Wen Nienhuys <hanwen@lilypond.org>
3762 * VERSION (PACKAGE_NAME): release 2.9.4
3764 2006-05-08 Graham Percival <gpermus@gmail.com>
3766 * Documentation/user/working.itely: proofreading from Dave
3769 * Doucmentation/user/README.txt: updated with manual style info.
3771 * Documentation/user/ various: trim linewidth to 78 chars.
3773 2006-05-07 Han-Wen Nienhuys <hanwen@lilypond.org>
3775 * scm/define-grob-properties.scm (all-internal-grob-properties):
3776 remove chord-tremolo property.
3778 * lily/beam.cc (get_beam_segments): don't use stem position as
3779 base for broken ends.
3781 2006-05-06 Graham Percival <gpermus@gmail.com>
3783 * Documentation/user/putting.itely: proofreading from Dave
3786 * Documentation/user/ various: more reorg and clarifications.
3788 2006-05-06 Han-Wen Nienhuys <hanwen@lilypond.org>
3790 * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
3792 * ly/music-functions-init.ly: new function featherDurations
3794 * lily/beam.cc: read grow-direction for feathered beaming.
3796 * Documentation/topdocs/NEWS.tely (Top): typo.
3798 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3800 * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3803 2006-05-05 Erik Sandberg <mandolaerik@gmail.com>
3804 * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3805 used by music streams.
3807 * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3808 lily/stream-event.cc, lily/stream-event-scheme.cc,
3809 lily/listener.cc, lily/scheme-listener.cc,
3810 lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3811 lily/include/stream-event.hh, lily/include/listener.hh,
3812 lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3813 Created data structures for music streams.
3815 2006-05-05 Han-Wen Nienhuys <hanwen@lilypond.org>
3817 * lily/beam.cc (get_beam_segments): new function. Reorganise the
3818 construction of a beam.
3821 * flower/include/std-vector.hh (default_compare): use only one comparison.
3823 * scm/define-markup-commands.scm (note-by-number): remove debug display.
3824 (note-by-number): further attachment fixes.
3826 * scm/lily-library.scm (ordered-cons): new function.
3827 (interval-index): new function
3829 * lily/note-head-scheme.cc (LY_DEFINE): new file.
3831 * lily/note-head.cc (get_stem_attachment): new function.
3833 * scm/define-markup-commands.scm (note-by-number): read 'style
3836 * input/regression/markup-note.ly: show note-head style option.
3838 * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3841 2006-05-04 Han-Wen Nienhuys <hanwen@lilypond.org>
3843 * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3845 * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3847 * lily/include/constrained-breaking.hh: GCC 4 fix.
3849 2006-05-04 Joe Neeman <joeneeman@gmail.com>
3851 * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3852 Replace it with functions get_line_forces and get_line_configuration.
3853 (class Simple_spacer): Make data private.
3854 Rewrite compression algorithm to be faster and simpler.
3856 * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3857 * lily/gourlay-breaking.cc (solve):
3858 * lily/constrained_breaking.cc (space_line):
3859 Change it to the new simple-spacer code.
3861 * lily/paper-score.cc (get_paper_systems):
3864 Delay breaking the systems until they are requested.
3865 (find_break_indices):
3866 Use vsize for indices.
3868 Move the "Calculating line breaks" message here.
3870 * lily/system.cc (pre_processing):
3871 Move the "Calculating line breaks" message away from here.
3872 (break_into_pieces):
3873 Allow multiple calls to this function in sequence (with touching-but-
3874 not-overlapping breakpoints).
3876 * lily/constrained-breaking.cc:
3877 Replace most of the get_XXXX functions with get_line_details.
3878 Only calculate the force for each line. Calculate configurations only
3879 for the lines we will actually use.
3880 Replace cols_ with lines_.
3882 2006-05-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
3884 * mf/GNUmakefile (depth): remove FC_FIND.
3886 * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3888 * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3890 * scm/framework-ps.scm (write-preamble): new function.
3891 (write-preamble): load mac fonts via fondu, even if gs-font-load
3894 2006-05-03 Werner Lemberg <wl@gnu.org>
3896 * mf/GNUmakefile (FC_FIND): Fix typo.
3898 2006-05-03 Erlend Aasland <erlenda@gmail.com>
3900 * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3902 2006-05-03 Han-Wen Nienhuys <hanwen@lilypond.org>
3904 * stepmake/aclocal.m4: run python-config for crosscompiling
3907 * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3908 -f png for HTML, TEXINFO formats.
3910 * input/tutorial/lbook-html-test.html: new file.
3912 * lily/include/tie-formatting-problem.hh (class
3913 Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3914 [column, direction]. This fixes laissez vibrer ties.
3916 * flower/include/tuple.hh (struct Tuple2): new file.
3918 * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3919 $(FCMATCH), only if $(NCSB_DIR) not set.
3921 * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3923 * config.make.in (DOCUMENTATION): set FCMATCH.
3925 * autogen.sh (srcdir): don't set --with-ncsb-dir.
3927 2006-05-03 Graham Percival <gpermus@gmail.com>
3929 * Documentation/user/ various: final round of reorg.
3931 * Documentation/user/instrument-notation.itely: some more
3932 fixes from Eduardo, thanks!
3934 2006-05-02 Han-Wen Nienhuys <hanwen@lilypond.org>
3936 * VERSION (PACKAGE_NAME): release 2.9.3
3938 * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3940 * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3942 2006-05-01 Mats Bengtsson <mabe@s3.kth.se>
3944 * scm/define-grob-properties.scm (all-user-grob-properties):
3945 Correct typo, thanks to Eduardo.
3947 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3949 * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3951 * buildscripts/lilypond-words.py (F): indent fix.
3953 * input/regression/tie-arpeggio-collision.ly: new file.
3955 * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3956 function: store outlines per column rank.
3958 * lily/include/tie-configuration.hh (class Tie_configuration): add
3959 column_ranks_ to specification and configuration, to distinguish
3960 between ties for different heads in arpegiated chords.
3962 * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3964 * *.py: more 4 space indents.
3966 * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3968 2006-05-01 Joe Neeman <joeneeman@gmail.com>
3970 * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3972 2006-05-01 Han-Wen Nienhuys <hanwen@lilypond.org>
3974 * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3976 * scripts/abc2ly.py (dump_score): indent of 4 for python code.
3978 * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3980 2006-04-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
3982 * python/convertrules.py (conv): indent 4 for python files.
3984 2006-04-29 Mats Bengtsson <mabe@s3.kth.se>
3986 * Documentation/user/changing-defaults.itely (Creating contexts):
3987 Clarify \new semantics.
3989 2006-04-28 Graham Percival <gpermus@gmail.com>
3991 * Documentation/user/ various: major new sections in the
3992 Learning manual, slight reorg elsewhere.
3994 2006-04-27 Han-Wen Nienhuys <hanwen@lilypond.org>
3996 * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE)
3998 * scm/framework-ps.scm (output-framework): remove PageMedia
4000 2006-04-27 Graham Percival <gpermus@gmail.com>
4002 * Documentation/user/ tweaks.itely, working.itely: new
4003 files, being more advanced "learning manual" chapters.
4005 * Documentation/user/ tutorial, putting, lilypond: reorg.
4007 2006-04-26 Graham Percival <gpermus@gmail.com>
4009 * input/regression/lyric-combine-polyphonic.ly: fixed test
4010 (no more "can't find context `one'" error).
4012 2006-04-25 Joe Neeman <joeneeman@gmail.com>
4014 * lily/stem-tremolo.cc (print): fix whole note tremolo placement
4016 * input/regression/stem-tremolo.ly: add 2 more whole note examples
4018 2006-04-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
4020 * lily/relocate.cc (read_relocation_dir): new function.
4022 2006-04-26 Graham Percival <gpermus@gmail.com>
4024 * Documentation/user/instrument-notation.itely: a few more fixes
4025 from Eduardo, thanks!
4027 * Documentation/user/README.txt: new file; contains info on
4028 style that used to be in lilypond.tely.
4030 * Documentation/user/ various: first round of doc reorg.
4032 * Documentation/user/baer-flat-bw.png: remove alpha bit from
4033 graphic; this probably causes problems on some pdf
4034 viewers, notably Adobe Acrobat.
4036 2006-04-24 Graham Percival <gpermus@gmail.com>
4038 * Documentation/user/instrument-notation.itely: many alterations
4039 to Vocal music, from Eduardo Viera.
4041 2006-04-23 Graham Percival <gpermus@gmail.com>
4043 * Documentation/user/instrument-notation.itely: fix \new
4044 instead of \context problem.
4046 2006-04-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
4048 * lily/relocate.cc (expand_environment_variables): new function.
4050 (read_relocation_file): id.
4052 * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code
4054 2006-04-21 Erlend Aasland <erlenda@gmail.com>
4056 * ly/engraver-init.ly: remove old comments from TabVoice
4058 2006-04-20 Graham Percival <gpermus@gmail.com>
4060 * Documentation/user/instrument-notation.itely: added Erlend's
4061 latest doc patch, thanks!
4063 2006-04-19 Erlend Aasland <erlenda@gmail.com>
4065 * lily/include/slur.hh:
4067 * lily/phrasing-slur-engraver.cc:
4068 * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
4069 acknowledge_extra_object () from Phrasing_slur_engraver:: and
4070 Slur_engraver:: and putting it in
4071 Slur::auxiliary_acknowledge_extra_object ().
4073 * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
4075 * lily/note-collision.cc: fix a comment
4077 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4079 * stepmake/bin/add-html-footer.py: fix footer position in
4080 generated html files: before </body> and </html> tags.
4082 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4084 * scripts/GNUmakefile: revert last "fix", which rather broke make.
4085 Earlier successive `make' commands finally compiled ok.
4087 * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
4089 2006-04-18 Erlend Aasland <erlenda@gmail.com>
4091 * lily/include/stem-tremolo.hh:
4092 * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
4096 * lily/include/lookup.hh: add rotated_box ()
4098 2006-04-18 Heikki Junes <hjunes@cc.hut.fi>
4100 * scripts/GNUmakefile: bugfix: run help2man only after scripts have
4101 been generated. Fixes "can't get `--help'" bug after make clean.
4103 * THANKS: alphabetize contributors.
4105 2006-04-17 Graham Percival <gpermus@gmail.com>
4107 * Documentation/user/instrument-notation.itely: added Erlend's
4108 tabs and banjo doc patch. Thanks!
4110 2006-04-17 Erlend Aasland <erlenda@gmail.com>
4112 * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
4114 * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
4116 * scm/output-lib.scm: add some more predefined string tunings.
4118 * Documentation/user/instrument-notation.itely: and doc them.
4120 2006-04-16 Jürgen Reuter <reuter@ipd.uka.de>
4122 * ly/engraver.ly: Remove obsolete comments.
4124 * ly/gregorian-init.ly: Define default layout block.
4126 * input/puer-fragment.ly: Updated and extended.
4128 2006-04-15 Jan Nieuwenhuizen <janneke@gnu.org>
4130 * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
4131 pdf conversion behaviour.
4133 * flower/file-name.cc (dir_name)
4134 (get_working_directory): Move from relocate.cc.
4136 * lily/relocate.cc (setup_paths): Remove rogue stat calls.
4138 * lily/relocate.cc: Encapsulate sys/stat.h in
4141 2006-04-14 Graham Percival <gpermus@gmail.com>
4143 * Documentation/user/ various: small updates from Cameron
4144 and Juergen, thanks!
4146 * Documentation/user/ various: small updates of my own.
4148 * THANKS: 2.7 -> 2.8.
4150 2006-04-11 Graham Percival <gpermus@gmail.com>
4152 * scm/define-context-properties.scm: typo.
4154 * Documentation/user/ : many more small updates.
4156 2006-04-13 Jürgen Reuter <reuter@ipd.uka.de>
4158 * scm/define-music-types.scm: disposed "docme".
4160 2006-04-11 Erlend Aasland <erlenda@gmail.com>
4162 * lily/hairpin.cc: make niente circles a bit smaller.
4164 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4166 * mf/GNUmakefile: remove redundant mftrace check. Also remove
4167 get-pfa and get-*-fonts targets.
4169 2006-04-10 Graham Percival <gpermus@gmail.com>
4171 * THANKS, Documentation/user/ basic-notation, advanced-notation,
4172 music-glossary, programming-interface: more minor fixes
4175 * scm/define-grob-properties.scm: clarified direction, thanks Mats!
4177 * scm/define-context-properties.scm: another old \property update.
4178 This time tested for compiling!
4180 2006-04-10 Erlend Aasland <erlenda@gmail.com>
4182 * mf/GNUmakefile: fix for mftrace version >= 1.2.0
4184 2006-04-09 Jan Nieuwenhuizen <janneke@gnu.org>
4186 * scm/define-context-properties.scm (all-user-translation-properties):
4187 * Documentation/user/global.itely (Page formatting): Compile fix.
4189 2006-04-09 Mats Bengtsson <mabe@s3.kth.se>
4191 * Documentation/user/advanced-notation.itely (Polymetric
4192 notation): Update the example to use the "+" symbol and add link
4193 to input/test/compound-time.ly.
4195 2006-04-08 Graham Percival <gpermus@gmail.com>
4197 * scm/define-grob-properties.scm: clarify docs for #'direction.
4199 * scm/define-context-properties.scm: update old \property override.
4201 * Documentation/user/ advanced-notation, global, lilypond-book:
4202 more minor doc updates.
4204 2006-04-07 Han-Wen Nienhuys <hanwen@lilypond.org>
4206 * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
4208 * scm/backend-library.scm (search-gs): oops.
4210 2006-04-06 Han-Wen Nienhuys <hanwen@lilypond.org>
4212 * scripts/lilypond-book.py (output): use base, not filename for href.
4214 * scm/backend-library.scm: only look for gs.
4216 * scripts/lilypond-book.py (output): fix printfilename.
4218 * lily/parser.yy (music_function_musicless_prefix): fold together
4219 definitions of signature (SCM*) (Music|post_event|chord_body_element)
4221 * lily/slur.cc (print): only set font-size if not set yet.
4223 * lily/slur-configuration.cc (add_score): improved layout of debug
4226 2006-04-05 David Feuer <David.Feuer@gmail.com>
4228 * music-drawing-routines.ps (draw_round_box): removed testing artifact.
4229 (draw_circle): Hopefully fixed regression.
4230 Improved documentation for several procedures.
4232 2006-03-04 Werner Lemberg <wl@gnu.org>
4234 * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
4236 2006-04-05 Han-Wen Nienhuys <hanwen@lilypond.org>
4238 * scripts/musicxml2ly.py (bindir): add dynamic
4241 2006-04-04 Graham Percival <gpermus@gmail.com>
4243 * Documentation/user/ basic-notation, advanced-notation, putting,
4244 instrument-notation, invoking, lilypond, THANKS: another ream of small
4245 fixes from the Doc Helpers.
4247 2006-04-03 David Feuer <David.Feuer@gmail.com>
4249 * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
4251 * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
4253 * Cleaned up interfaces between PostScript and Scheme, and moved
4254 computations from PostScript to Scheme:
4256 * music-drawing-routines.ps
4257 (*SF, stroke_and_fill): new procedures. Replaced stroke and fill
4258 with stroke_and_fill throughout.
4259 (euclidean_length, print_letter, draw_box): Deleted unused
4260 procedures. If someone needs draw_box, implement it using
4261 draw_round_box; don't duplicate code.
4262 (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
4263 Refactored/cleaned up interfaces.
4266 * output-ps.scm: reordered arguments to PostScript functions to
4267 match new interfaces
4268 (glyph-string): Rewrote glyph-string.
4269 (grob-cause): Replaced string-append with format.
4270 (repeat-slash): Rewrote to do computation here.
4271 (round-filled-box): Rewrote to do computation here.
4273 2006-04-04 Erlend Aasland <erlenda@gmail.com>
4275 * stepmake/stepmake/generic-targets.make: add cvs-clean target
4277 * stepmake/stepmake/toplevel- targets.make: print help info about
4280 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4282 * input/regression/hairpin-circled.ly: new file
4284 2006-04-03 Erlend Aasland <erlenda@gmail.com>
4286 * lily/hairpin.cc (print): add support for circled tip
4288 * scm/define-grob-properties.scm: add circled-tip parameter
4290 * scm/define-grobs.scm: init circled-tip to false
4292 2006-04-03 Han-Wen Nienhuys <hanwen@lilypond.org>
4294 * scm/music-functions.scm (quote-substitute): set
4297 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4299 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
4302 * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
4304 * scm/output-ps.scm (glyph-string): revert cid selectfont.
4306 2006-03-31 David Feuer <david.feuer@gmail.com>
4308 * scm/framework-ps.scm:
4310 * scm/output-ps.scm: glyph-string now produces smaller, more
4311 readable, and probably faster PostScript. Several findfont
4312 scalefont setfont instances changed to selectfont
4313 Hacked-up string-appends changed to formats.
4315 * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
4317 2006-03-30 Graham Percival <gpermus@gmail.com>
4319 * scm/lily-library.scm: make "no version" warning message more polite.
4321 * lily/music.cc: add double quotes to failed octave check.
4323 * Documentation/user/ advanced-notation, changing-defaults,
4324 instrument-notation, invoking, music-glossary: whole bunch of minor
4327 2006-03-31 Han-Wen Nienhuys <hanwen@lilypond.org>
4329 * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
4330 $(buildscriptdir) iso. depth.
4332 * VERSION (PACKAGE_NAME): release 2.9.1
4334 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4336 * lily/pango-font.cc (pango_item_string_stencil): more robustness.
4338 * VERSION (PATCH_LEVEL): bump version number.
4340 * flower/include/guile-compatibility.hh (scm_from_uint32): add
4343 * lily/pango-font.cc (pango_item_string_stencil): use
4346 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4347 $(outdir)/emmentaler-%.svg): remove canary.
4349 * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
4350 glyphnames if we have a ttf font.
4352 2006-03-30 Mats Bengtsson <mabe@s3.kth.se>
4354 * Documentation/user/advanced-notation.itely (Font selection):
4355 Corrected reference to the font-family-override.ly example.
4357 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4359 * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
4360 stem-tremolo object in the stem (or else the stem might not be
4363 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4365 * lily/ttf.cc (print_trailer): only print existing glyphs.
4367 2006-03-30 Joe Neeman <joeneeman@gmail.com>
4369 * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
4370 position the tremolo based on the position of the notehead.
4372 * input/regression/stem-tremolo.ly: add example of unbeamed eighth
4373 notes and update the texidoc line with the new positioning rules.
4375 2006-03-30 Han-Wen Nienhuys <hanwen@lilypond.org>
4377 * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
4379 * scripts/lilypond-book.py (Module): set default for linewidth if
4382 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4384 * VERSION (PACKAGE_NAME): release 2.9.0.
4386 * input/regression/stem-tremolo-position.ly: new file.
4388 * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
4390 2006-03-28 Joe Neeman <joeneeman@gmail.com>
4392 * lily/stem-tremolo.cc (print): position
4393 the tremolo depending only on the end of the stem
4394 and not on the notehead
4395 (raw_stencil): center, on the middle staff line, the
4396 flag that is closest to the end of the stem (previously
4398 (calc_width): add this callback to shorten a tremolo when
4399 it is beamed or it is stemup with a flag
4400 (style): add this callback to make a tremolo rectangular when
4401 it is beamed or it is stemup with a flag
4402 (rotated_box): this is like Lookup::beam but makes a rotated
4403 rectangle instead of a parallelogram
4405 * lily/stem.cc (calc_stem_info): make sure the stem
4406 is long enough to fit the tremolo
4407 (calc-length): reduce the length of tremolo stems since the
4408 tremolo code is now capable of better positioning
4410 * scm/define-grobs.scm: make calc_width the default beam-width
4411 callback for stem-tremolo and add the style callback
4413 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4415 * lily/tuplet-bracket.cc (calc_control_points): handle suicide
4418 2006-03-29 Han-Wen Nienhuys <hanwen@lilypond.org>
4420 * lily/ttf.cc (make_index_to_charcode_map): restore old
4423 2006-03-28 Werner Lemberg <wl@gnu.org>
4425 * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
4427 2006-03-28 Graham Percival <gpermus@gmail.com>
4429 * THANKS: update for 2.9, add section for Documentation helpers.
4431 * Documentation/topdocs/NEWS.tely: compile fix.
4433 * Documentation/user/ basic-notation, global, advanced-notation,
4434 examples.itely: minor fixes from mailist.
4436 2006-03-28 Han-Wen Nienhuys <hanwen@lilypond.org>
4438 * mf/feta-bolletjes.mf: match width of solfa notes with normal
4441 * lily/ttf.cc (print_trailer): use it.
4443 * lily/pango-font.cc (get_unicode_name): new function.
4445 * lily/ttf.cc (make_index_to_charcode_map): move function from
4447 (print_trailer): substitute uniXXXX name if applicable.
4449 * lily/pango-font.cc (get_index_to_charcode_map): new function.
4450 (pango_item_string_stencil): use it to generate uniXXXX names.
4452 * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
4453 note heads, for uniform widths in shape note output.
4454 (overdone_heads): hmm. remove them again.
4456 * scripts/lilypond-book.py (output): add links to filenames.
4458 * Documentation/topdocs/INSTALL.texi (Top): update versions.
4460 * lily/note-collision.cc (get_clash_groups): only consider when
4461 Note_column::dir <> CENTER.
4463 * scripts/lilypond-book.py (get_option_parser): init output_name
4466 2006-03-24 Graham Percival <gpermus@gmail.com>
4468 * Documentation/topdocs/NEWS.tely: add @end itemize
4470 * Documentation/user/ global, advanced-notation: minor
4473 2006-03-23 Graham Percival <gpermus@gmail.com>
4475 * Documentation/user/ lilypond.tely, music-glossary,
4476 preface: housekeeping; 2005->2006, remove "notes for 2.6"
4478 2006-03-23 Han-Wen Nienhuys <hanwen@lilypond.org>
4480 * mf/GNUmakefile: don't install .enc files.
4482 * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
4484 * VERSION (PATCH_LEVEL): bump to 2.9.0
4486 2006-03-22 Graham Percival <gpermus@gmail.com>
4488 * Documentation/user/advanced-notation.itely: minor fixes
4491 2006-03-22 Han-Wen Nienhuys <hanwen@lilypond.org>
4493 * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
4495 * branch lilypond_2_8
4497 2006-03-22 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4499 * scripts/lilypond-book.py (samefile): new function, for windoze
4502 2006-03-21 Graham Percival <gpermus@gmail.com>
4504 * ly/engraver-init.ly: add info about StaffGroup.
4506 2006-03-21 Han-Wen Nienhuys <lilydev@localhost.localdomain>
4508 * input/regression/stem-direction-context.ly: idem.
4510 * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
4514 * input/regression/page-layout-twopass.ly: comment out \markup so
4517 * lily/instrument-name-engraver.cc (finalize): add to instrument
4518 name global System. This also fixes chopped instrument names, but
4519 doesn't crash when there are slurs/beams.
4521 * lily/slur-configuration.cc (add_score): disallow negative slur
4524 2006-03-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
4526 * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
4528 * lily/instrument-name-engraver.cc (process_music): kludge: add
4529 InstrumentName spanner to axis group of left bound. Fixes chopped
4530 off instrument names in EPS images.
4532 * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
4534 * scripts/abc2ly.py (option_parser): update to 2.7.40
4536 2006-03-20 Graham Percival <gpermus@gmail.com>
4538 * THANKS: move small doc contributors to SUGGESTIONS.
4540 * Documentation/user/ basic-notation, advanced-notation,
4541 global: small changes from mailist.
4543 2006-03-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
4545 * Documentation/user/advanced-notation.itely (Text marks): update
4546 for new rehearsalMarkAlignSymbol convention.
4548 * VERSION (PATCH_LEVEL): bump version.
4550 * input/test/instrument-name-align.ly: new file.
4552 * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
4554 * input/test/instrument-name-align.ly: new file. Document how to
4555 align instrument names.
4557 * lily/mark-engraver.cc: remove properties.
4559 * scm/define-context-properties.scm
4560 (all-user-translation-properties): remove align symbol properties
4561 for barnumber/reh. mark.
4563 * lily/break-align-interface.cc (self_align_callback): new
4564 interface, new function. Look at complete alignment. This handles
4565 tunable break alignments in case break-align-symbols are missing.
4567 * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
4569 * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
4571 * python/convertrules.py (conv): mark/bar number alignment rule.
4573 * lily/break-align-interface.cc (calc_positioning_done): also
4574 store offset from last visible break-alignment to its
4575 neighbor. This makes alignment on non-visible objects more reliable.
4577 * po/lilypond.pot (Module): ran po-replace.
4579 * input/regression/tie-single-manual.ly (Module): new file.
4581 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
4582 look at has_manual_position_.
4583 (from_ties): set has_manual_position_ if tie has staff-position set.
4585 * lily/tuplet-bracket.cc (calc_positions): idem.
4587 * lily/tuplet-number.cc (print): don't print tupletnumber if it
4590 2006-03-19 Nicolas Sceaux <nicolas.sceaux@free.fr>
4592 * scm/define-markup-commands.scm (smallCaps): new markup command
4593 for turning a text to small caps using smaller font size and upper
4596 2006-03-17 Graham Percival <gpermus@gmail.com>
4598 * Documentation/user/ examples, instrument-notation,
4599 advnaced-notation: minor fixes from mailist.
4601 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4603 * Documentation/user/tutorial.itely (First steps): change example
4606 2006-03-17 Graham Percival <gpermus@gmail.com>
4608 * Documentation/user/ examples, advanced: minor changes from mailist.
4610 * THANKS: add Geoff Horton, for documentation stuff.
4612 2006-03-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
4614 * python/lilylib.py (system): revert have_select kludge.
4616 * Documentation/user/tutorial.itely (Commenting input files):
4617 update version numbers in doc.
4619 * scm/define-grob-interfaces.scm (multi-measure-interface): add
4620 bound-padding to multi-measure-interface
4622 2006-03-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
4624 * input/test/engraver-example.ily: update version number.
4626 * VERSION (PACKAGE_NAME): release 2.7.39
4628 * lily/note-spacing.cc (get_spacing): heighten threshold where
4629 accidentals/arpeggios influence previous spacing fully.
4631 * lily/rest.cc (y_offset_callback): only use direction if
4632 staff-position wasn't set before.
4634 * lily/bar-number-engraver.cc: add support for
4635 barNumberAlignSymbol.
4636 add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
4638 * lily/pointer-group-interface.cc (set_ordered): new function.
4639 (add_unordered_grob): new function.
4641 * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
4642 to ordered, unless the opposite has been proved. This fixes
4643 random reordering of large object groups across linebreaks,
4646 * lily/main.cc (do_chroot_jail): printf format fix.
4648 * lily/tie-formatting-problem.cc (generate_configuration):
4649 multiply y-shift for dot with direction.
4651 * scm/define-markup-commands.scm (note-by-number): put (magstep
4652 size) in y-attach too.
4654 * Documentation/topdocs/NEWS.tely (Top): show override.
4656 * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
4657 direction for stems.
4659 2006-03-15 Graham Percival <gpermus@gmail.com>
4661 * Documentation/user/ changing-defaults, global: minor
4664 2006-03-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
4666 * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
4668 * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
4669 breakable items after uniformly stretched notes.
4671 * lily/tie-formatting-problem.cc (set_chord_outline): initialize
4672 outline with outer edge of note heads. This prevents infinity
4673 problems with tied whole notes.
4675 * scripts/lilypond-book.py (do_file): use os.popen
4677 * python/convertrules.py (conv): add rule for Stem #'beamed-*
4679 2006-03-14 Erik Sandberg <mandolaerik@gmail.com>
4681 * Documentation/user/invoking.itely: Add ragged-right to bug report
4684 2006-03-14 Graham Percival <gpermus@gmail.com>
4686 * Documentation/user/global.itely: small fix from mailist.
4688 2006-03-14 Mats Bengtsson <mabe@s3.kth.se>
4690 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
4691 file descriptor returned by tempfile.mkstemp() when writing
4692 to tmpfile and closing it. Solves problem with unlink(tmpfile)
4695 2006-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
4697 * po/fi.po: newline bugfix.
4699 2006-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
4701 * scm/paper.scm (paper-alist): Rounding fixes.
4703 2006-03-13 Graham Percival <gpermus@gmail.com>
4705 * Documentation/user/ changing-defaults, instrument-notation,
4706 tutorial: small fixes from mailist, mostly from Mats. Thanks!
4708 2006-03-13 Heikki Junes <hjunes@cc.hut.fi>
4712 2006-03-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
4714 * stepmake/bin/add-html-footer.py (mail_address_url): don't add
4717 * python/lilylib.py (print_environment): move ps_page_count to
4720 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4722 * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
4724 * scm/framework-ps.scm (embed-document): new function. Use to
4727 * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
4729 2006-03-12 Mats Bengtsson <mabe@s3.kth.se>
4731 * Documentation/user/instrument-notation.itely (Setting simple
4732 songs): Added \book{...} around the full example, so the separate
4733 markups are included in the printed example.
4735 2006-03-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
4737 * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
4740 * python/lilylib.py (system): rewrite system() using
4741 subprocess. Remove >& redirection trickery.
4743 2006-03-11 Graham Percival <gpermus@gmail.com>
4745 * Documentation/user/ changing-defaults, global, scheme-tutorial,
4746 notation-appendices.itely: minor fixes from mailist.
4748 2006-03-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
4750 * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
4751 unsplit man also needs images.
4753 * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
4755 * VERSION (PACKAGE_NAME): 2.7.38 released.
4757 2006-03-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
4759 * scripts/lilypond-book.py (get_latex_textwidth): look for latex
4762 2006-03-08 Johannes Schindelin <Johannes.Schindelin@gmx.de>
4764 * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
4765 respects the Score.skipTypesetting property.
4767 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4769 * scm/framework-ps.scm (ps-embed-cff): no Setup section in
4770 Prolog. No %%EOF after CFF file.
4772 2006-03-08 Joe Neeman <joeneeman@gmail.com>
4774 * lily/constrained-breaking.cc (get_max_systems): used to return a
4776 (combine_demerits): use pointers to reduce copying data
4777 (calc_subproblem): idem
4778 (get_page_penalty): add page turn penalties
4780 2006-03-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
4782 * Documentation/user/invoking.itely (Invoking lilypond): better
4783 explanation of -e usage.
4785 * lily/main.cc (main_with_guile): don't append to
4786 init_scheme_code_string
4788 * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
4790 * Documentation/user/invoking.itely: add note about MacOS X scripts.
4792 * scripts/convert-ly.py (do_options): don't print help for
4795 * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
4796 @code and @example. Update from texinfo.tex from CVS.
4798 2006-03-08 Graham Percival <gpermus@gmail.com>
4800 * Documentation/user/scheme-tutorial.itely: clarifies distances
4801 measured in staff-spaces.
4803 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4805 * lily/slur.cc (outside_slur_callback): only calculate offsets if
4806 consider[k] is true.
4808 * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4810 * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4811 consider columns that have originals. Unifies spacing for mm
4812 rests around line breaks.
4814 * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4815 (set_text_rods): idem.
4816 (calculate_spacing_rods): new function: share code between
4817 set_text_rods and set_spacing_rods.
4818 (set_text_rods): take extents of bounds into account.
4820 2006-03-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
4822 * Documentation/user/basic-notation.itely (Writing music in
4823 parallel): don't use relative.
4825 2006-03-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
4827 * ly/music-functions-init.ly (Module): add shiftDurations
4829 * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4831 * scm/paper.scm (paper-alist): no decimals for Ax paper sizes.
4833 * ly/engraver-init.ly: init vocalName to nil.
4835 2006-03-05 Erik Sandberg <mandolaerik@gmail.com>
4837 * scm/music-functions.scm (music->make-music): bugfix,
4838 KeyChangeEvents are now handled correctly.
4840 * scripts/lilypond-book.py: Add --debug option.
4842 2006-03-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
4844 * python/lilylib.py: add tempfile.
4846 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4848 * VERSION (PACKAGE_NAME): release 2.7.37
4850 * python/lilylib.py (ps_page_count): remove make_ps_images().
4851 (ps_page_count): remove mkdir_p
4852 (system): remove cleanup_temp.
4853 (exit): remove lilypond_version_(check)
4854 (error_log): remove pseudo_filter_p
4859 * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4862 * lily/accidental-engraver.cc (make_standard_accidental): only add
4863 support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4865 * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4866 $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4867 Make incompatibilities.
4869 * scm/output-ps.scm (grob-cause): replace backslashes by /
4870 (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4872 2006-03-02 Jan Nieuwenhuizen <janneke@gnu.org>
4874 * cygwin/GNUmakefile: Install fixes.
4876 * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4878 * lily/note-head.cc (head::get_balltype): Compile fix.
4880 * flower/file-name.cc (dos_to_posix): Flower string fix.
4882 2006-03-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
4884 * python/lilylib.py: pychecker cleanups.
4886 * scripts/lilypond-book.py
4887 (Lilypond_snippet.output_print_filename): pychecker cleanups
4889 * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4891 * python/lilylib.py (underscore): remove identify() , warranty()
4893 * ps/music-drawing-routines.ps: change Border routine for GSView
4896 * lily/stem.cc (height): use quantize-positions. This triggers
4897 set_stem_lengths, so scripts on beamed stems are handled correctly.
4899 * lily/side-position-interface.cc (aligned_side): check if edges
4900 of script are inside staff. Fixes accent of edge of the staff.
4902 * input/regression/staccato-pos.ly: more examples.
4904 * stepmake/aclocal.m4 (depth): fix bashism.
4906 * lily/lyric-combine-music-iterator.cc: move from
4907 new-lyric-combine-iterator.cc
4908 (process): add pending_grace_lyric_ member to delay lyrics on
4911 * lily/system-start-text.cc (print): suicide if we don't have any
4912 elements. Fixes hara kiri'd instrument names.
4914 * scripts/mup2ly.py (Module): remove.
4916 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4918 * Documentation/user/global.itely (A single music expression):
4919 close @lilypond properly
4921 * lily/volta-bracket.cc (modify_edge_height): change from
4922 after_line_breaking_callback. Suicide last bracket if appropriate.
4924 * python/lilylib.py: strip getopt support
4926 * scripts/etf2ly.py (do_options): use optparse
4928 * scripts/midi2ly.py: optparse, strip lilylib copy.
4930 * scripts/abc2ly.py (voices): use optparse.
4932 * stepmake/stepmake/generic-vars.make: new function absdir.
4934 * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4936 * scripts/lilypond-book.py (find_file): use global_options for
4939 * scm/ps-to-png.scm (ps-page-count): prevent null characters
4942 2006-03-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
4944 * python/lilylib.py (get_global_option): ughness for extracting
4945 global options from lilylib.
4946 (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4948 * scripts/lilypond-book.py (get_option_parser): use optparse for
4949 option handling. Put options in global_options variable.
4951 2006-02-28 Heikki Junes <hjunes@cc.hut.fi>
4953 * Documentation/index.html.in: clarify.
4955 2006-02-28 Nicolas Sceaux <nicolas.sceaux@free.fr>
4957 * scm/layout-page-layout.scm (write-page-breaks): add a
4958 music-system-heights property to the page layout output.
4960 * scm/page.scm (make-page-stencil): take footer into account when
4961 computing the 'space-left page property
4962 (annotate-space-left): take footer into account when annonating
4965 2006-02-28 Graham Percival <gpermus@gmail.com>
4967 * Documentation/user/ advanced-notation, global: more (final)
4968 docs for music expressions, removed special fermatas.
4970 2006-02-27 Graham Percival <gpermus@gmail.com>
4972 * Documentation/user/ basic-notation, global: minor changes
4975 2006-02-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
4977 * scm/framework-ps.scm:
4978 * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4979 layer for inf? and nan? from framework-ps to lily-library.
4981 2006-02-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
4983 * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4984 $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4986 * buildscripts/substitute-encoding.py (Module): remove file.
4988 * mf/GNUmakefile: more PFA strippage.
4990 * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4992 * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4995 * scm/framework-ps.scm: remove font name munging.
4997 * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4999 2006-02-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
5001 * scm/markup.scm (define-markup-command): change
5002 def-markup-command to define-markup-command
5004 * scm/music-functions.scm (define-music-function): change
5005 def-music-function to define-music-function.
5007 * python/convertrules.py (conv): rules for def-music-function
5008 and def-markup-commands
5010 * Documentation/user/programming-interface.itely,
5011 input/no-notation/display-lily-tests.ly,
5012 input/regression/lily-in-scheme.ly,
5013 input/regression/markup-user.ly,
5014 input/regression/music-function.ly, input/regression/tie-chord.ly,
5015 scm/fret-diagrams.scm, ly/music-functions-init.ly,
5016 ly/gregorian-init.ly: use new macro names (define-music-function,
5017 define-markup-command).
5019 2006-02-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
5021 * scripts/lilypond-book.py (main): write Makefile dependencies file.
5022 (output): add comments to lp-book latex output.
5024 * GNUmakefile.in (footifymail): use gmane address for webpage bug
5027 2006-02-23 Graham Percival <gpermus@gmail.com>
5029 * Documentation/user/ tutorial, global: minor changes.
5031 2006-02-23 Nicolas Sceaux <nicolas.sceaux@free.fr>
5033 * mf/GNUmakefile: add '\' in multi-line "define ... endef"
5034 blocks (for make 3.80)
5036 * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
5037 \notemode so that user should not have to explicitely type it.
5039 * scm/define-music-display-methods.scm: various
5040 fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
5043 * input/no-notation/display-lily-tests.ly: new tests for
5044 \applyOutput and \applyContext
5046 2006-02-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
5048 * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
5049 changed it slightly so that the number of systems returned by
5050 solve () will be the same as the last value passed to resize
5051 (). I've also added more documentation, removed casts, fixed style
5052 problems and put in some recovery if constraints aren't satisfied."
5054 2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
5056 * elisp/lilypond-mode.el (count-matches-as-number): New funtion
5057 for emacs < 22 compatibility.
5058 (count-rexp): Use it.
5059 (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
5060 substring juggling (Milan Zamazal).
5062 2006-02-23 Graham Percival <gpermus@gmail.com>
5064 * Documentation/user/ basic-notation, advanced-notation,
5065 global.itely, invoking.itely, tutorial,itely:
5066 minor fixes from mailist.
5068 * scm/define-markup-commands.scm: improve docs of \filled-box.
5070 2006-02-23 Heikki Junes <hjunes@cc.hut.fi>
5072 * Documentation/index.html.in: changes concern the previous release.
5074 * input/regression/+.ly: cultivate typographical terminology.
5076 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5078 * scm/define-grob-interfaces.scm (parentheses-interface): add
5079 padding to parentheses-interface.
5081 * Documentation/user/GNUmakefile: remove $(CROSS) support from
5082 Documentation/user/GNUmakefile. Use --disable-documentation for that.
5084 * VERSION (PATCH_LEVEL): release 2.7.36
5086 * lily/slur.cc: add avoid-slur (ugh.)
5088 * lily/slur-configuration.cc (fit_factor): oops, skip point if
5089 intersection gets smaller. This fixes slurs over extreme points.
5091 * lily/melody-engraver.cc (stop_translation_timestep): ignore
5092 stems with neutral-direction set.
5094 * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
5096 * lily/open-type-font.cc (load_table): format error.
5098 * lily/change-iterator.cc (process): format fix.
5100 * flower/include/international.hh (_f): idem.
5102 * flower/include/std-string.hh: add format printf attribute.
5104 * scm/define-grobs.scm (all-grob-descriptions): height of all
5105 PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
5107 * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
5110 * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
5112 2006-02-22 Erik Sandberg <mandolaerik@gmail.com>
5114 * input/regression/: upgraded syntax for some files.
5116 * THANKS: Add bughunters.
5118 2006-02-22 Graham Percival <gpermus@gmail.com>
5120 * Documentation/user/ invoking.itely, advanced-notation.itely,
5121 global.itely: long-awaited "let's make chapter 10 not suck"
5122 update. Rearrange chapter 10; now called "global issues",
5123 addresses file structure, etc. Some info from other files
5124 moved into global.itely.
5126 2006-02-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
5128 * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
5129 catch trill-span-event notes.
5131 * Documentation/user/examples.itely (Ancient notation templates): typo.
5134 * scripts/lilypond-book.py (main): scrap invokes_lilypond().
5136 * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
5138 * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
5140 * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
5142 * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
5143 froum Laissez_vibrer_engraver.
5145 * ly/declarations-init.ly (repeatTie): add \repeatTie
5147 * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
5149 * scm/define-grob-properties.scm (all-user-grob-properties): add
5150 head-direction property.
5152 * lily/tie-formatting-problem.cc (from_semi_ties): rename from
5153 from_lv_ties. Take head direction argument.
5155 * lily/semi-tie-column.cc: rename from
5156 laissez-vibrer-tie-column.cc. Rename class too.
5158 * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
5161 * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
5163 * lily/break-algorithm.cc (find_break_indices): remove linewidth <
5165 (find_breaks): idem.
5167 2006-02-21 Graham Percival <gpermus@gmail.com>
5169 * Documentation/user/advanced-notation.itely: fixed make-moment]
5172 * Documentation/user/basic-notation.itely: more clarification to
5175 2006-02-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
5177 * lily/include/constrained-breaking.hh (class
5178 Constrained_breaking): new file.
5180 * lily/constrained-breaking.cc (resize): new file.
5182 * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
5184 * Documentation/user/advanced-notation.itely (Clusters): insert
5187 * lily/tie-column.cc (calc_positioning_done): support for
5190 * lily/tie-formatting-problem.cc
5191 (generate_extremal_tie_variations): factor out.
5192 (score_ties_configuration): annotate all tie
5193 (print_ties_configuration): new routine.
5194 (generate_configuration): nudge extremal ties outside of the head
5196 (score_ties_configuration): oops. convert to staff-space before
5197 determining position symmetry.
5199 2006-02-20 Graham Percival <gpermus@gmail.com>
5201 * Documentation/user/*-notation.itely: misc minor editing,
5202 shifting doc sections around.
5204 * Documentation/user/*-notation-itely, global.itely,
5205 changing-defaults.itely: added new stuff from NEWS.
5207 2006-02-20 Heikki Junes <hjunes@cc.hut.fi>
5211 2006-02-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
5213 * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
5214 lilypond --verbose for lp-book.
5216 * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
5217 $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
5219 * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
5220 $(buildscript-dir) iso. absolute depth.
5222 * buildscripts/genicon.py (dir): thinko.
5224 * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
5226 2006-02-19 Erik Sandberg <mandolaerik@gmail.com>
5228 * scm/output-lib.scm: swap darkcyan/darkyellow
5230 * THANKS: Add bughunters.
5232 2006-02-19 Graham Percival <gpermus@gmail.com>
5234 * Documentation/user/programming-interfaces.itely: fixed example.
5236 * Documentation/user/instrument-notation.itely: fix @{ @}.
5238 * scm/script.scm: add avoid-slur for \open.
5240 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5242 * lily/tie-formatting-problem.cc (score_configuration): use
5243 sliding score for min-length.
5245 * Documentation/pictures/GNUmakefile (local-dist): loose the rule
5246 spaghetti for icons.
5248 * buildscripts/genicon.py (program_name): new file.
5250 * lily/tie-formatting-problem.cc (set_chord_outline): put dots
5252 (generate_configuration): for small ties, also look for collisions
5253 at Y + DIR*h + DELTA_Y.
5254 (get_variations): consider variation for dot positions too.
5256 * lily/side-position-interface.cc (aligned_side): take abs for
5257 quantized rounded position. Fixes tenuto below staff.
5259 * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
5260 markers when necessary.
5262 * lily/program-option.cc (internal_set_option): add
5263 strict_infinity_checking option.
5265 * scm/output-lib.scm (cyan): swap yellow and cyan.
5267 2006-02-19 Graham Percival <gpermus@gmail.com>
5269 * darwin.patch: trivial linenumber update.
5271 * Documentation/user/ {various}: `\context foo = named' changed
5272 to `\new foo = "name"' in docs.
5274 2006-02-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
5276 * scm/stencil.scm (annotate-y-interval): use it.
5278 * scm/lily-library.scm (interval-sane?): new function.
5280 * buildscripts/mf-to-table.py (Char_metric.__init__): remove
5283 * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
5286 * flower/include/std-vector.hh (iterof): add iterof macro.
5288 * lily/enclosing-bracket.cc (width): new function.
5290 * lily/align-interface.cc (align_elements_to_extents): reinstate
5293 2006-02-18 Heikki Junes <hjunes@cc.hut.fi>
5295 * Documentation/index.html.in: fix spelling: thankyous.
5297 2006-02-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
5299 * lily/lyric-hyphen.cc: typo.
5301 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5303 * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
5304 $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
5307 * VERSION: release 2.7.35
5309 * lily/beam.cc (get_default_dir): oops. Take abs () for
5311 (get_default_dir): use extreme position criterion only in absence
5312 of forced stem directions.
5314 * VERSION (PATCH_LEVEL): bump VERSION.
5316 * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
5317 dependencies. Necessary for -jX builds.
5319 2006-02-17 Jan Nieuwenhuizen <janneke@gnu.org>
5321 * lily/relocate.cc (setup_paths): Yet another const fix.
5323 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5325 * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
5327 * lily/relocate.cc (setup_paths): oops.
5329 2006-02-17 Heikki Junes <hjunes@cc.hut.fi>
5331 * Documentation/index.html.in: order links: html before PDF.
5333 2006-02-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
5335 * lily/tie-column-format.cc (Module): remove.
5337 * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
5339 * lily/text-spanner.cc (print): idem.
5341 * lily/dynamic-text-spanner.cc (print): only print line if longer
5344 * lily/auto-change-iterator.cc (change_to): formatting.
5346 * lily/beam.cc (get_default_dir): take extreme note head as input
5349 * lily/tie.cc (get_default_dir): only look directions for visible
5352 * lily/side-position-interface.cc (aligned_side): oops. Don't
5353 mutiply with direction. This fixes quantized (staccato, tenuto)
5354 scripts below notes.
5356 * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
5357 direction. Fixes c-lyrics-center-align.ly
5359 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5361 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
5364 * lily/std-string.cc:
5365 * lily/include/std-vector.hh (split_string): Move and rename from
5366 lily/include/misc.hh, lily/misc.cc. Update callers.
5368 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5370 * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
5372 2006-02-16 Jan Nieuwenhuizen <janneke@gnu.org>
5374 * flower/test-file.cc: New file.
5376 * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
5379 * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
5381 2006-02-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
5383 * flower/include/file-storage.hh: remove file.
5385 * lily/include/midi-item.hh (class Midi_track): idem.
5387 * lily/include/source.hh (class Sources): idem.
5389 * lily/include/performance.hh (class Performance): use vector
5392 * flower/include/cons.hh (class Cons): remove file.
5394 * flower/include/flower-proto.hh: remove template cruft.
5396 * lily/include/font-metric.hh: use size_t not vsize for indices.
5398 * flower/include/flower-proto.hh (Module): remove std-vector.hh
5401 * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
5403 * lily/include/paper-book.hh (class Paper_book):
5404 make get_system_specs() public.
5406 * scm/layout-page-layout.scm (optimal-page-breaks): only consider
5407 the force=10000 case if we don't have a current-best.
5409 * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
5412 * flower/include/flower-proto.hh: remove outdated templates.
5414 * scm/page.scm: use annotate-spacing
5416 2006-02-15 Graham Percival <gpermus@gmail.com>
5418 * scm/translation-functions.scm: circle patch from Erlend, thanks!
5420 * THANKS: moved Erlend Aasland to contributors.
5422 2006-02-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
5424 * config.hh.in: remove HAVE_PANGO_16
5426 * lily/tuplet-bracket.cc (calc_positions): multiply with
5427 staff-space for beam case. This fixes tuplets+beams on scaled
5430 * config.hh.in: remove all Kpathsea related defines.
5432 * lily/dot-column.cc (side_position): reach stem via dots->
5433 head->stem. Inspect all stems for dot collisions.
5435 * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
5438 * lily/bar-number-engraver.cc (process_music): document function
5441 * lily/score.cc (default_rendering): add pscore, not systems
5444 * lily/paper-book.cc (get_system_specs): separate generation of
5447 * flower/include/std-vector.hh: don't include config.hh
5449 2006-02-15 Jan Nieuwenhuizen <janneke@gnu.org>
5451 * flower/include/std-vector.hh: Better wrapper compatibility with
5454 * flower/include/flower-proto.hh: Remove cheap forward declaration
5457 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
5459 2006-02-14 Graham Percival <gpermus@gmail.com>
5461 * Documentation/user/invoking.itely: add warning about command line.
5463 2006-02-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
5465 * lily/include/lily-proto.hh: add Prob, rm Page.
5467 * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
5469 * VERSION: release 2.7.34
5471 * lily/relocate.cc (framework_relocation): show canary if
5472 GHOSTSCRIPT_VERSION undefined.
5474 * GNUmakefile.in: remove $(VERSION) symlink.
5476 * lily/relocate.cc (setup_paths): add +
5478 2006-02-13 Heikki Junes <hjunes@cc.hut.fi>
5480 * Documentation/index.html.in: specify sizes for all big HTML pages.
5482 2006-02-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
5484 * config.hh.in: remove @FRAMEWORKDIR@
5486 * lily/system-start-text.cc (get_stencil): new file: separate out
5487 system-start-delimiter text support.
5489 * input/**ly: replace \context with \new where appropriate.
5493 * lily/slur-scoring.cc (get_base_attachments): use
5494 robust_relative_extent. This fixes problems with empty paper-columns.
5496 2006-02-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
5498 * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
5500 * scm/define-music-properties.scm (all-music-properties):
5501 create-new property.
5503 * lily/context-specced-music-iterator.cc (construct_children):
5504 inspect 'create-new property iso. magical $uniqueContextId context
5507 * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
5509 * lily/context-key-manager.cc (Module): new file. Encapsulate
5510 object key generation.
5512 * lily/include/context-key-manager.hh (Module): new file.
5514 2006-02-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
5516 * scm/define-grobs.scm (all-grob-descriptions): center instrument
5519 * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
5521 (reloc_b): excise --enable-framework-dir
5523 * lily/relocate.cc (framework_relocation): use getenv
5524 LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
5526 2006-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
5528 * flower/include/std-string.hh:
5529 * flower/include/std-vector.hh: Finish std:: conversion; move
5530 flower extensions from std:: namespace. Update users.
5532 * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
5533 their expansion to vector<*>. Update users.
5535 2006-02-10 Graham Percival <gpermus@gmail.com>
5537 * Documentation/user/invoking.itely: add example to File structure.
5539 * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
5540 examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
5542 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5544 * ly/paper-defaults.ly: typo.
5546 * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
5547 set_parent() for parentheses. This will make it show up in bbox
5550 * scm/output-lib.scm (parentheses-item::print): rewrite, using
5551 ly:grob-common* functions.
5553 * lily/grob-scheme.cc (LY_DEFINE):
5554 ly:grob-common-refpoint-of-array: new function
5555 ly:grob-common-refpoint: new function
5556 ly:grob-relative-coordinate: new function
5558 * lily/instrument-name-engraver.cc (process_music): use
5559 Text_interface::is_markup(). This fixes \markup on instrument names.
5561 * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
5564 * lily/slur.cc (print): idem.
5566 * lily/tie.cc: add line-thickness for ties.
5568 2006-02-10 Jan Nieuwenhuizen <janneke@gnu.org>
5570 * scm/output-svg.scm: Document diversion from GNU coding standards
5571 as a workaround for a bug in Microsoft Internet Explorer.
5573 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5575 * lily/instrument-name-engraver.cc (process_music): use
5576 is_markup() iso. is_string()
5578 * Documentation/user/changing-defaults.itely (Module): add menu entry.
5580 * lily/percent-repeat-engraver.cc (process_music): only look at
5581 main_part_ for % repeats.
5583 * lily/stem-tremolo.cc (get_beam_translation): new function.
5584 (calc_slope): new function.
5585 (height): don't use real slope.
5587 2006-02-10 Jürgen Reuter <reuter@ipd.uka.de>
5589 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
5590 new connect-to-neighbor, control-points and staff-padding
5591 properties to make ligature brackets showing up again.
5593 2006-02-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
5595 * VERSION: release 2.7.33
5597 * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
5600 * Documentation/user/changing-defaults.itely (Difficult tweaks):
5601 remove applyOutput example.
5602 (Objects connected to the input): document \tweak, \parenthesize
5604 * lily/relocate.cc (prefix_relocation): allow "current"
5605 iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
5606 changing VERSION in a lily tree less painful.
5608 * input/regression/parenthesize.ly: new file.
5610 * scm/output-lib.scm (parenthesize-element): new function.
5612 * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
5614 * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
5616 * lily/accidental-engraver.cc (make_standard_accidental): reroute
5617 cause: accidentals are caused by note heads, not note events.
5619 2006-02-08 Graham Percival <gpermus@gmail.com>
5621 * darwin.patch: small patch from Erlend, thanks!
5623 * Documentation/user/basic-notation.itely: add stem-neutral example.
5625 * Documentation/user/putting.itely: clarifications.
5627 2006-02-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
5629 * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
5630 note, add more guidelines to what should go into NEWS.
5632 * input/sakura-sakura.ly: document how to override font.
5634 * input/regression/font-family-override.ly: doc -dshow-available-fonts
5636 2006-02-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
5638 * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
5640 2006-02-08 Jan Nieuwenhuizen <janneke@gnu.org>
5642 * scripts/convert-ly.py (lilypond_version_re_str): Move from
5643 convertrules. Add explicit grouping, needed for python2.2.
5645 2006-02-07 Jan Nieuwenhuizen <janneke@gnu.org>
5647 * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
5649 2006-02-07 Graham Percival <gpermus@gmail.com>
5651 * Documentation/user/global.itely: fix line-width in (text) docs.
5653 * Documentation/user/lilypond-book.itely: same.
5655 2006-02-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
5657 * VERSION (PACKAGE_NAME): release 2.7.32
5659 * Documentation/topdocs/NEWS.tely (Top): document new variable
5662 * flower/include/array.icc (Message): remove file.
5664 * flower/include/std-vector.hh: make sure vsize and VPOS are
5665 defined for binary_search_bounds().
5667 * flower/std-string.cc (std): add to_string(long unsigned).
5669 * configure.in (gui_b): excise std_string option.
5670 (gui_b): excise std_vector option.
5672 * flower/string.cc (Module): excise flower array & string
5674 * flower/include/std-string.hh: excise flower string.
5676 * {ly,lily,scm}/*: use dashes in \paper and \layout variables
5678 * python/convertrules.py (lilypond_version_re_str): require
5679 only numbers and dots in \version string.
5681 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5683 * lily/system-start-delimiter.cc (print): allow style = text too.
5685 * lily/system-start-delimiter-engraver.cc
5686 (acknowledge_system_start_text): new function, also add add to
5687 support of system-start-text (instrument names). This fixes
5688 instrument names on piano staves.
5690 * lily/instrument-name-engraver.cc: rewrite. Use
5691 system-start-delimiter approach. This save memory and cpu.
5693 * scm/define-grobs.scm (all-grob-descriptions): remove
5694 instrument-name from break-alignment.
5696 * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
5698 2006-02-05 Jan Nieuwenhuizen <janneke@gnu.org>
5700 * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
5703 * configure.in (std_vector): On by default.
5705 * lily/include/font-metric.hh:
5706 * lily/include/tfm-reader.hh:
5707 * lily/include/spanner.hh: Use unsigned for indices and sizes.
5710 * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
5712 2006-02-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
5714 * VERSION (PACKAGE_NAME): 2.7.31
5716 * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
5717 EPS edge at 0, but take minimum with left-overshoot. This fixes
5718 cut off system start delims.
5720 * lily/instrument-name-engraver.cc (stop_translation_timestep):
5721 hack: add to axis group if not added yet. This fixes hara kiri'd
5724 * lily/hara-kiri-group-spanner.cc
5725 (force_hara_kiri_in_y_parent_callback): fix signatures.
5727 * lily/hairpin.cc (print): check next hairpin to see whether or
5728 not to be continuing.
5730 2006-02-04 Jan Nieuwenhuizen <janneke@gnu.org>
5732 * Remove trailing whitespace from makefiles.
5734 * flower/include/std-vector.hh: Add binary_search_bounds workaround
5737 * .cvsignore: Add out*, out-www, config-*. Remove lots of cruft.
5739 * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
5741 * config.hh.in (HAVE_STL_DATA_METHOD): Add.
5743 * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
5745 * configure.in: Use it.
5747 2006-02-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
5749 * scm/music-functions.scm (pitch-of-note): new function.
5751 * ly/music-functions-init.ly: add \octave and \addquote
5753 * lily/parser.yy (music_function_chord_body): softcode \octave.
5754 (lilypond_header): softcode \addquote
5756 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5758 * flower/include/std-vector.hh[STD_VECTOR]: Do not include
5759 array.hh, parray.hh at all. Getting ready to flip the
5762 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5764 * lily/source-file.cc (file::get_line): Help binary_search_bounds
5767 * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
5769 2006-02-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
5771 * flower/include/array.hh: typo.
5773 2006-02-02 Graham Percival <gpermus@gmail.com>
5775 * Documentation/user/advanced-notation.itely: doc "\#" in text.
5777 2006-02-03 Jan Nieuwenhuizen <janneke@gnu.org>
5779 * flower/include/pqueue.hh: Derive from std::vector.
5781 * flower/include/parray.hh: Conform to std::vector interface.
5784 2006-02-02 Graham Percival <gpermus@gmail.com>
5786 * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
5788 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5790 * flower/file-path.cc (is_file): remove if 0 section.
5792 * buildscripts/pfx2ttf.fontforge (err): robustness fix for
5793 selecting afii61352.
5795 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5797 * flower/include/std-vector.hh (boundary): Oops, reverse.
5799 * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5800 remove superfluous `d'.
5802 * flower/include/std-vector.hh (boundary, top): Detach from class.
5803 Remove empty vector shell.
5805 * flower/include/array.hh (reverse, swap): Detach from class.
5808 * flower/include/std-vector.hh
5809 * flower/include/array.hh (concat): Globally change to insert ().
5812 * flower/include/std-vector.hh
5813 * flower/include/parray.hh
5814 * flower/include/array.hh (elem, elem_ref): Globally replace by
5817 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5819 * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5821 * python/convertrules.py (FatalConversionError.sub_cxx_id):
5822 anticipate on identifier substitutions.
5824 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5826 * flower/include/std-vector.hh (insert): Remove, replace by
5827 std::vector interface. Update callers.
5829 * flower/include/array.icc (insert): Change signature to
5830 match std::vector interface.
5832 * flower/include/array.icc (vector_sort): Bugfix.
5834 2006-02-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
5836 * lily/parser.yy (output_def_head_with_mode_switch): new
5837 production. Result: dashes and underscores may be used in the
5840 * lily/lexer.ll: add DASHED_WORD. Accept in INITIAL mode.
5842 * python/convertrules.py (conv): oops. One slash too much.
5844 2006-02-02 Jan Nieuwenhuizen <janneke@gnu.org>
5846 * flower/include/std-vector.hh (sort): Remove, replace by
5847 ::vector_sort. Update callers.
5849 * flower/include/std-vector.hh (slice): Remove. Update callers.
5852 * flower/test-std.cc (vector_sort): New test.
5854 2006-02-01 Graham Percival <gpermus@gmail.com>
5856 * Documentation/user/putting.itely: fixes from Erik.
5858 2006-02-01 Jan Nieuwenhuizen <janneke@gnu.org>
5860 * flower/test-std.cc: Add simple unit test for vector migration.
5862 * stepmake/stepmake/test*: Unit test support.
5864 * flower/include/std-vector.hh (del): Remove. Use erase (),
5867 * flower/include/array.hh (begin, end): Add.
5870 2006-02-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
5872 * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5873 std::string not String.
5875 * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5878 * lily/prob.cc (Prob): copy type_ too.
5880 * lily/lily-guile.cc (mangle_cxx_identifier): new
5881 function. Class_bla::foo_bar_[px] ->
5882 ly:class-bla::foo-bar[?!]. Changes throughout
5884 2006-01-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
5886 * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5888 * lily/beam.cc (calc_direction): take dir from visible stem in
5891 2006-01-31 Jan Nieuwenhuizen <janneke@gnu.org>
5893 * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5894 Fix -1, >=0 boundary checks for unsigned vsize.
5896 * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5897 loop for unsigned vsize.
5899 * configure.in (--enable-std-vector): New option.
5900 (--enable-std-string): On by default.
5902 * flower/include/std-vector.hh: New file. Enable switch to
5903 std::vector, update client code.
5905 2006-01-30 Graham Percival <gpermus@gmail.com>
5907 * scm/document-translation.scm: clarify "this context is also
5908 known as". Thanks, Werner!
5910 * Documentation/user/putting.itely: small fixes from Don Blaheta.
5912 * Documentation/user/invoking.itely: small fix from Don.
5914 2006-01-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
5916 * scm/lily.scm (define-scheme-options): rename option
5917 preview-include-book-title to book-title-preview
5918 (define-scheme-options): move force-eps-font-include (from paper
5919 block) to eps-font-include -d option.
5921 * VERSION (PATCH_LEVEL): release 2.7.30
5923 * input/bach-schenker.ly (staffPiano): new file.
5925 * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5927 * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5930 * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5932 * ps/lilyponddefs.ps: remove start-system, stop-system,
5933 start-page fluff. This saves putting { } code on the stack, fixing
5934 stack overflows when including EPS files.
5936 2006-01-29 Graham Percival <gpermus@gmail.com>
5938 * Documentation/user/putting.itely: minor fixes (comments on -devel).
5940 2006-01-29 Nicolas Sceaux <nicolas.sceaux@free.fr>
5942 * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5944 2006-01-28 Graham Percival <gpermus@gmail.com>
5946 * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5948 2006-01-28 Jan Nieuwenhuizen <janneke@gnu.org>
5950 * input/mutopia/claop.py: Update.
5952 2006-01-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
5954 * input/regression/completion-heads.ly (texidoc): fix.
5956 * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5958 * lily/tie-formatting-problem.cc
5959 (set_ties_config_standard_directions): use abs iso fabs for ints.
5961 * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5963 * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5964 little less than noteheight, to prevent overlaps in chords.
5966 * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5967 head, and fudge stem-attachment.
5969 * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5971 * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5973 2006-01-27 Jan Nieuwenhuizen <janneke@gnu.org>
5975 * lily/main.cc (main): Debugging aid: catch exceptions.
5977 * flower/std-string.cc (to_string): Robustification. Fixes midi
5978 output with std::string.
5980 2006-01-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
5982 * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5984 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
5986 * Fix -DSTRING_UTILS_INLINED.
5988 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
5990 * VERSION (PATCH_LEVEL): release 2.7.29
5992 * lily/relocate.cc (setup_paths): mingw uses std string too.
5994 * lily/*.cc: various fixes for substr(ARG).
5996 * lily/sustain-pedal.cc (print):
5998 * flower/file-name.cc (slashify): use std strings.
6000 * flower/string-convert.cc: remove publib.h
6002 * scm/define-markup-commands.scm (verbatim-file): new markup
6003 command \verbatim-file
6005 * Documentation/topdocs/NEWS.tely: fixup URLs
6007 * input/regression/alignment-vertical-manual-setting.ly (Module):
6010 * lily/align-interface.cc (align_elements_to_extents): overwrite
6011 translations with numbers in alignment-offsets from left bound
6013 * scm/page.scm (make-page-stencil): read X-offset from paper-system.
6014 (page-translate-systems): new function: take into account Y-offset.
6016 * Documentation/topdocs/NEWS.tely (Top): document new features.
6018 * input/regression/page-layout-manual-position.ly (Module): new
6021 2006-01-26 Jan Nieuwenhuizen <janneke@gnu.org>
6023 * flower/file-path.cc (path::parse_path): Oops.
6025 * Finish std::string interface. For now, use std:: marker
6026 throughout for easy s/r.
6028 2006-01-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
6030 * Documentation/user/putting.itely (Score is a single musical
6032 (Score is a single musical expression): more typos.
6034 * scm/page.scm (annotate-space-left): thinko.
6035 (annotate-page): more thinkos.
6037 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6039 * scm/layout-page-layout.scm (write-page-breaks): record tweaks
6040 for different \score blocks separately.
6041 (post-process-pages): put write-page-layout into paper block.
6043 * lily/output-def.cc (get_parser): new file.
6045 * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
6048 * lily/include/output-def.hh (class Output_def): add parser_ member.
6050 * input/regression/page-layout-twopass.ly (Module): new file.
6052 * scm/lily.scm: remove cpp hack.
6054 * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
6056 2006-01-25 Jan Nieuwenhuizen <janneke@gnu.org>
6058 * GNUmakefile.in (c-clean): New target.
6060 * flower/include/std-string.hh: String/std::string compatibility:
6061 Use NPOS for `not found' (iso -1), use ssize for length () and pos
6064 * flower/rational.cc:
6065 * flower/include/rational.hh:
6068 * flower/include/offset.hh:
6070 * flower/interval.cc:
6071 * flower/include/interval.hh:
6073 * flower/string-convert.cc:
6074 * flower/include/string-convert.hh: Use std::string [interface].
6077 2006-01-25 Heikki Junes <hjunes@cc.hut.fi>
6079 * Documentation/index.html.in: clean up.
6081 2006-01-25 Graham Percival <gpermus@gmail.com>
6083 * Documentation/user/putting.itely: another new untested doc section.
6085 2006-01-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6087 * scm/layout-page-layout.scm (write-page-breaks): write
6088 \spacingTweaks #ALIST. Handle grace timing.
6090 * scm/: more imports.
6092 * scm/page.scm (make-page): add footer/header.
6093 (annotate-space-left): revise: only take page argument.
6094 (layout->page-init): new function.
6096 * scm/layout-page-layout.scm (write-page-breaks): preliminary
6097 version of the system/spacing/linebreak hack writing to the output
6099 * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
6102 * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
6105 2006-01-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
6107 * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
6109 * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
6111 * scm/layout-page-layout.scm (optimal-page-breaks): move all page
6112 handling to page.scm
6114 * lily/prob-scheme.cc (LY_DEFINE): new file.
6115 (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
6117 * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
6120 * lily/music.cc (derived_mark): derive Music from Prob.
6122 * lily/paper-system.cc (LY_DEFINE): derive from Prob.
6124 * lily/prob.cc (Module): Implement Prob (Property Object), object
6125 with shared and r/w property alists.
6127 * lily/include/prob.hh (Module): new file. Declare Prob.
6129 * flower/string.cc: remove is_empty().
6131 * flower/include/string.hh (class String): remove String:: qualifier.
6133 * buildscripts/analyse-cxx-log.py: new file. Read compile log to
6134 substitute appropriate functions.
6136 * flower/include/string.hh (class String): remove to_str0 and
6137 is_empty(). S&R everywhere.
6139 2006-01-23 Graham Percival <gpermus@gmail.com>
6141 * Documentation/user/basic-notation.itely: add hairpin
6142 after-linebreak tweak to commonprop.
6144 * Documentation/user/putting.itely: added two new sections.
6146 2006-01-23 Jan Nieuwenhuizen <janneke@gnu.org>
6148 * flower/international.cc:
6149 * flower/include/international.hh:
6151 * flower/getopt-long.cc:
6152 * flower/include/getopt-long.hh: Use std::string [interface].
6155 * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
6157 * stepmake/stepmake/executable-rules.make: Add dependency on
6160 2006-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
6162 * flower/file-path.cc:
6163 * flower/include/file-path.hh: Use std::string [interface].
6166 * flower/direction.cc:
6167 * flower/axis.cc: Unused. Remove.
6169 * configure.in (--enable-std-string): New option.
6171 * flower/std-string.cc:
6172 * flower/include/std-string.hh: New file.
6174 * flower/file-name.cc[STD_STRING]:
6175 * flower/include/file-name.hh[STD_STRING]: Use it. Update callers.
6177 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6179 * scm/output-svg.scm (placebox): no GNU coding standards in SVG output.
6181 * scm/define-markup-commands.scm (with-dimensions):
6182 with-dimensions markup command.
6184 * input/test/font-table.ly: use it.
6186 * lily/open-type-font.cc (glyph_list): new function.
6188 * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
6190 * lily/ttf.cc: remove ly:font-glyph-list scheme function
6192 2006-01-22 Nicolas Sceaux <nicolas.sceaux@free.fr>
6194 * ly/music-functions-init.ly (parallelMusic): new music function
6195 for parallel music entry.
6197 * scm/define-music-properties.scm (all-music-properties): new
6198 'void music property
6200 * scm/music-functions.scm (ly:music-message): make public, to be
6201 used in music function definitions
6203 * scm/lily-library.scm (collect-music-for-book): discard music
6204 when the 'void property is set.
6206 2006-01-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
6208 * lily/ttf.cc (LY_DEFINE): store name before destroying face.
6210 * mf/GNUmakefile: idem.
6212 * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
6214 * stepmake/bin/install.py (dest): Only chmod/chown just created directories
6216 * Documentation/user/notation-appendices.itely (The Feta font):
6219 * input/test/font-table.ly: new file. Generate font table within lily.
6221 * Documentation/user/notation-appendices.itely (The Feta font):
6222 use new font-table.ly file.
6224 * stepmake/stepmake/install-out-targets.make
6225 (local-install-outfiles): only create directory if
6226 $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
6228 2006-01-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6230 * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
6232 * VERSION (PACKAGE_NAME): release 2.7.28
6234 * scm/framework-ps.scm (write-preamble): use it to pick exactly
6235 the right font from a Mac dfont.
6236 (write-preamble): don't forget directory, only look at files.
6238 This fixes problems with TTF files in dfonts that don't match
6239 their PostScript names.
6241 * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
6242 PS name from TTF font.
6244 * input/regression/tie-manual.ly: document new feature.
6246 * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
6248 * VERSION (MY_PATCH_LEVEL): bump to .28
6250 * Documentation/user/basic-notation.itely (Ties): add tie examples
6253 * lily/tie-formatting-problem.cc (score_ties_configuration):
6254 symmetry penalties for outer ties.
6256 2006-01-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6258 * lily/tie-formatting-problem.cc (generate_configuration)
6259 (set_manual_tie_configuration): skip non-pair manual
6260 tie-configuration, so you can set individual ties as
6262 #'tie-configuration = #'((7 . 1) #t (-3 . 1))
6264 * input/regression/tie-chord.ly: use generateTiePattern to
6267 * lily/tie-formatting-problem.cc (peak_around): new function.
6268 (score_configuration): use sliding criterion for staff line collisions.
6269 (score_configuration): idem for dot collisions.
6270 (generate_configuration): use separate stem_gap for gap to stem.
6272 * lily/include/tie-formatting-problem.hh (struct Tie_details):
6273 separate penalty factors for x and y distance.
6274 (struct Tie_details): separate penalties for tip and center line collisions.
6276 2006-01-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6278 * lily/tie-formatting-problem.cc (generate_configuration): make
6279 large ties avoid stafflines in the horizontal section.
6280 (score_configuration): use softcoded penalties
6281 (score_aptitude): idem.
6283 * lily/tie-helper.cc (from_grob): softcode tie details
6285 * lily/staff-symbol-referencer.cc (on_staff_line): new function
6287 * lily/staff-symbol-referencer.cc (on_line): rename from
6290 2006-01-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6292 * ly/music-functions-init.ly: remove duplicate tag.
6294 * lily/include/*.hh: GCC 4.1 fixes.
6296 006-01-16 Erlend Aasland <erlenda@gmail.com>
6298 * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
6300 * scm/define-music-types.scm: fix bug in desc. string
6301 for OverrideProperty
6303 2006-01-15 Erik Sandberg <mandolaerik@gmail.com>
6305 * scripts/lilypond-book.py: bugfix
6307 * scm/define-music-types.scm: fix typos.
6309 2006-01-14 Graham Percival <gpermus@gmail.com>
6311 * Documentation/user/ basic-notation.itely, global.itely,
6312 advanced-notation.itely, instrument-notation.itely: small
6313 additions (bugs and commonly tweaked properties).
6315 2006-01-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
6317 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
6318 detection of mingw build.
6319 (MINGW_BUILD): opps.
6321 2006-01-12 Jan Nieuwenhuizen <janneke@gnu.org>
6323 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
6326 2006-01-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6328 * scm/music-functions.scm (skip->rest): add skip->rest
6330 2006-01-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
6332 * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
6335 * lily/font-config-scheme.cc (LY_DEFINE): also display font and
6336 config dirs. Aids debugging.
6337 (display_config): also display config files.
6339 2006-01-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6341 * VERSION: release 2.7.27
6343 * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
6344 for determining bar size.
6346 * lily/staff-symbol.cc (print): place lines at distance line-positions
6348 * scm/define-grob-properties.scm (all-user-grob-properties): add
6351 * lily/staff-symbol.cc (height): new function.
6353 * input/regression/staff-line-positions.ly: new file.
6355 2006-01-06 Graham Percival <gpermus@gmail.com>
6357 * input/test/add-staccato.ly: remove reference to old file.
6359 2006-01-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6361 * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
6362 lilypond binary too.
6364 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6366 * make/mutopia-rules.make (Module): use LILYPOND_BINARY
6368 2006-01-06 Jan Nieuwenhuizen <janneke@gnu.org>
6370 * scripts/midi2ly.py: Bugfix: Declare datadir.
6372 * make/ly-rules.make:
6373 * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
6374 that seems to be gone). Fixes make web.
6376 * The grand 2005-2006 replace.
6378 * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
6380 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6382 * make/lilypond-vars.make: set LILYPOND_BINARY variable
6383 (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
6384 LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
6385 like -dgs-font-load.
6387 * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
6388 remove absolute path to lilypond binary.
6390 2006-01-05 Pedro Kroeger <kroeger@pedrokroeger.net>
6392 * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
6394 2006-01-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
6396 * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
6398 * mf/GNUmakefile: remove broken dvips map symlink.
6400 2006-01-04 Jan Nieuwenhuizen <janneke@gnu.org>
6403 * configure.in: Cosmetic fixes.
6405 2006-01-04 Mats Bengtsson <mabe@s3.kth.se>
6407 * Documentation/user/music-glossary.tely (Pitch names): Added
6408 Spanish pitch names and durations, thanks to Ernesto Gancedo
6410 2006-01-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
6412 * scm/lily.scm (define-scheme-options): use quasi-quote for option
6413 init. Fixes verbose printing of .scm files.
6415 * stepmake/aclocal.m4: add spaces before - options.
6417 2006-01-03 Jan Nieuwenhuizen <janneke@gnu.org>
6419 * lily/relocate.cc (setup_paths): Bugfix: do not store result
6420 of path search in local block variable.
6422 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6424 * configure.in (NCSB_DIR): --enable-ncsb-dir
6425 (LINK_GXX_STATICALLY): denko.
6427 * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH.
6429 * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option.
6430 use locate to find c059033l.pfb.
6432 2006-01-02 Jan Nieuwenhuizen <janneke@gnu.org>
6434 * lily/tie-formatting-problem.cc
6435 (problem::generate_base_chord_configuration): Use my_round (was
6438 * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
6439 do not invoke mbrtowc.
6441 * lily/relocate.cc (setup_paths): Add more debugging verbosity.
6443 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6445 * scm/lily.scm (lilypond-all): oops. remove debugging hack.
6447 2005-01-02 Heikki Junes <hjunes@cc.hut.fi>
6449 * Documentation/user/invoking.itely (svg): revise.
6451 2006-01-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
6453 * lily/lexer.ll: use sourcefilename iso. renameinput.
6455 2006-01-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
6457 * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
6458 <PostScriptName>.ttf instead of c059XXXttf.
6460 * lily/program-option.cc (LY_DEFINE): special support for
6461 --verbose, so it works before option init too.
6463 * mf/GNUmakefile (local-install): oops.
6465 * lily/lyric-hyphen.cc (print): oops.
6467 * buildscripts/pfx2ttf.fontforge: new file.
6469 * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
6470 ($(outdir)/%.ttf): new rule.
6472 * scm/define-grobs.scm (all-grob-descriptions): add font-interface
6475 * lily/lyric-hyphen.cc (print): multiply hyphen height by
6478 2005-12-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
6480 * VERSION: release 2.7.26
6482 * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
6484 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6486 * lily/font-config.cc (init_fontconfig): verbosity.
6488 * THANKS: add Muziekacademie Lede.
6490 * scripts/musicxml2ly.py (print_voice_definitions): new function
6491 (print_score_setup): new function
6492 (convert): read part definition to output staves properly.
6494 * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
6497 * python/musicexp.py (Output_printer.__init__): use _ in data
6499 (Output_printer.unformatted_output): new function: no formatting,
6501 (Duration.get_length): remove isinstance() checks for
6502 Output_printer everywhere.
6504 * input/regression/lyrics-bar.ly (texidoc): add
6505 Separating_line_group_engraver.
6507 2005-12-29 Jan Nieuwenhuizen <janneke@gnu.org>
6509 * lily/relocate.cc (framework_relocation): New function,
6510 factored from set_relocation ().
6511 (prefix_relocation): Rename from set_relocation ().
6512 (setup_paths): Use it.
6514 2005-12-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
6516 * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
6517 numbers. Patch by Erlend Aasland.
6519 2005-12-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
6521 * lily/font-config.cc (init_fontconfig): print warning if cache
6522 file is not existant.
6524 * lily/main.cc: don't use #ifdef but #if
6526 2005-12-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
6528 * lily/grob-property.cc (internal_set_property): don't abort on
6529 calculation-in-progress.
6531 * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
6533 * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
6534 connect-to-neighbor property not connect-to-other
6536 * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
6537 (LY_DEFINE): oops. don't forget protection.
6539 * flower/parse-afm.cc (Module): strip AFM handling completely.
6541 * lily/stencil-expression.cc: idem.
6543 * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
6545 * lily/function-documentation.cc (ly_add_function_documentation):
6546 use static member iso. Protected_scm
6548 * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
6550 * config.make.in (prefix): remove HAVE_KPATHSEA_SO
6552 2005-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
6554 * lily/relocate.cc (set_env_dir): New function.
6555 (set_relocation): Use it to fix setting PANGO_PREFIX.
6557 2005-12-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
6559 * input/regression/stem-direction-context.ly: remove rest.
6561 * lily/melody-engraver.cc (process_music): restart for bar lines.
6562 (acknowledge_slur): restart for slurs.
6564 2005-12-27 Heikki Junes <hjunes@cc.hut.fi>
6566 * Documentation/user/invoking.itely: describe how to view SVG
6567 output using Inkscape which replace embedded fonts with OTF fonts.
6569 2005-12-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
6571 * lily/relocate.cc (set_relocation): set PANGO_PREFIX
6573 2005-12-23 Jan Nieuwenhuizen <janneke@gnu.org>
6575 * lily/melody-engraver.cc (class Melody_engraver): Remove lying
6578 2005-12-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
6580 * VERSION (PACKAGE_NAME): release 2.7.25
6582 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6584 * input/regression/stem-direction-context.ly: new file.
6586 * lily/relocate.cc (set_relocation): add PANGO_PREFIX
6588 * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
6591 * ly/engraver-init.ly: add Melody_engraver
6593 * lily/beam.cc (calc_direction): use default-direction
6594 iso. get_default_direction()
6596 * scm/define-grob-properties.scm (all-user-grob-properties): add
6597 default-direction property.
6599 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
6601 * lily/stem.cc (calc_default_direction): remove
6602 Stem::get_default_direction, use default-direction with callback
6605 * lily/melody-spanner.cc (calc_neutral_stem_direction):
6607 * lily/melody-engraver.cc: new file. Acknowledge stems for
6608 interpolated stem directions.
6610 * lily/melody-spanner.cc: new file. Interpolate stem directions.
6612 * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
6614 * lily/slur-configuration.cc (fit_factor): more robust check for
6615 point in curve X-extent.
6617 * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
6618 (outside_slur_callback): check for 'outside avoidance.
6620 * lily/slur-configuration.cc (score_extra_encompass): don't use
6621 bound->column() == avoid->column() for checking extents, as this
6622 doesn't work for accidentals.
6624 * lily/slur-engraver.cc (acknowledge_extra_object): remove
6625 DynamicText hardcoding.
6627 * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
6628 crash if bound stem is NULL
6630 * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
6633 2005-12-22 Graham Percival <gpermus@gmail.com>
6635 * scm/define-markup-commands.scm: typo. @code{\raise}
6638 * darwin.patch: now used again, includes a
6639 required patch from fink.
6641 2005-12-21 Heikki Junes <hjunes@cc.hut.fi>
6643 * po/TODO: mention gtranslator along with kbabel.
6644 * po/fi.po: update translations.
6646 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6648 * lily/relocate.cc (setup_paths): Bugfix.
6650 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6652 * lily/slur-configuration.cc (score_extra_encompass): don't use
6653 "avoid" choice for avoid-slur.
6655 * stepmake/bin/install.py (dest): don't create existing dir.
6657 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6659 * stepmake/bin/install.py: Remove file before copying.
6662 * stepmake/aclocal.m4: Do not substitute INSTALL.
6664 2005-12-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
6666 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6667 depend on link-tree.
6669 * lily/relocate.cc (setup_paths): only check path for non-absolute
6670 dir without directory part.
6672 * flower/file-name.cc (is_absolute): new method.
6673 (is_absolute): check root_ too.
6675 2005-12-21 Jan Nieuwenhuizen <janneke@gnu.org>
6677 * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
6678 relocation code. Oops, don't comment out too much.
6680 * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
6683 * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h. Fixes mingw
6686 2005-12-20 Jan Nieuwenhuizen <janneke@gnu.org>
6688 * .cvsignore: Add install-sh.
6690 * autogen.sh (srcdir): Typo.
6692 2005-12-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
6694 * autogen.sh (srcdir): urg. Touch install-sh.
6696 * stepmake/bin/install-sh (Module): remove.
6698 * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
6700 * lily/include/relocate.hh: new file.
6702 * lily/relocate.cc: new file. Contain relocation logic.
6704 * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
6705 (main): read LILYPOND_VERBOSE as the first thing.
6707 * stepmake/aclocal.m4: remove INSTALL variable.
6709 * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
6710 separate target for making font symlinks.
6711 (documentation-dir): use $(if $(findstring )) for switching off
6714 * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
6715 something if DOCUMENTATION is no.
6717 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6719 * VERSION: release 2.7.24
6721 * lily/script-column-engraver.cc (stop_translation_timestep):
6722 delay adding to script-column.
6724 * lily/tuplet-bracket.cc (print): suicide if no control-points.
6726 * python/convertrules.py (conv): rule for number-visibility
6728 * lily/slur-configuration.cc (score_extra_encompass): different
6729 distance measure for avoid and inside avoidance.
6730 (score_extra_encompass): use 1/(distance+eps) as penalty.
6732 * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
6733 encompass objects for generating slur curves.
6735 * lily/slur.cc: use details iso. slur-details property.
6737 * input/regression/slur-tuplet.ly: new file.
6739 * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.
6741 * flower/include/offset.hh (class Offset): new operator /=
6743 * lily/tuplet-number.cc (print): new file, new interface.
6745 * scm/define-grob-properties.scm (all-user-grob-properties):
6746 remove number-visibility property.
6748 * lily/tuplet-bracket.cc (calc_control_points): new function
6749 (calc_connect_to_neighbors): new function.
6750 (print): remove text handling for tuplet numberdef.
6752 * lily/tuplet-engraver.cc (struct Tuplet_description): create
6755 * lily/lily-guile.cc (robust_scm2booldrul): new function
6757 * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
6759 * lily/tuplet-bracket.cc (calc_position_and_height): use
6760 staff-padding to control whether tuplet brackets are over staves.
6762 * lily/grob.cc (suicide): clear dim_caches_.
6764 * lily/dimension-cache.cc (clear): new function.
6766 * lily/grob.cc (extent): swap order of min-extent and extent
6767 calculations. This fixes hara kiri staves.
6769 2005-12-19 Jan Nieuwenhuizen <janneke@gnu.org>
6771 * lily/main.cc: Nitpick: relocation is not based on path, but on
6772 directory (location).
6774 2005-12-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
6776 * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
6778 * stepmake/stepmake/install-targets.make (local-uninstall): idem.
6780 * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
6782 * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
6784 * stepmake/stepmake/generic-vars.make (Module): idem.
6786 * stepmake/stepmake/executable-targets.make (default): use it.
6788 * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
6790 * make/GNUmakefile: don't install make rules.
6792 * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
6794 (prepend_env_path): more verbosity.
6796 2005-12-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
6798 * GNUmakefile.in: add dir argument for find command.
6800 * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6801 fixes weird line numbers for point & click.
6803 * lily/source-file.cc (get_counts): init line/column/char counts.
6805 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6807 * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6809 2005-12-16 Graham Percival <gpermus@gmail.com>
6811 * Documentation/user/basic-notation.itely, advanced-notation.itely:
6812 minor fixes from Fredric. Thanks!
6814 2005-12-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
6816 * ly/music-functions-init.ly: add \bar and \clef music function
6818 * lily/lily-lexer.cc: idem.
6820 * lily/parser.yy (FIXME): remove BAR and CLEF.
6822 2005-12-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
6824 * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6826 * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6827 function arguments too
6829 * lily/main.cc (set_relocation): new function.
6831 * scripts/musicxml2ly.py (convert): add \version
6833 * lily/tie.cc: remove get_default_attachments()
6835 * VERSION (PACKAGE_NAME): release 2.7.23
6837 * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6838 ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6840 * Documentation/topdocs/NEWS.tely (Top): document new feature.
6842 * lily/tie-formatting-problem.cc (score_ties): new function
6843 (get_variations): new function. Try flipping dirs for collisions.
6844 (generate_optimal_chord_configuration): new function. 1-opt search
6845 for better configuration.
6847 * lily/tie-configuration.cc: new file.
6849 * lily/tie.cc: junk Tie::get_configuration()
6851 * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6852 (score_ties_configuration): new function.
6853 (generate_ties_configuration): new function.
6854 (generate_base_chord_configuration): new function.
6855 (set_ties_config_standard_directions): Move body from tie-column-format.cc
6856 (set_manual_tie_configuration): Move body from tie-column-format.cc
6858 * input/regression/tie-dot.ly: new file.
6860 * lily/tie-formatting-problem.cc (score_configuration): score
6863 * lily/tie-helper.cc (get_transformed_bezier): new function
6865 * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6867 * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6868 -undefined suppress iso. -framework Python
6870 * scm/define-grobs.scm (all-grob-descriptions): set
6871 springs-and-rods (thanks Joe Neeman!)
6873 2005-12-12 Nicolas Sceaux <nicolas.sceaux@free.fr>
6875 * input/no-notation/display-lily-tests.ly (test):
6876 * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6877 changed from \tag #'(a b) to \tag #'a \tag #'b
6879 2005-12-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
6881 * Documentation/topdocs/NEWS.tely: strip out-www.
6883 * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6885 * config.make.in (AR): add AR and RANLIB
6887 * flower/libc-extension.cc: include cassert
6889 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6892 2005-12-11 Graham Percival <gpermus@gmail.com>
6894 * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6896 * stepmake/stepmake/python-modules-vars.make: define
6897 SHARED_FLAGS for OSX. Thanks Johannes Schindelin!
6899 * THANKS: added Johannes Schindelin.
6901 2005-12-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
6903 * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6905 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6906 Span_arpeggio_engraver, add Tweak_engraver to Score context.
6908 * lily/parser.yy: reorganize file layout.
6910 * ly/music-functions-init.ly: add tweak music function.
6912 * lily/grob-info.cc (ultimate_music_cause): new function:
6913 recursively lookup causes.
6915 * lily/parser.yy (chord_body_element): allow music functions for
6916 post-events, allow music functions for chord elements.
6918 * lily/font-config-scheme.cc (display_fontset): add cast.
6920 * python/convertrules.py (FatalConversionError.sub_syms): \tag
6921 #'(a b) -> \tag #'a \tag #'b rule.
6923 * python/musicexp.py (Output_printer.dump_version): new function
6925 2005-12-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
6927 * lily/parser.yy (FIXME): remove \tag
6928 (FIXME): remove tag_music() function.
6930 * lily/lily-lexer.cc: remove \tag
6932 * ly/music-functions-init.ly: define music-function "tag"
6934 * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6936 2005-12-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
6938 * VERSION (PATCH_LEVEL): release 2.7.22
6940 * input/regression/lyric-hyphen-retain.ly: renew.
6942 * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6945 * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6946 iso. minimum-length property for rods.
6948 * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6949 LyricSpace item to keep lyrics spaced apart.
6951 * ly/engraver-init.ly: remove Separating_line_group_engraver
6953 * Documentation/user/music-glossary.tely: do setfilename before
6956 2005-12-07 Heikki Junes <hjunes@cc.hut.fi>
6958 * Documentation/user/lilypond-book.itely: use `,´ after xref:
6959 See xref documentation, for example.
6961 2005-12-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
6963 * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6964 pending_skip iso. ly_voice[-1]
6965 (main): add if __main__ for debugging.
6967 * python/musicxml.py (Accidental.__init__): new class.
6969 * scripts/musicxml2ly.py (progress): new function
6970 (musicxml_key_to_lily): don't barf on modeless keys.
6971 (create_skip_music): new function.
6972 (musicxml_spanner_to_lily_event): new function. Handle beams too.
6973 (musicxml_note_to_lily_main_event): new function.
6975 * python/musicexp.py (Music.__init__): add comment field.
6976 (NestedMusic.append): new routine.
6977 (SequentialMusic.print_ly): print comment.
6978 (ArpeggioEvent.ly_expression): new class
6979 (BeamEvent.ly_expression): new class
6980 (NoteEvent.__init__): support for cautionary/forced accs.
6982 * lily/lookup.cc (slur): normal order for array loop.
6984 * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6987 * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6990 2005-12-06 Erik Sandberg <mandolaerik@gmail.com>
6992 * scm/music-functions.scm: Make phrasing slurs follow voice direction
6994 * scripts/lilypond-book.py: Introduce option
6995 --preserve-line-breaks, for usage with srcltx
6997 2005-12-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
6999 * scm/output-lib.scm (print-circled-text-callback): draw circle
7000 around text using make-circle-markup.
7002 * Documentation/user/*: strip out-www from file names.
7004 2005-12-05 Heikki Junes <hjunes@cc.hut.fi>
7006 * Documentation/user/lilypond.tely (direntry): remove empty lines;
7007 fixes invalid info entry issue with makeinfo 4.8 in debian sid.
7009 2005-12-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
7011 * Documentation/user/GNUmakefile: idem.
7013 * Documentation/user/macros.itexi: strip out-www
7015 * python/rational.py: python 2.3 compat.
7017 * VERSION (PATCH_LEVEL): release 2.7.21
7019 * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
7020 option formatting, lilypond style.
7022 * python/musicexp.py: grab from Ikebana: a library for composing
7023 ly music expressions.
7024 (Output_printer): class for advanced .ly printing.
7027 * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
7028 convert to pythonesque structure.
7030 * python/rational.py: PD rational number class.
7032 * Documentation/user/converters.itely (Invoking musicxml2ly): new node.
7034 2005-12-04 Erik Sandberg <mandolaerik@gmail.com>
7036 * lily/part-combine-iterator.cc: Minor bugfix
7038 * THANKS: Update bughunters
7040 2005-12-02 Werner Lemberg <wl@gnu.org>
7042 * mf/README: Document process for proper mf2pt1 conversion.
7044 * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
7047 * mf/feta-harmonica.mf: Removed. Unused.
7049 2005-12-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7051 * scripts/lilypond-book.py (do_file): fix thinkos.
7053 2005-12-01 Jan Nieuwenhuizen <janneke@gnu.org>
7055 * lily/GNUmakefile ($(outdir)/FlexLexer.h):
7056 ($(outdir)/parser.cc):
7057 ($(outdir)/lexer.cc): Bugfix: depend on config.h.
7059 2005-11-30 Pedro Kröger <kroeger@pedrokroeger.net>
7061 * ly/titling-init.ly (tagline): it should be a space between
7062 "Music engraving by LilyPond" and the version number.
7064 2005-12-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
7066 * VERSION (PACKAGE_NAME): release 2.7.20
7068 2005-11-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
7070 * scm/define-markup-commands.scm (pad-to-box): new markup command.
7072 * scm/define-grobs.scm (all-grob-descriptions): set thickness to
7074 (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
7076 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7078 * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
7080 * kpath-guile/: remove directory
7082 * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
7083 file. Encapsulate kpathsea using commandline tools.
7085 * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
7088 2005-11-29 Mats Bengtsson <mabe@s3.kth.se>
7090 * Documentation/user/advanced-notation.itely (Setting automatic
7091 beam behavior): Correct a few typos. Thanks to David Bobroff.
7093 * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
7094 \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
7096 2005-11-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
7098 * scripts/*.py: gmane address for bugs.
7100 2005-11-28 Pal Benko <benkop@freestart.hu>
7102 * make/ly-rules.make: add -f switch to mv
7104 * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
7106 * lily/bar-line.cc: interpret it
7108 2005-11-28 Jan Nieuwenhuizen <janneke@gnu.org>
7110 * configure.in (--disable-documentation): New switch.
7112 * GNUmakefile.in: Use it.
7114 * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
7116 2005-11-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7118 * scripts/lilypond-book.py (do_file): search chunks for
7121 * GNUmakefile.in: add copy step in between so we can lose the
7122 out-www directories.
7124 2005-11-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
7126 * lily/pango-font.cc (pango_item_string_stencil): put
7127 geometry.width into glyph-string too.
7129 2005-11-26 Nicolas Sceaux <nicolas.sceaux@free.fr>
7131 * scm/define-music-display-methods.scm (RevertProperty):
7132 (OverrideProperty): Use grob-property-path property, a list of
7133 symbols, instead of grob-property, which used to be a single
7135 (BassFigureEvent): a figure can be a plain number, not necessarily a
7138 2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
7140 * VERSION: release 2.7.19
7142 * lily/figured-bass-engraver.cc (process_music): check
7143 figuredBassCenterContinuations first.
7145 * scm/translation-functions.scm (format-bass-figure): make double
7148 * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
7151 * lily/system-start-delimiter-engraver.cc: move from
7152 Nested_system_start_delimiter_engraver, rename
7153 Nested_system_start_delimiter_engraver ->
7154 System_start_delimiter_engraver.
7156 * lily/nested-system-start-delimiter-engraver.cc (from_list): read
7157 bracket type from hierarchy.
7159 2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7161 * lily/rest.cc (y_offset_callback): read staff-position.
7163 * scm/define-grob-properties.scm (all-user-grob-properties): don't
7164 mark after-line-breaking-callback as internal.
7166 * lily/self-aligment-interface.cc: remove self-[XY]-offset.
7168 2005-11-25 Werner Lemberg <wl@gnu.org>
7170 * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
7172 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7174 * stepmake/bin/add-html-footer.py (do_file): add google
7176 * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
7177 staff if first_start_ is true.
7179 2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7181 * scripts/midi2ly.py (split_track): add __repr__ members.
7182 (track_first_item): only return Item if not None. This fixes a
7183 problem when dumping a track that starts with an empty channel.
7185 * python/midi.c: doc module.
7187 2005-11-22 Mats Bengtsson <mabe@s3.kth.se>
7189 * Documentation/user/global.itely (Creating MIDI files): Fix
7190 compilation problem.
7192 2005-11-22 Graham Percival <gpermus@gmail.com>
7194 * Documentation/user/basic-notation.itely: clarify dynamic
7197 * Documentation/user/advanced-notation.itely: add unicode
7198 escape control example, whatever that is. :)
7200 * Documentation/user/global.itely: added "removing dynamics
7203 2005-11-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7205 * VERSION (PATCH_LEVEL): release 2.7.18
7207 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
7208 System_start_delimiter_engraver by
7209 Nested_system_start_delimiter_engraver.
7211 * lily/nested-system-start-delimiter-engraver.cc (struct
7212 Bracket_nesting_node): new class.
7213 (struct Bracket_nesting_group): new class
7214 (struct Bracket_nesting_staff): new class.
7215 (process_music): create hierarchy of grobs. This allows separate
7216 tuning of different SSDs.
7218 * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
7219 (all-grob-descriptions): remove old NestedSystemStartDelimiter.
7221 2005-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7223 * lily/side-position-interface.cc (aligned_side): multiply
7226 * lily/script-engraver.cc (make_script_from_event): allow setting
7229 2005-11-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
7231 * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
7233 * scm/define-grobs.scm (all-grob-descriptions): new grob
7234 NestedSystemStartDelimiter.
7236 * input/regression/system-start-heavy-bar.ly: new file.
7238 * lily/nested-system-start-delimiter-engraver.cc: new file.
7240 * lily/nested-system-start-delimiter.cc: new file.
7242 * input/regression/system-start-nesting.ly: new file.
7244 * scm/define-grobs.scm (all-grob-descriptions): use X side
7245 positioning for positioning braces for nested contexts.
7247 * lily/system-start-delimiter.cc (print): don't divide extent by
7249 (print): use style iso. glyph.
7250 (staff_bracket): translate glyph inside routine already.
7252 2005-11-18 Michael Welsh Duggan <md5i@cs.cmu.edu>
7254 * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
7257 2005-11-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7259 * scm/define-context-properties.scm
7260 (all-user-translation-properties): rename figuredBassFormatter
7261 from newFiguredBassFormatter.
7263 * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
7265 * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
7267 * lily/stem.cc (calc_stem_info): trigger beaming calculation.
7269 * lily/beam.cc (calc_beaming): new function.
7270 (calc_shorten): new function.
7272 * THANKS: add Edward Neeman.
7274 * input/regression/accidental-clef-change.ly: new file.
7276 * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
7278 * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
7280 * lily/clef-engraver.cc (inspect_clef_properties): reset
7281 localKeySignature for clef changes.
7283 2005-11-17 Mats Bengtsson <mabe@s3.kth.se>
7285 * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3
7286 add dummy definition that works in Linux and add information in
7287 INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
7289 * Documentation/user/changing-defaults.itely (Modifying context
7290 plug-ins): Add index for \with.
7292 * Documentation/user/music-glossary.tely (dal segno): Updated
7293 example to version >=2.6.
7295 2005-11-16 Mats Bengtsson <mabe@s3.kth.se>
7297 * Documentation/user/instrument-notation.itely (Printing chord
7298 names): Reorder \chordmode and \repeat in one example.
7300 2005-11-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
7302 * VERSION: release 2.7.17
7304 * Documentation/topdocs/NEWS.tely (Top): add note about
7307 * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
7308 new function. Search region of 3 positions for best tie.
7309 (score_configuration): new function.
7310 (score_aptitude): new function.
7311 (generate_configuration): new function.
7312 (get_configuration): new function.
7313 (Tie_formatting_problem): new function
7315 * input/regression/page-top-space.ly: a6 for page-top-space demo.
7317 * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
7319 * THANKS: add Eduardo Vieira & Ralph Little
7321 * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
7324 * lily/include/tie-formatting-problem.hh (class
7325 Tie_formatting_problem): add Tie_details to
7326 Tie_formatting_problem. Update calling conventions.
7328 * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
7331 * Documentation/user/lilypond.tely: remove musedata2ly entry.
7333 2005-11-16 Jürgen Reuter <reuter@ipd.uka.de>
7335 * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
7336 scm/define-context-properties.scm: Maintenance bugfix: make
7337 ligature brackets work again by removing obsolete ligature
7338 primitive callback push/pop.
7340 * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
7341 not call Tuplet_bracket::calc_direction. Removed obsolete gap
7344 2005-11-15 Jan Nieuwenhuizen <janneke@gnu.org>
7346 * stepmake/aclocal.m4 (depth): Explain why absolute directory is
7347 used and do not call it a path.
7348 (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
7350 2005-11-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
7352 * lily/include/tie-formatting-problem.hh (class
7353 Tie_formatting_problem): new file.
7355 * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
7357 * Documentation/misc/ChangeLog-2.3: new file.
7359 * lily/audio-staff.cc (output): degarianize.
7361 2005-11-14 Jan Nieuwenhuizen <janneke@gnu.org>
7363 * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
7364 Unset PYTHONOPTIMIZE. Fixes install if set.
7366 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7368 * python/convertrules.py (conv): add warning about drums.
7370 * make/stepmake.make: include toplevel-version.make after config.make.
7372 * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
7373 also allow python2.4
7375 * config.make.in (configure-srcdir): remove GXX GCC vars.
7377 * stepmake/aclocal.m4: don't do non-srcdir build with
7378 symlinks. Use inclusion, so the src directory name can be changed.
7380 2005-11-13 Jan Nieuwenhuizen <janneke@gnu.org>
7382 * make/mutopia-vars.make:
7383 * make/ly-vars.make: Use src-wildcard iso wildcard for source
7386 2005-11-13 Werner Lemberg <wl@gnu.org>
7388 * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
7389 but the affected path. This ensures that the (overlapping) outlines
7390 have the same direction, which is a necessary prerequisite for
7391 FontForge's algorithm to remove overlaps.
7394 * mf/feta-haak.mf: Formatting.
7395 (draw_bracket): Slightly modify outline to avoid an unnecessary
7397 Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
7398 them from the affected paths.
7400 2005-11-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
7402 * mf/README: remove xpm / accordion notes.
7404 * lily/tie-column-format.cc (set_chord_outline): add dots into
7405 skyline extents. This fixes tie formatting if the left head has dots.
7407 * lily/tie.cc (get_configuration): only shift tie by a whole staff
7408 space inside the staff.
7409 (get_configuration): shift another position if necessary in case
7412 2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
7414 * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
7415 buildscript-dir iso. $(depth)/buildscripts.
7417 * tex/GNUmakefile (local-uninstall): remove
7418 music-drawing-routines.ps juggling.
7420 * stepmake/stepmake/install-targets.make (local-install-files):
7421 prepend src-dir to install targets.
7423 * lily/system-start-delimiter-engraver.cc
7424 (acknowledge_system_start_delimiter): use
7425 add_offset_callback(). This fixes translation of nested
7428 * lily/grob-closure.cc (add_offset_callback): only encaps in
7429 simple_closure if it's a procedure.
7431 * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
7434 * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
7435 remove-empty where pertinent.
7437 2005-11-12 Graham Percival <gpermus@gmail.com>
7439 * Documentation/user/instrument-notation.itely: added
7440 Cameron Horsburgh's multiple stanzas docs. Thanks!
7442 2005-11-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
7445 ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
7446 make picture in builddir, not srcdir.
7448 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7450 * VERSION: release 2.7.16
7452 * scripts/lilypond-book.py (main): use commands.mkarg () to quote
7455 2005-11-10 Mats Bengtsson <mabe@s3.kth.se>
7457 * Documentation/user/examples.itely (Piano templates): Minor
7458 modification to the Piano centered lyrics example.
7460 2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
7462 * scripts/lilypond-invoke-editor.scm (run-browser): look at
7465 * Documentation/user/point-and-click.itely: simplify p&c
7466 instruction: don't configure firefox. Put lilypond-invoke-editor
7467 in front of the browser.
7469 * scripts/lilypond-invoke-editor.scm (run-editor): new function.
7470 (run-browser): new function.
7472 * lily/parser.yy (Lily_lexer): recognize Book
7474 * lily/book.cc (clone): new function
7476 * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
7478 2005-11-10 Jürgen Reuter <reuter@ipd.uka.de>
7480 * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
7481 Maintenance bugfix: reduce number of font related warnings by
7482 updating naming conventions for glyph-name.
7484 2005-11-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
7486 * scm/define-grobs.scm (all-grob-descriptions): add
7487 rhythmic-grob-interface to TabNoteHead.
7489 * scm/layout-beam.scm (check-quant-callbacks): remove
7492 2005-11-08 Jürgen Reuter <reuter@ipd.uka.de>
7494 * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
7495 alignment of centered divisiones.
7497 * scm/scripts.scm (articulations): Maintenance bugfix:
7498 follow-into-staff -> quantize-position.
7500 * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
7501 plica head in porrectus deminutus.
7503 2005-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
7505 * make/lilypond.fedora.spec.in (Group): add %clean section.
7507 * lily/tuplet-bracket.cc (print): change check: remove bracket if
7508 less then 1/5th of total length.
7509 (print): use gap too. Fixes tupletUp-single-bracket.ly
7511 * scm/music-functions.scm (glue-mm-rest-texts): also put other
7512 events into EventChord. This fixes textspanners on mm rests. Fixes
7515 * lily/side-position-interface.cc (get_axis): read side-axis
7516 (set_axis): set side-axis.
7518 * scm/define-grobs.scm (all-grob-descriptions): add side-axis
7519 properties everywhere.
7521 * lily/spacing-spanner.cc (breakable_column_spacing): add
7522 average-spacing-wishes. Take maximum if not set.
7523 (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
7525 * scm/define-grobs.scm (all-grob-descriptions): add
7526 average-spacing-wishes.
7528 * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
7529 offset callbacks. This fixes alignment for Fingering objects.
7531 * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
7532 space for key - timesig combination.
7534 * input/regression/script-stem-tremolo.ly (Module): new file.
7536 * scm/define-grobs.scm (all-grob-descriptions): decrease distance
7539 * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
7540 Fixes: c-tremolo-script.ly.
7542 * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
7544 * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
7546 * scm/define-grobs.scm (all-grob-descriptions): remove
7547 self-X-offset. Fixes alignment of octavate-8.
7549 * scripts/lilypond-book.py (datadir): look in
7550 LILYPONDPREFIX/share/lilypond/current/
7552 * GNUmakefile.in: symlink current to <VERSION>.
7554 2005-11-07 Pedro Kroger <kroeger@pedrokroeger.net>
7556 * lily/main.cc: eps listed as a backend.
7558 2005-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
7560 * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
7562 2005-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
7564 * lily/include/score.hh (class Score): remove texts_ member.
7566 * lily/beam.cc (set_stem_lengths): force direction callback.
7567 (print): read quantized-positions, so we can force
7568 Beam::set_stem_lengths to occur.
7569 (rest_collision_callback): use common X parent.
7571 2005-11-03 Jan Nieuwenhuizen <janneke@gnu.org>
7573 * flower/file-path.cc (find): Bugfix: Return name of file found.
7575 * lily/main.cc (setup_paths): Bugfix for argv0 logic.
7576 (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
7577 (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
7579 2005-11-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
7581 * flower/offset.cc: idem.
7583 * mf/*.mf: update email address.
7585 * lily/font-config-scheme.cc: new file.
7587 * GNUmakefile.in (SUBDIRS): remove debian/ directory.
7589 * lily/*: cs.uu.nl -> xs4all.nl
7591 * VERSION (PATCH_LEVEL): release 2.7.15
7593 * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
7596 * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
7598 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7600 * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.
7602 * lily/staff-performer.cc (process_music): add audio
7603 elements. This makes MIDI instrument changes work once again.
7605 * lily/main.cc (LY_DEFINE): add gmane address.
7607 * lily/beam.cc: remove calc_positions()
7609 * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
7610 original_ in private scope.
7611 (class Grob): drop pscore_ pointer, change to output_def pointer.
7612 (class Grob): cleanup class definition.
7614 * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
7616 2005-11-02 Jan Nieuwenhuizen <janneke@gnu.org>
7618 * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
7619 absolute. Better diagnostics.
7621 * GNUmakefile.in: Add bin/ to tree and populate with some links.
7622 This makes lilypond run from the build directory using argv0
7623 relocation (without any --prefix or LILYPONDPREFIX setting).
7625 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7627 * Documentation/topdocs/NEWS.tely (Top): document new backend design.
7629 * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
7630 with simple-closure.
7632 * lily/self-aligment-interface.cc (set_align_self): new function
7633 (set_center_parent): new function.
7635 * lily/side-position-interface.cc (set_axis): new function.
7637 * lily/new-fingering-engraver.cc (position_scripts): use drul for
7640 * scm/define-grob-properties.scm (all-user-grob-properties):
7641 remove [XY]-offset-callbacks add [YX]-offset
7643 2005-11-02 Mats Bengtsson <mabe@s3.kth.se>
7645 * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
7646 entry for time signatures after breathing signs. Bug report by
7649 2005-11-01 Jan Nieuwenhuizen <janneke@gnu.org>
7651 * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
7652 not absolute, make it absolute using PATH.
7654 2005-10-28 Jan Nieuwenhuizen <janneke@gnu.org>
7656 * python/midi.c (initmidi): Fix type for mingw.
7658 2005-10-27 Jan Nieuwenhuizen <janneke@gnu.org>
7660 * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
7662 * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
7665 * stepmake/aclocal.m4: Support python cross compiling.
7667 * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
7670 2005-11-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
7672 * scm/output-lib.scm (chain-grob-member-functions): replace
7675 * lily/chained-callback.cc (Module): remove file.
7677 * lily/rest-collision.cc (force_shift_callback_rest): change to
7680 * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.
7682 * lily/grob.cc (y_parent_positioning): remove axis argument from
7683 parent_positioning callbacks.
7684 (Grob): junk init code
7685 (get_offset): use generic property callbacks for
7686 X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
7687 (axis_parent_positioning): new function
7688 (axis_offset_symbol): new function
7689 (chain_offset_callback): new function
7690 (add_offset_callback): new function
7692 * lily/beam.cc (rest_collision_callback): change signature; this
7693 is now a chained callback.
7695 * lily/include/dimension-cache.hh (class Dimension_cache): remove
7696 callback administration.
7698 * lily/simple-closure.cc: new file. Smob type that allows "grob
7701 (ly:make-simple-closure FUNC A B)
7703 is evaluated as (FUNC grob A B). This allows chaining of callbacks
7706 * lily/slur-engraver.cc (acknowledge_extra_object): use chained
7709 * lily/slur.cc (outside_slur_callback): take 2 arguments.
7711 * lily/rest.cc (polyphonic_offset_callback): remove.
7713 * lily/script-engraver.cc (try_music): remove bool* argument.
7715 * scm/script.scm (default-script-alist): set quantize-position
7718 * lily/script-engraver.cc: remove follow_into_staff_ special coding.
7720 * lily/side-position-interface.cc (aligned_side): move staff
7721 position quantization from
7722 Side_position_interface::quantised_position().
7723 (quantised_position): remove
7725 2005-10-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
7727 * input/regression/beam-quant-standard.ly: reindent, set
7728 debug-beam-quanting to #t.
7730 * lily/beam-concave.cc (calc_concaveness): set concaveness to
7731 10000 if this is a "hard" concave beam.
7733 * lily/beam.cc (calc_least_squares_positions): change from
7734 calc_least_squares_dy
7735 (set_stem_lengths): this is now a chained callback.
7737 * lily/context-property.cc (execute_general_pushpop_property):
7738 bugfix override with procedure should have effect.
7740 * scm/define-grob-properties.scm (all-internal-grob-properties):
7741 remove position-callbacks.
7743 * scm/define-grobs.scm (all-grob-descriptions): use
7744 ly:make-callback-chain for positions property.
7746 * scm/layout-beam.scm (check-quant-callbacks): return list of
7749 * scm/lily.scm (type-p-name-alist): add callback-chain
7751 * lily/lily-guile.cc (type_check_assignment): type check failure
7752 is warning not message.
7754 * lily/grob-property.cc (try_callback): walk callback chain if
7757 * lily/chained-callback.cc: new file. new smob type.
7759 * lily/lily-guile.cc (procedure_arity): new function.
7761 2005-10-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
7763 * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
7765 2005-10-25 John Mandereau <john.mandereau@free.fr>
7767 * Documentation/user/instrument-notation.itely (Figured bass):
7768 describe new features
7770 2005-10-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
7772 * lily/beam.cc (calc_least_squares_dy): use property callback.
7774 * lily/beam-concave.cc (calc_concaveness): use property callback.
7776 * ly/paper-defaults.ly: move fixed dimensions from paper.scm
7778 2005-10-25 Jan Nieuwenhuizen <janneke@gnu.org>
7782 2005-10-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
7784 * scm/layout-page-layout.scm (page-headfoot): annotate
7787 * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit.
7789 * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
7790 doesn't take y-space.
7792 * scm/paper.scm (paper-alist): fix A7 dimensions.
7794 2005-10-24 Jan Nieuwenhuizen <janneke@gnu.org>
7796 * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7797 src-wildcard, remove $(wildcard).
7799 * po/GNUmakefile (PO_FILES):
7800 * ps/GNUmakefile (PS_FILES):
7801 * tex/GNUmakefile (TEX_FILES):
7802 * cygwin/GNUmakefile (POSTINSTALLS):
7803 * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7804 some wildcard calls.
7806 2005-10-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
7808 * THANKS: add Thomas Bushnell.
7810 2005-10-23 Jan Nieuwenhuizen <janneke@gnu.org>
7812 * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7813 (lilypond-main): Redirect to gui-main if 'gui is set.
7815 * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7816 for alternative installations kludging s/share/lib/g
7819 * SConstruct (libdir_package_version): Define.
7821 * python/SConscript:
7822 * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7825 2005-10-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
7827 * lily/main.cc: clarify --safe.
7829 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7831 * VERSION: release 2.7.14
7833 * Documentation/user/*.itely: remove minimumVerticalExtent.
7835 * scm/define-grobs.scm (all-grob-descriptions): remove
7836 RemoveEmptyVerticalGroup
7838 * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7840 * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7843 * python/convertrules.py (conv): add rules.
7845 * lily/grob.cc: remove is_empty()
7847 * lily/grob-property.cc: remove add_to_list_property().
7849 * scripts/convert-ly.py (datadir): add prefix switching hack to
7852 * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7853 space-function tweak.
7855 * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7857 * scm/define-grob-properties.scm (all-user-grob-properties):
7858 remove callback property.
7860 * lily/include/grob.hh (class Grob): remove property_callbacks_
7861 member. Properties of procedure type are assumed to be callbacks.
7863 * lily/ligature-engraver.cc (override_stencil_callback):
7864 rewrite. Use noteHeadLigaturePrimitive as source.
7866 * scm/define-grob-properties.scm (all-internal-grob-properties):
7867 remove ligature-primitive-callback
7869 * lily/include/dimension-cache.hh (class Dimension_cache): make
7870 class, with Grob as friend.
7872 * lily/grob.cc: remove set_extent_callback(), set_extent() and
7873 has_extent_callback()
7875 * scm/translation-functions.scm (format-new-bass-figure): read
7876 figuredBassPlusDirection
7878 * scm/define-context-properties.scm
7879 (all-user-translation-properties): add figuredBassPlusDirection.
7881 * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7883 * lily/align-interface.cc (set_ordered): new function.
7885 * lily/grob.cc (flush_extent_cache): rewrite.
7887 * lily/dimension-cache.cc (Dimension_cache): cache extent as
7888 Interval pointer directly.
7890 * lily/main.cc (setup_paths): insert extra / .
7891 (setup_paths): junk cff entry.
7893 * lily/font-config.cc (init_fontconfig): only add type1 / otf
7896 * lily/axis-group-engraver.cc (finalize): remove
7897 extraVerticalExtent, minimumVerticalExtent verticalExtent.
7899 * lily/grob.cc (Grob): don't set extent from ctor.
7900 (extent): use property callbacks.
7902 * lily/axis-group-interface.cc: remove set_axes() function.
7904 * lily/grob-property.cc (del_property): new function.
7906 2005-10-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
7908 * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7910 2005-10-20 Jan Nieuwenhuizen <janneke@gnu.org>
7912 * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops. Add.
7914 2005-10-19 Jan Nieuwenhuizen <janneke@gnu.org>
7916 * mf/SConscript: Updates.
7918 * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7920 * stepmake/stepmake/*:
7924 * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7925 from any directory in build-dir. Cleanups.
7927 * make/srcdir.make.in: Remove.
7929 * lily/main.cc (setup_paths): Fix and document build-dir hack.
7931 * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7934 * lily/SConscript: Remove ttftools.
7936 * SConstruct: Resurrect.
7938 2005-10-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
7940 * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7943 * lily/paper-book.cc (add_score_title): put Paper_score title into
7946 * scm/translation-functions.scm (format-new-bass-figure): also
7947 allow plus in combination with _
7949 2005-10-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
7951 * VERSION: 2.7.13 released.
7953 * lily/note-collision.cc (check_meshing_chords): don't wipe
7954 stencil, merely set transparent.
7956 * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau.
7957 (Top): document #'callbacks.
7958 (Top): document nested \override.
7960 * input/regression/figured-bass.ly: update for slash and pluses.
7962 * input/regression/figured-bass-continuation-forbid.ly (Module):
7965 * scm/translation-functions.scm (format-new-bass-figure): use
7966 slashed-digit if diminished is set.
7967 (format-new-bass-figure): add + if 'augmented is set.
7969 * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7971 * input/test/piano-staff-distance.ly: remove file.
7973 * Documentation/user/advanced-notation.itely (Formatting cue
7974 notes): use length-fraction for making stems/beams smaller.
7976 * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7979 * lily/new-figured-bass-engraver.cc: new property
7980 centerFiguredBassContinuations
7982 * Documentation/user/changing-defaults.itely (Difficult tweaks):
7985 * lily/context-property.cc (execute_general_pushpop_property):
7988 * input/regression/override-nest.ly: new file.
7990 * python/convertrules.py (FatalConversionError.subber): conversion
7991 rule for #'callbacks
7993 * input/regression/override-nest.ly: new function.
7995 * lily/parser.yy (music_property_def): allow \override #'a #'b =
7998 * lily/context-property.cc (lookup_nested_property): new function.
7999 (evict_from_alist): new function.
8000 (general_pushpop_property): new function.
8001 (execute_general_pushpop_property): rewrite. Support nested
8004 2005-10-16 Han-Wen Nienhuys <hanwen@xs4all.nl>
8006 * lily/beam.cc: use length-fraction too.
8008 * scm/define-grob-properties.scm (all-user-grob-properties):
8009 remove property flag-width-function
8010 (all-user-grob-properties): remove space-function.
8012 * scm/layout-beam.scm: remove flag-width-function.
8014 * lily/beam.cc: remove flag-width-function
8016 * scm/layout-beam.scm: remove beam dir functions.
8018 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
8020 * lily/stem.cc (calc_length): multiply with length_fraction. Makes
8021 for easier grace tweaks.
8023 * lily/beam.cc: remove dir-function.
8025 * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
8027 * lily/grob.cc: remove spacing-procedure.
8029 * lily/note-head.cc (calc_stem_attachment): new function.
8030 (internal_print): use callback to get glyph-name.
8032 * lily/grob-property.cc (get_interfaces): new function.
8034 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
8036 * lily/stem.cc (calc_stem_end_position): new function.
8037 (calc_length): new function.
8038 document details for stem.
8039 remove Stem::get_direction()
8041 * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback!
8043 * lily/grob-property.cc (set_callback): new function.
8045 * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
8047 * lily/item-scheme.cc: new file.
8049 * lily/bar-line.cc (before_line_breaking): remove function.
8050 remove bar-size-procedure, break-glyph-function
8052 * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
8054 * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
8056 * lily/system-start-delimiter.cc (print): suicide from
8057 here. Remove after_line_breaking_callback.
8059 * lily/script-interface.cc (calc_direction): use callback for direction.
8061 * lily/side-position-interface.cc (aligned_side): don't use
8062 Side_position_interface::get_direction directly. Use callback.
8064 * lily/grob.cc (get_stencil): simplify: use callback mechanism to
8066 (get_print_stencil): rename from get_stencil: create stencil with
8067 transparency, color and cause.
8069 * scm/define-grobs.scm: change print-function to stencil callback everywhere.
8071 * python/convertrules.py (conv): insert temporary warning rule.
8073 * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
8075 * lily/grob-property.cc (try_callback): remove marker if applicable.
8077 * lily/grob.cc: elucidate doc about after/before-line-breaking
8079 * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
8081 * lily/stem.cc (height): idem.
8083 * lily/stem-tremolo.cc: idem.
8085 * lily/slur.cc (height): don't use get_uncached_stencil()
8087 * lily/rest.cc (y_offset_callback): use offset callback
8088 iso. after-line-breaking callback.
8090 * lily/grob.cc: change after/before-line-breaking-callback to
8091 after/before-line-breaking dummy properties.
8093 * lily/include/grob.hh: remove Grob_status.
8095 * scm/define-context-properties.scm
8096 (all-user-translation-properties): remove verticalAlignmentChildCallback
8098 * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
8099 (calc_direction): use callback
8100 (calc_positions): use callback.
8102 * lily/tie.cc (calc_direction): use callback. Only call parent
8103 positioning for more than one tie.
8105 * lily/tie-column.cc (calc_positioning_done): use callback
8107 * lily/slur-scoring.cc (calc_control_points): use callback
8109 * lily/slur.cc (calc_direction): use callback.
8111 * lily/note-collision.cc (force_shift_callback): remove.
8113 * lily/dot-column.cc (force_shift_callback): remove. Use
8114 other_axis_parent_positioning.
8116 * lily/grob.cc (other_axis_parent_positioning): new function.
8117 (same_axis_parent_positioning): new function
8119 * lily/align-interface.cc (alignment_callback): remove function.
8121 * lily/note-collision.cc (calc_positioning_done): use callback.
8123 * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
8124 (calc_direction): idem.
8125 remove print function.
8127 * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
8129 * lily/dot-column.cc (calc_positioning_done): use callback.
8131 * lily/break-align-interface.cc (calc_positioning_done): use callback.
8133 * lily/beam.cc (calc_direction): use pseudo-property for beam
8135 (calc_positions): use callback
8137 * lily/align-interface.cc (calc_positioning_done): use
8138 callback. Fold fixed distance and normal alignment in one function.
8140 * lily/stem.cc (calc_stem_end_position): use callback.
8141 (calc_positioning_done): idem.
8142 (calc_direction): idem.
8143 (calc_stem_end_position): idem
8144 (calc_stem_info): idem.
8146 * lily/grob-property.cc (get_property_data): new function:
8147 (try_callback): new function.
8149 * scm/define-grob-properties.scm (all-user-grob-properties): doc
8152 * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
8154 2005-10-15 Han-Wen Nienhuys <hanwen@xs4all.nl>
8156 * lily/tie.cc (get_position): robustness fix. Don't crash if a
8160 * lily/include/*.hh (Module): compile fixes.
8162 2005-10-14 Heikki Junes <hjunes@cc.hut.fi>
8164 * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil
8165 as an argument for char-syntax: use (char-syntax (or nil 0))
8166 instead of (char-syntax nil), thanks to Milan Zamazal.
8168 2005-10-14 Han-Wen Nienhuys <hanwen@xs4all.nl>
8170 * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
8173 * lily/tuplet-bracket.cc: check columns of bounds, not bounds
8176 2005-10-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8178 * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
8179 add class_name() method.
8181 * lily/music-scheme.cc: remove ly:music-name.
8183 2005-10-11 Jan Nieuwenhuizen <janneke@gnu.org>
8185 * cygwin/postinstall-lilypond.sh: Remove cruft.
8187 * cygwin/postremove-lilypond.sh: Remove.
8189 * cygwin/GNUmakefile (default): Remove postremove rules.
8191 2005-10-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8193 * ly/titling-init.ly (evenHeaderMarkup): use space in header on
8196 * scm/define-markup-commands.scm (wordwrap-string): bugfix for
8199 * lily/hara-kiri-group-spanner.cc (consider_suicide): only
8200 consider break index for broken spanner.
8202 * scm/define-markup-commands.scm (wordwrap-string): remove \r
8203 characters from string before splitting.
8205 2005-10-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
8207 * scm/framework-ps.scm (output-preview-framework): use
8208 is-book-title to determine whether to chop off the booktitle.
8210 * lily/paper-book.cc (systems): init from book-title-properties
8211 (add_score_title): init score-title-properties.
8213 * ly/paper-defaults.ly: add {score,book}-title-properties.
8215 * scm/document-backend.scm (lookup-interface): error message if
8216 using unknown interface.
8218 * lily/volta-bracket.cc (after_line_breaking): new function. Set
8221 * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
8223 (make_bracket): new function.
8225 * scm/lily.scm (define-scheme-options): add paper-size option.
8227 * ly/declarations-init.ly (laissezVibrer): get paper size from
8230 * scm/translation-functions.scm: use \fontsize for changing the
8233 * scm/define-grobs.scm (all-grob-descriptions): set
8234 between-length-limit to 1.0
8236 * lily/tie-helper.cc: add between_length_limit_ detail property.
8238 * mf/feta-bolletjes.mf: typos.
8240 * lily/note-head.cc (internal_print): don't shadow idx
8241 parameter. This fixes wrong attachment for do shape heads.
8243 2005-10-09 Han-Wen Nienhuys <hanwen@xs4all.nl>
8245 * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
8247 * scm/parser-clef.scm (supported-clefs): rename from clef.scm
8249 * scm/layout-slur.scm: rename from slur.scm
8251 * scm/layout-page-layout.scm: rename from page-layout.scm
8253 * scm/layout-beam.scm: rename from beam.scm
8255 * scm/define-grob-interfaces.scm (bass-figure-interface): add
8256 bass-figure-interface
8258 * lily/new-figured-bass-engraver.cc (process_music): add
8259 implicitBassFigures property.
8261 * scm/define-markup-commands.scm (pad-x): new markup.
8263 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
8264 minimumVerticalExtent on FiguredBass context.
8266 * lily/figured-bass-continuation.cc (center_on_figures): kludge in
8267 case the continuation crosses a line break.
8269 2005-10-09 Jan Nieuwenhuizen <janneke@gnu.org>
8271 * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
8272 unconverted value if cygwin_conv_to_posix_path () fails. Fixes
8273 absolute file name bug.
8275 2005-10-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
8277 * VERSION (PACKAGE_NAME): release 2.7.12
8279 * input/regression/figured-bass-continuation-center.ly: new file.
8281 * input/regression/beam-outside-beamlets.ly: new file.
8283 * lily/beam.cc (set_beaming): don't clip edges.
8284 (connect_beams): don't clip edges.
8286 * lily/beaming-info.cc (clip_edges): new function.
8288 * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
8290 * Documentation/user/instrument-notation.itely (Figured bass):
8291 demonstrate extenders, update seealso links.
8293 * scm/titling.scm (marked-up-headfoot): change tagline
8294 handling. tagline = ##f will blank the tagline as well.
8296 2005-10-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8298 * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
8300 * lily/new-figured-bass-engraver.cc (struct
8301 New_figured_bass_engraver): add new_music_found_ member.
8303 * lily/lilypond-version.cc (Lilypond_version): deal with
8304 incorrectly formatted version strings.
8306 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
8307 New_figured_bass_engraver by default.
8309 * lily/ttf.cc (print_trailer): only define glyph names when
8310 FT_Face has FT_FACE_FLAG_GLYPH_NAMES
8312 2005-10-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8314 * lily/horizontal-bracket.cc (make_bracket): new function.
8316 * scm/define-grobs.scm (all-grob-descriptions): new grobs
8317 NewBassFigure, BassFigureBracket, BassFigureContinuation,
8318 BassFigureLine, BassFigureAlignment
8320 * lily/new-figured-bass-engraver.cc (process_music): new file.
8322 * lily/figured-bass-continuation.cc: new file.
8324 * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
8327 2005-10-04 Mats Bengtsson <mabe@s3.kth.se>
8329 * scripts/lilypond-book.py: Bug fix, put the quote around the
8330 actual score for LaTeX documents.
8332 * scm/define-grobs.scm (all-grob-descriptions): Change
8333 collapse-height of the SystemStartBracket grob to 5.0,
8334 so the bracket disappears for single stave score lines (similarly
8335 to SystemStartBraces).
8337 * Documentation/user/advanced-notation.itely (Polymetric
8338 notation): Clarify the use of compressMusic.
8340 * Documentation/user/basic-notation.itely (Grace notes): Clarify
8341 that the grace spacer note in other staves need the same duration
8342 and document the stroke-style property.
8344 2005-10-03 Han-Wen Nienhuys <hanwen@xs4all.nl>
8346 * Documentation/user/global.itely (Vertical spacing): document
8347 alignment-extra-space and fixed-alignment-extra-space.
8349 * Documentation/topdocs/NEWS.tely (Top): add entry.
8351 * input/regression/alignment-vertical-spacing.ly: new file.
8353 * python/convertrules.py (conv): add rule.
8355 * ly/music-functions-init.ly: rename outputProperty to overrideProperty
8357 * lily/align-interface.cc (stretch_after_break): new
8358 function. Read fixed-alignment-extra-space property.
8359 (align_elements_to_extents): read alignment-extra-space property.
8361 * lily/lily-guile.cc (robust_scm2dir): new function.
8363 * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
8364 (annotate-space-left): new function. Annotate space left on page.
8365 (annotate-y-interval): new function.
8366 (paper-system-annotate-last): new function. Annotate bottom-space.
8368 * mf/feta-beugel.mf (y):
8370 2005-10-02 Han-Wen Nienhuys <hanwen@xs4all.nl>
8372 * VERSION (PACKAGE_NAME): release 2.7.11
8374 * scm/lily-library.scm (interval-translate): new function
8375 (interval-center): new function.
8377 * scm/page-layout.scm (paper-system-annotate): new function. Add
8378 arrows for dimensions.
8380 * scm/stencil.scm (dimension-arrows): new function.
8382 * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
8384 * input/regression/page-spacing.ly: add annotatespacing
8386 * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
8387 (LY_DEFINE): new function ly:paper-system-set-property!
8389 * Documentation/user/global.itely (Paper size): explain how to add
8392 * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
8393 correspond to GS's definition.
8395 * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
8397 (print): only connect to next bracket if the next one is alive.
8398 (print): set padding to 0.0 if the bound is a breakable
8399 column. This makes tupletFullLength brackets reach up to the staff
8400 line if it doesn't connect to the next line.
8402 2005-09-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8404 * lily/bar-number-engraver.cc: correct docs.
8406 * scm/output-lib.scm (first-bar-number-invisible): rename from
8407 default-bar-number-visibility
8409 2005-09-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
8411 * scm/define-music-properties.scm (all-music-properties): remove
8414 2005-09-28 Heikki Junes <hjunes@cc.hut.fi>
8416 * po/fi.po: refresh.
8418 2005-09-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8420 * input/regression/hara-kiri-pianostaff.ly (disappear): remove
8422 (disappear): bugfix.
8424 * lily/stem-tremolo.cc (raw_stencil): read slope property.
8426 * lily/include/paper-system.hh (class Paper_system): remove
8427 staff_extents_ member.
8429 * lily/paper-system-scheme.cc (LY_DEFINE): remove.
8431 * lily/include/paper-system.hh (class Paper_system): remove
8432 number_ variable. Remove is_title_. Remove break_before_penalty_
8434 * lily/paper-book.cc (systems): use 'number property iso. number_
8437 * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
8438 remove ly:paper-system-number.
8440 * scm/lily-library.scm (paper-system-title?): new function.
8442 * lily/book.cc (process): bugfix: flip ?: cases.
8444 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8447 * ly/music-functions-init.ly: add outputProperty music function.
8449 * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
8451 * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
8453 (optimal-page-breaks): rename from ly:optimal-page-breaks.
8455 * lily/paper-system-scheme.cc (LY_DEFINE): new function.
8457 * lily/paper-system.cc (internal_get_property): new function.
8459 * Documentation/user/global.itely (Vertical spacing): refer to
8462 * scm/page-layout.scm (ly:optimal-page-breaks): add support for
8465 * input/regression/page-spacing.ly: new file.
8467 * input/regression/page-top-space.ly: new file.
8469 * lily/spacing-spanner.cc: cmath -> math.h
8471 * lily/paper-system.cc (read_left_bound): new function. Read
8472 line-break-system-details from left bound to determine extents.
8474 * Documentation/user/programming-interface.itely (Using LilyPond
8475 syntax inside Scheme): change applyxxx -> applyXxx.
8477 * ly/music-functions-init.ly: add outputProperty music function.
8479 * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
8481 * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
8483 * python/convertrules.py (conv): rule
8485 * ly/music-functions-init.ly: applyxxx -> applyXxx
8487 * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
8490 2005-09-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8492 * flower/include/real.hh: include <math.h> iso. <cmath>
8494 * flower/include/offset.hh: include real.hh
8496 2005-09-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
8498 * Documentation/user/changing-defaults.itely (Difficult tweaks):
8499 fix example, now that 'interfaces is no longer directly available.
8501 * lily/book.cc (process): don't crash if paper == NULL.
8505 2005-09-17 Han-Wen Nienhuys <hanwen@xs4all.nl>
8507 * scm/define-music-types.scm (music-descriptions): set length and
8508 start-callback for QuoteMusic
8510 2005-09-15 Mats Bengtsson <mabe@s3.kth.se>
8512 * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
8513 arguments. Fixes compilation error with gcc 3.3.
8515 2005-09-13 Han-Wen Nienhuys <hanwen@xs4all.nl>
8517 * VERSION: release 2.7.10
8519 * stepmake/stepmake/python-module-rules.make
8520 ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.
8522 * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
8525 2005-09-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
8527 * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
8528 -Werror. Otherwise GCC barfs over various optimizations.
8530 * scm/define-grob-properties.scm (all-internal-grob-properties):
8531 add note-head property
8533 * Documentation/user/instrument-notation.itely (Laissez vibrer
8536 * input/regression/laissez-vibrer-ties.ly: new file.
8538 * lily/laissez-vibrer-engraver.cc: new file.
8540 * lily/include/tie-column-format.hh: new file.
8542 * lily/tie-column-format.cc: new file.
8544 * lily/tie-column.cc (set_manual_tie_configuration): new function.
8546 * lily/laissez-vibrer-tie.cc: new file.
8548 * lily/include/laissez-vibrer-tie.hh: new file.
8550 * ly/engraver-init.ly: add Laissez_vibrer_engraver
8552 * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
8554 * scm/define-grobs.scm (all-grob-descriptions): add
8555 LaissezVibrerTie, LaissezVibrerTieColumn
8557 * lily/tie-column.cc (set_tie_config_directions): new function
8558 (final_shape_adjustment): new function.
8559 (shift_small_ties): new function.
8561 * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
8563 * lily/include/tie.hh (struct Tie_details): add x_gap_
8564 (struct Tie_configuration): add head_position_
8566 * lily/tie-column.cc (set_chord_outline): new function.
8568 * mf/cmr.enc.in: remove file.
8570 2005-09-11 Graham Percival <gpermus@gmail.com>
8572 * Documentation/user/examples.itely: typo fix. Thanks, Matevž
8574 2005-09-11 Han-Wen Nienhuys <hanwen@xs4all.nl>
8576 * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
8577 reduce aliasing effects.
8579 * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
8582 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8584 * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
8586 * flower/include/real.hh: std::fabs too.
8588 2005-09-08 Jan Nieuwenhuizen <janneke@gnu.org>
8590 * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner).
8592 * lily, flower: Include C++ iso C headers. Import namespace std
8595 * lily/side-position-interface.cc:
8597 * lily/note-head.cc:
8598 * lily/include/includable-lexer.hh:
8599 * flower/include/string-data.icc: Remove using std::*.
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 * Documentation/user/instrument-notation.itely (Entering lyrics):
8611 Multiple latin-1->utf-8 conversion fix.
8613 * Documentation/user/*tely: Update Emacs cookie to utf-8.
8615 2005-09-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
8617 * lily/tie.cc (get_configuration): also avoid dots for non-space
8620 2005-09-07 Jan Nieuwenhuizen <janneke@gnu.org>
8622 * Documentation/user/instrument-notation.itely: Bugfix.
8624 2005-09-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
8626 * tex/GNUmakefile: don't install texinfo.tex
8628 * tex/ : cleanup: remove unused files.
8630 * lily/general-scheme.cc: remove my_{isinf,isnan}.
8632 * flower/include/real.hh: using std::{isnan,isinf}
8634 * VERSION (PATCH_LEVEL): release 2.7.9
8636 2005-09-05 Graham Percival <gpermus@gmail.com>
8638 * Documentation/user/ instrument-notation.itely,
8639 advanced-notation.itely: minor tweaks.
8641 * input/test/script-chart.ly: add item padding.
8643 2005-09-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
8645 * flower/offset.cc: use math.h iso. <cmath>
8647 * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
8650 * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
8651 (widen-left-stencil-edges): new function. Fix alignment problems
8652 with LaTeX includegraphics.
8654 * lily/text-interface.cc (interpret_markup): use abort().
8656 2005-09-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
8658 * input/regression/tie-chord.ly (testLong): add a chord in 4ths
8660 * lily/tie.cc (get_configuration): update bezier shape as we
8662 (get_configuration): don't move large ties if we're outside of the
8665 2005-09-01 Han-Wen Nienhuys <hanwen@xs4all.nl>
8667 * scm/define-markup-commands.scm (strut): swap X and Y dims.
8669 2005-09-03 Jan Nieuwenhuizen <janneke@gnu.org>
8671 * .cvsignore: Add auto-generated configure files and then some.
8673 2005-09-02 Jan Nieuwenhuizen <janneke@gnu.org>
8675 * scm/define-grobs.scm (DynamicLineSpanner): Add
8676 X-extent-callback. Fixes hairpin-slur collision.
8678 2005-08-31 Graham Percival <gpermus@gmail.com>
8680 * Documentation/user/advanced-notation.itely,
8681 basic-notation.itely: minor changes.
8683 2005-08-31 Mats Bengtsson <mabe@s3.kth.se>
8685 * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
8686 \linebreak between each .eps file if \betweenLilyPondSystem is
8689 * Documentation/user/lilypond-book.itely (Integrating LaTeX and
8690 music): Document the \linebreak
8692 * Documentation/user/lilypond-book.itely,
8693 input/tutorial/lbook-latex-test.tex,
8694 Documentation/user/examples.itely: Remove \usepackage{graphics}
8696 2005-08-31 Han-Wen Nienhuys <hanwen@xs4all.nl>
8698 * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
8700 * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
8703 * scripts/lilypond-book.py (PREAMBLE_LY): define
8704 inside-lilypond-book
8705 (modify_preamble): new function. Insert \RequirePackage{graphics}
8706 when no {graphics found in preamble.
8708 2005-08030 Graham Percival <gpermus@gmail.com>
8710 * Documentation/user/basic-notation.itely, global.itely,
8711 tutorial.itely: misc small changes.
8713 2005-08-30 Jan Nieuwenhuizen <janneke@gnu.org>
8715 * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
8718 2005-08-30 Han-Wen Nienhuys <hanwen@xs4all.nl>
8720 * lily/tie-column.cc (new_directions): put Tie down on center
8723 * lily/script-interface.cc (before_line_breaking): use
8724 Grob::programming_error
8726 * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
8728 * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
8731 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8733 * VERSION (PACKAGE_NAME): VERSION release 2.7.8
8735 2005-08-29 Werner Lemberg <wl@gnu.org>
8737 * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
8738 the `*.scale.pfa' files to avoid warnings.
8740 2005-08-29 Han-Wen Nienhuys <hanwen@xs4all.nl>
8742 * lily/tempo-performer.cc (process_music): idem.
8744 * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
8746 2005-08-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
8748 * Documentation/user/advanced-notation.itely (Text markup): not a
8751 * lily/midi-item.cc (to_string): use to_int() iso. int cast.
8753 * lily/staff-performer.cc (initialize): add tempo/name to
8757 2005-08-26 Graham Percival <gpermus@gmail.com>
8759 * Documentation/user/advanced.itely: add text-only example.
8761 * Documentation/user/invoking.itely: add index entries for
8764 * Documentation/user/ tutorial.itely, basic-notation.itely:
8765 small fixes suggested by Steve D. Thanks!
8767 2005-08-26 Han-Wen Nienhuys <hanwen@xs4all.nl>
8769 * input/regression/markup-bidi-pango.ly: new file.
8771 * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
8772 standard. Remove #ifdef. Remove memleak.
8773 (text_stencil): use text_dir to decide how to composite items.
8774 (text_stencil): determine uniform text direction for the entire
8777 * scripts/lilypond-book.py (output_name): remove
8778 latex_filter_cmd. Non-portable to non-Unix systems.
8779 (get_latex_textwidth): use File.write and os.unlink() instead.
8781 * THANKS: add Vicente & Trevor.
8783 * lily/grob.cc (discretionary_processing): look up origin for
8784 programming_error too.
8786 * input/regression/tie-broken.ly: new file.
8788 * lily/tie-column.cc (set_chord_outlines): set outline for line
8791 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8793 * lily/pango-font.cc (text_stencil): don't translate glyphs in
8794 unscaled transform, just translate stencils.
8796 * ly/performer-init.ly: init timing to #t. Fixes bar checks in
8799 * scm/define-markup-commands.scm (wordwrap-string): use
8801 (wordwrap-stencils): idem.
8804 (wordwrap-stencils): translate last line to right for
8805 text-direction = LEFT.
8807 * scm/define-grob-properties.scm (all-user-grob-properties): add
8810 2005-08-25 Nicolas Sceaux <nicolas.sceaux@free.fr>
8812 * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8813 when copying a Lily_parser object.
8815 2005-08-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
8817 * scm/define-markup-commands.scm (null): add null markup.
8819 2005-08-25 Mats Bengtsson <mabe@s3.kth.se>
8821 * lily/item.cc: Add documentation of center-invisible
8823 2005-08-24 Graham Percival <gpermus@gmail.com>
8825 * Documentation/user/advanced-notation.itely: add info about
8828 * Documentation/user/programming-interface.itely: fix example
8829 involving raised text.
8831 2005-08-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
8833 * lily/beam.cc (print): fix X start/end points of isolated
8836 * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8838 * lily/multi-measure-rest.cc (set_text_rods): new function.
8840 * lily/vertical-align-engraver.cc (process_music): call
8841 Align_interface::set_axis(). This forces #'elements to be ordered,
8842 preventing random vertical reordering of staves.
8844 * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8845 add avoid-slur property.
8847 * Documentation/user/basic-notation.itely (Measure repeats): add
8848 countPercentRepeats example.
8850 * Documentation/user/advanced-notation.itely (Other text markup
8851 issues): remove remark about normal-font. We have \normal-text
8853 * input/regression/tie-chord.ly: add note about remaining bugs.
8855 * lily/tie.cc (print): try Tie_column::set_directions () if
8856 control-points not yet defined.
8858 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8860 * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8861 extent. This fixes braces falling out of the EPS bbox.
8863 * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8866 2005-08-23 Graham Percival <gpermus@gmail.com>
8868 * {various} : change #up->#UP and #down->#DOWN.
8870 * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8872 * Documentation/user/advanced-notation.itely: clarify
8873 what objects handles text on a multimeasure rest.
8875 2005-08-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
8877 * VERSION (PATCH_LEVEL): release 2.7.7
8879 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8881 * make/lilypond-vars.make: set -dgs-font-load for "make web"
8883 * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8885 * input/regression/*.ly: formatting clean-up. Default layout
8886 before music expression.
8888 * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8889 romanze28-2 example.
8891 * scm/ps-to-png.scm: remove dir-re function.
8892 (make-ps-images): generate page names, instead of globbing them.
8893 This brings down LilyPond memory usage for make web by a factor
8896 * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8897 don't use glob. With 3000 files, globbing
8898 Documentation/user/out-www/ can take too much time.
8900 * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8902 * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8904 * input/regression/tie-manual.ly: new file
8906 * input/regression/tie-chord.ly: update.
8908 * flower/include/interval.hh (struct Interval_t):
8910 * lily/tie.cc (distance): new function
8911 (height): new function.
8912 (init): new function
8913 (Tie_details): new struct.
8915 * lily/skyline.cc (skyline_height): new function.
8917 * lily/tie-column.cc (set_chord_outlines): new function.
8918 (new_directions): read tie-configuration
8920 * lily/skyline.cc: fix ASCII art.
8922 2005-08-22 Mats Bengtsson <mabe@s3.kth.se>
8924 * python/convertrules.py (string_or_scheme): Fix spelling error
8926 2005-08-22 Han-Wen Nienhuys <hanwen@xs4all.nl>
8928 * lily/tie-column.cc (set_directions): set directions only once.
8929 (add_configuration): new function.
8931 * lily/tie.cc (set_control_points): new function
8933 * lily/tie-column.cc (new_directions): new function.
8935 * ly/music-functions-init.ly: set 'pitch property
8936 iso. trill-pitch. This makes \relative work with \pitchedTrill
8938 * lily/tie.cc (get_configuration): new function. Don't generate
8939 control points, rather, generate configuration.
8940 remove head-pair property.
8942 * lily/include/tie.hh (struct Tie_configuration): new struct.
8944 2005-08-22 Heikki Junes <hjunes@cc.hut.fi>
8946 * Documentation/topdocs/NEWS.tely: clarify.
8948 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8950 * lily/tie.cc: remove minimum-length
8952 * scm/define-grob-properties.scm (all-user-grob-properties):
8953 remove staffline-clearance, y-offset
8955 * input/regression/tie-dots.ly (Module): remove.
8957 * lily/tie.cc (get_control_points): rewrite. Put short ties in
8958 staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8960 * input/regression/tie-single.ly: new file.
8962 2005-08-21 Graham Percival <gpermus@gmail.com>
8964 * ly/bagpipe.ly: fix compile problem.
8966 2005-08-21 Han-Wen Nienhuys <hanwen@xs4all.nl>
8968 * lily/midi-item.cc (name): new method.
8970 * lily/staff-performer.cc (acknowledge_audio_element): use
8971 signature of baseclass.
8973 * lily/engraver-group.cc (do_announces): move recursion call out
8976 * lily/drum-note-performer.cc (class Drum_note_performer): use
8977 process_music everywhere.
8979 * ly/performer-init.ly: add default children everywhere.
8981 * lily/paper-book.cc (output): call paper-book-write-midis
8982 directly: always write MIDI, even if no \layout {} block.
8984 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8986 * VERSION (PACKAGE_NAME): release 2.7.6
8988 * lily/percent-repeat-engraver.cc (try_music): don't print warning
8989 about not being able to handle repeat.
8991 2005-08-19 Jan Nieuwenhuizen <janneke@gnu.org>
8993 * Documentation/user/examples.itely (Piano templates):
8994 * lily/include/performer-group.hh: Remove last traces of
8995 Performer_group_performer. Fixes make web.
8997 2005-08-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
8999 * Documentation/user/examples.itely (Piano templates): change
9000 Engraver_group_engraver -> Engraver_group
9002 * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
9003 scm_stand_in_procs is not weak_any.
9005 * lily/volta-bracket.cc (print): don't use strcmp().
9007 * lily/volta-engraver.cc (process_music): use
9008 Text_interface::is_markup() for setting the 'text property of the
9011 * input/mutopia/claop.py (accents): update syntax to 2.6
9013 * scm/define-context-properties.scm
9014 (all-user-translation-properties): add countPercentRepeats.
9016 * Documentation/user/basic-notation.itely (Measure repeats): add
9017 isolated percent example.
9019 2005-08-18 Graham Percival <gpermus@gmail.com>
9021 * input/ {various}: change direction #1, #-1 to
9022 #up/#down or \fooUp, \fooDown.
9024 * Documentation/user/music-glossary.tely: #-1 to #down.
9026 * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
9027 to #up, #-1 to #down.
9029 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9031 * lily/include/engraver-group.hh: rename.
9033 * lily/include/performer-group.hh: rename.
9035 2005-08-18 Mats Bengtsson <mabe@s3.kth.se>
9037 * input/test/script-abbreviations.ly: Removed some old LaTeX
9040 2005-08-18 Jan Nieuwenhuizen <janneke@gnu.org>
9042 * python/convertrules.py (conv): inside-slur -> avoid-slur.
9043 Remove functions. Remove if 1: constructs, reindent.
9045 * scripts/convert-ly.py (add_version): Add functions from
9048 * scm/script.scm (default-script-alist):
9049 s/priority/script-priority. Fixes script stacking. Backportme.
9050 (Fermata): Very low priority.
9052 2005-08-18 Han-Wen Nienhuys <hanwen@xs4all.nl>
9054 * input/regression/*.ly: remove superfluous \score blocks. Reindent.
9056 * input/regression/slur-script.ly: remove padding tweaks. Add
9059 * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
9060 time sigs and related stuff.
9062 * scm/define-grob-properties.scm (all-user-grob-properties): add