1 2002-07-24 Jan Nieuwenhuizen <janneke@gnu.org>
3 * config.make.in (prefix): Prepend $(DESTDIR) to allow install
4 without overriding prefix.
6 * aclocal.m4: Regenerate.
8 * stepmake/aclocal.m4: Don't expand $prefix: fixes install with
17 * tex/GNUmakefile: use local_package_datadir iso datadir.
19 * make/substitute.make (ATVARIABLES): Add local_lilypond_datadir.
21 * aclocal.m4: Regenerate.
25 * stepmake/aclocal.m4: Cleanups and more conventional naming for
26 datadir ($prefix/share), package_datadir ($prefix/$package), and
27 local_package_datadir ($prefix/$package/$version).
29 * make/lilypond-vars.make:
31 * scripts/lilypond-book.py:
33 * scripts/midi2ly.py: use local_package_datadir iso datadir.
35 * GNUmakefile.in: build_datadir without version.
37 * lily/main.cc: Datadir cleanup.
39 * lily/text-item.cc (lookup_text):
40 * lily/music-output-def.cc (print_smob):
41 * lily/mensural-ligature.cc (brew_molecule):
42 * lily/beam-quanting.cc (score_slopes_dy, score_forbidden_quants):
45 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
47 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Warn when not
48 using 6 systems, like the original.
50 * input/test/count-systems.ly: New file.
52 * lily/spanner.cc (get_broken_into):
53 * lily/grob.cc (original_scm, line_scm): New function.
55 * lily/include/grob.hh (ly_scm2grob_array): Moved from
56 group-interface.hh and renamed.
57 (ly_grob_array2scm): New function.
59 2002-07-23 Juergen Reuter <reuter@ipd.uka.de>
61 * lily/ambitus-engraver.cc: bugfix: create ambitus grob during
64 2002-07-23 Han-Wen <hanwen@cs.uu.nl>
66 * lily/separation-item.cc (width): cache extent in extent-X
68 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
69 only add extent for non-musical column.
71 * lily/accidental-placement.cc (split_accidentals): new function
72 (get_relevant_accidental_extent): new function
74 * lily/staff-spacing.cc (next_note_correction): idem
76 * lily/separating-group-spanner.cc (find_rods): use conditional_width().
78 * scm/sketch.scm: fix roundfilledbox definition
80 * lily/lily-guile.cc (robust_list_ref): be sensible with negative
81 argument. This fixes too-long stems on half and quarter notes.
83 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
85 * Documentation/index.texi: Add, fix, change some links and names,
86 including dump of wiki wiki.
88 * Documentation/GNUmakefile (local-WWW): Slurp wiki.
90 * buildscripts/wiki-slurp.py: New file. Accept multiple pattern.
91 (unwiki): Replace local urls with <img src> too.
93 * Documentation/GNUmakefile (wiki-dump): New target.
95 * Documentation/header.html.in: Link to Documentation/index
96 renamed to Index (was other...).
98 * Documentation/regression-test.tely: Remove.
100 * make/lysdoc-targets.make (local-WWW): Add default targets .ps.gz
103 2002-07-22 Han-Wen <hanwen@cs.uu.nl>
105 * VERSION: 1.5.69 released
107 * lily/accidental-placement.cc (position_accidentals): document
110 * lily/skyline.cc (skyline_meshing_distance): bugfixes.
112 2002-07-22 Jan Nieuwenhuizen <janneke@gnu.org>
114 * input/regression/abe.ly:
115 * input/test/transposing.ly: Remove mention of mudela.
117 * scripts/lilypond-book.py (make_pixmap): Don't use quiet_system,
118 ie, don't redirect PNG output to /dev/null. Fixes lys-to-tely
121 * input/test/mark.ly:
122 * Documentation/user/refman.itely: Re-enable \mark #'() example.
124 * lily/parser.yy: Revert to MARK scalar.
126 2002-07-21 Han-Wen <hanwen@cs.uu.nl>
128 * lily/accidental.cc (accurate_boxes): add function to represent
129 flat with 2 boxes. Improves flat-flat accidental spacing.
131 * lily/accidental-placement.cc (stagger_apes): try to arrange accs
132 in a C form, with the top accidental closet to the chord.
134 * lily/stem.cc (get_default_stem_end_position): don't crash if
136 (get_default_stem_end_position): idem for stem-shorten.
138 * mf/feta-toevallig.mf: enlarge flat bbox.
140 * input/regression/lyrics-extender.ly: new file.
142 * lily/lyric-extender.cc (brew_molecule): don't add
143 right-trim-amount if extender is broken.
145 * scripts/ly2dvi.py (global_latex_preamble): bugfix (thanks Werner).
147 2002-07-21 Jan Nieuwenhuizen <janneke@gnu.org>
149 * Documentation/index.texi: Add pointers to new regression and
152 * Documentation/user/converters.itely:
153 Documentation/user/invoking.itexi: Some small fixes for uniform
156 * input/allfontsize.ly, size*.ly: New files, moved from
159 * input/font20.ly, font-body.ly: New files, moved from input/test.
161 * input/font*.ly: New files, moved from input/test.
163 * input/test/*.ly: Remove empty files, fix broken ones.
165 * input/test/different-time-signatures.ly: Add FIXME marker;
166 comment-out broken code.
168 * Documentation/regression-test.tely: Comment-out, add
169 obsolete-marker and url to regression-test-dir.
171 * input/test/GNUmakefile:
172 * input/regression/GNUmakefile: Add rule for lys-to-tely.py.
174 * input/regression/+.ly:
175 * input/test/+.ly: New file.
177 * input/test/cue-notes.ly: better example
179 * Documentation/user/refman.itely (Font selection): font size doco
181 * input/mutopia/F.Schubert/standchen.ly: note bugfix
183 * lily/stem.cc: rewrite of scoring to give sane results on knee
186 * lily/beam.cc (set_stem_lengths): extend stems for gapped tremolo
188 (connect_beams): chop off beaming outside the beam. Fixes problem
191 * lily/score-engraver.cc (initialize): error if feta20.afm
193 2002-07-19 Han-Wen <hanwen@cs.uu.nl>
195 * scm/engraver-documentation-lib.scm
196 (document-property-operation): add properties to context
199 * scm/documentation-lib.scm (pad-string-to): align info menus.
201 2002-07-18 Jan Nieuwenhuizen <janneke@gnu.org>
203 * debian/GNUmakefile: Remove lilypond.links.
205 * debian/: Debian patch (Anthony Fok).
207 * debian/lilypond.links: Remove, as per Anthony's request.
209 * aclocal.m4: Regenerate.
211 * stepmake/aclocal.m4: Add --with-kpathsea-include,
212 --with-kpathsea-lib options.
214 * scripts/mup2ly.py: Cut-n-paste include missing lilylib.
216 * stepmake/stepmake/compile-vars.make:
217 * stepmake/stepmake/executable-rules.make:
218 * stepmake/stepmake/python-module-rules.make:
219 * stepmake/stepmake/shared-library-rules.make: Use ALL_LDFLAGS, to
220 guard agains user override of LDFLAGS.
222 * Documentation/user/refman.itely: Compile fix for \mark #'(music ...).
224 * Documentation/user/internals.itely: Use ly-set-mus-property!.
226 * cygwin/mknetrel: New file.
228 * cygwin: New directory. Moved Cygwin stuff from
229 Documentation/windows.
231 * Documentation/windows/fix-suffixes.sh:
232 * buildscripts/walk.sh: Junk.
234 * aclocal.m4: Regenerate.
236 * buildscripts/walk.sh: Remove.
238 * stepmake/stepmake/topdocs-targets.make:
239 * stepmake/stepmake/help2man-rules.make:
240 * stepmake/stepmake/generic-vars.make:
241 * stepmake/make/stepmake.make:
242 * Documentation/user/GNUmakefile:
243 * make/stepmake.make:
244 * make/lilypond-vars.make:
246 * stepmake/aclocal.m4: Remove builddir cruftyness.
248 * stepmake/stepmake/c++-rules.make: Use ALL_CXXFLAGS, to guard
249 agains user override of CXXFLAGS.
251 * stepmake/stepmake/c++-vars.make (ALL_CXXFLAGS): Include CXXFLAGS.
253 * stepmake/stepmake/c-rules.make: Use ALL_CFLAGS, to guard
254 against user override of CFLAGS.
256 * stepmake/stepmake/c-vars.make (ALL_CFLAGS): Include CFLAGS.
258 2002-07-17 Han-Wen <hanwen@cs.uu.nl>
260 * GNUmakefile.in: distribute lexer-gcc-3.1.sh as well
262 * lily/music.cc (LY_DEFINE): change ly-set-mus-property to
265 * lily/grob.cc (LY_DEFINE): change ly-set-grob-property to ly-set-grob-property!
267 * lily/parser.yy (Repeated_music): shift duration log for tremolo
268 repeats, instead of klutzing around.
270 * lily/chord-tremolo-engraver.cc (acknowledge_grob): set X parent
271 of stem tremolo grobs.
273 * scm/music-functions.scm (shift-duration-log): new function, add
274 to duration log of all notes.
276 * lily/duration.cc: add compression factor arguments to
278 compression-factor, dot-count, duration-log: add scheme functions.
280 * lily/mark-engraver.cc (process_music): allow \mark to take a
281 number as argument as well.
283 2002-07-16 Han-Wen <hanwen@cs.uu.nl>
285 * lily/rest.cc (after_line_breaking): only translate the whole
286 rest if we have more than 1 staff line
288 2002-07-16 Han-Wen Nienhuys <hanwen@cs.uu.nl>
290 * VERSION: release 1.5.68
292 * scripts/lilypond-book.py: fixes by Tom Cato Amundsen.
294 2002-07-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
296 * lily/beam-quanting.cc (score_forbidden_quants): split beam
297 quanting functionality.
298 (quanting): argh. Forgot how linear interpolation works. Bugfix.
300 * Documentation/index.texi (Top): add whole-big-page documentation.
302 * lily/side-position-interface.cc (general_side_position):
303 Subtract parent offset iso. adding it. (Huh? How could this have
306 * lily/clef-engraver.cc (stop_translation_timestep): add staff to
307 OctavateEight support.
309 * scripts/lilypond-book.py: add smallverbatim option.
311 * lily/beam.cc (quanting): bugfix. Behave sanely when no visible
314 * lily/accidental-placement.cc (position_accidentals): add padding
315 property. Increase default setting to 0.2.
317 2002-07-15 Han-Wen <hanwen@cs.uu.nl>
319 * lily/paper-column.cc (before_line_breaking): urg. bugfix.
321 * lily/separating-line-group-engraver.cc (finalize): don't replace
322 right-items, but add to list. This fixes a bug when a staff ends
323 with cross-staff voice switching away.
325 2002-07-14 Han-Wen <hanwen@cs.uu.nl>
327 * input/mutopia/GNUmakefile: move mutopia/ to input/mutopia/
329 * lily/beam.cc (quanting): add explicit support for cross-staff
330 beaming: make slope penalty larger.
332 * lily/beam.cc: use common refpoints throughout. This fixes many
335 * lily/paper-column.cc (before_line_breaking): bug fix.
337 * lily/volta-engraver.cc (process_music): do something sensible if
340 * scripts/lilypond-book.py (make_pixmap): opps. Do png conversion
343 * Documentation/user/refman.itely (Global layout): made section on
344 global layout, added spacing documentation.
346 * lily/staff-symbol.cc (brew_molecule): change ragged right for
347 staff symbols. See comments.
349 2002-07-14 Jan Nieuwenhuizen <janneke@gnu.org>
351 * lily/voice-devnull-engraver.cc (acknowledge_grob): Use proper
352 spelling for always. In solo a due mode, kill spanners when the
353 other thread has solo.
355 * lily/thread-devnull-engraver.cc (acknowledge_grob): In solo a
356 due mode, kill everything when the other thread has solo.
358 * lily/a2-engraver.cc (acknowledge_grob): In solo a due mode, do
359 not set directions when we have solo.
361 * lily/part-combine-music-iterator.cc (process): Set property
362 "othersolo" if the other thread has solo.
364 2002-07-13 Han-Wen <hanwen@cs.uu.nl>
366 * VERSION: 1.5.67 released.
368 * lily/beam.cc (calc_stem_y): fix beams on quarter notes.
370 * lily/stem-tremolo.cc (brew_molecule): add code for stem tremolos.
372 * lily/auto-beam-engraver.cc (create_beam_p): remember Beam
373 settings at the start of a potential auto beam.
375 * lily/include/sequential-iterator.hh (class Sequential_iterator):
376 bugfix: protect music list from GC.
378 * Documentation/user/introduction.itely: misc fixes.
380 * scripts/ly2dvi.py (run_latex): show latex error log. Ask for
381 bugreport if lilypond is killed by a signal.
383 * input/regression/beam-funky.ly: new file
385 * lily/input-smob.cc (make_input): GUILE 1.7 compatibility fixes.
387 * lily/beam.cc: complete rewrite of multiplicity. This fixes 16th
389 (quanting): add french beaming support (property french-beaming)
390 (stem_beams): removed.
392 i2002-07-12 Mats Bengtsson <matsb@s3.kth.se>
394 * lily/beam.cc (after_line_breaking): Set correct stem lengths
395 also when beam positions are set manually.
396 (consider_auto_knees): Do not use automatic knees if the directions
397 are set manually by the user.
399 2002-07-12 Han-Wen <hanwen@cs.uu.nl>
401 * input/regression/grace-auto-beam.ly: new file
403 * input/regression/grace-unfold-repeat.ly: new file
405 * lily/auto-beam-engraver.cc (test_moment): never start on grace moments.
407 * lily/forbid-break-engraver.cc (start_translation_timestep): skip
408 grace notes for break-forbidding. Breaks during grace notes are
409 handled by Bar_engraver.
411 * lily/unfolded-repeat-iterator.cc: Reimplement
412 Unfolded_repeat_iterator, Volta_repeat_iterator using
413 Sequential_iterator. All grace functionality from {} carries over
416 * lily/sequential-iterator.cc: new file: form baseclass for
417 sequential music iterator and unfolded/volta repeat iterator.
419 2002-07-11 Han-Wen Nienhuys <hanwen@cs.uu.nl>
421 * lily/include/debug.hh: deprecate.
423 * lily/spacing-spanner.cc (set_springs): add support for
424 common-shortest-duration field.
426 * lily/parser.yy (translator_spec_body): allow \set in \translator
427 {} block. This is the same as \override, here.
429 * lily/score-engraver.cc (one_time_step): don't warn about columns
430 when skipTypesetting == #t.
432 * lily/spacing-spanner.cc (musical_column_spacing): change
433 ragged right function to produce natural spacing.
435 2002-07-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
437 * lily/paper-column.cc (before_line_breaking): update
438 #'bounded-by-me field for suicided items. This fixes crazy
439 spacing in \partcombine scores.
441 2002-07-10 Jan Nieuwenhuizen <janneke@gnu.org>
443 * config.hh.in: Add HAVE_SSTREAM.
445 * configure.in: Add check for sstream header.
447 2002-07-09 Mats Bengtsson <matsb@s3.kth.se>
449 * flower/source-file.cc: Fix compatibility with older g++.
451 2002-07-09 Jan Nieuwenhuizen <janneke@gnu.org>
453 * input/twinkle.ly: Bugfix: no automaticMelismata.
455 2002-07-08 Han-Wen <hanwen@cs.uu.nl>
457 * mutopia/J.S.Bach/Cembalo-Partitas/: remove
459 * ly/engraver-init.ly (ScoreContext): turn on automaticMelismata
462 * lily/voice-devnull-engraver.cc (try_music):
463 lily/thread-devnull-engraver.cc: use proper spelling for #'always.
465 * lily/unfolded-repeat-iterator.cc (Unfolded_repeat_iterator):
466 copy here_mom_ too. This fixes an obscure bug with combining
467 partcombine and repeat
469 * lily/chord-tremolo-iterator.cc (Chord_tremolo_iterator): copy
472 2002-07-07 Han-Wen <hanwen@cs.uu.nl>
474 * mutopia/J.S.Bach/pa.ly: remove
475 * mutopia/J.S.Bach/Duette/: remove
477 * scm/font.scm (change-rhs-size): add support for "paper19.ly"
479 * VERSION: 1.5.66 released
481 * scm/grob-description.scm (all-grob-descriptions): add
482 item-interface where necessary
484 * lily/score-engraver.cc (one_time_step): warn for grobs created
485 during stop_translation_timestep().
487 * lily/a2-engraver.cc: restrict acknowledged grob types.
489 * lily/chord-name-engraver.cc: remove acknowledge_grob().
491 * Documentation/user/tutorial.itely: doc carnage.
493 2002-07-06 Rune Zedeler <rune@zedeler.dk>
495 * Documentation/user/refman.itely: Documented accidentals
496 (incl. bugs), subdivideBeams and drum/percussion notation.
498 * lily/translator-group.cc, lily/include/translator-group.hh
499 (Translator_group::set_children_property): removed.
501 * lily/accidental-engraver.cc: don't use
502 Translator_group::set_children_property.
504 * lily/new-accidental-engraver.cc: Added. More correct
505 accidentals, but wrong spacing.
507 * lily/beam-enagraver.cc, lily/auto-beam-engraver.cc: Small
508 subdivideBeams-fixes.
510 * scm/drums.scm: Small changes/fixes in instruments and maps
512 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
514 * lexer-gcc-3.1.sh: Fixes and more comments.
516 * Documentation/topdocs/INSTALL.texi: Add comment about gcc-3.0.4
519 * lily/include/stream.hh:
520 * lily/include/moment.hh:
521 * lily/include/midi-stream.hh:
523 * lily/scm-option.cc:
525 * lily/my-lily-lexer.cc:
527 * lily/midi-stream.cc:
530 * lily/includable-lexer.cc:
531 * flower/include/source-file.hh:
532 * flower/include/parray.hh:
533 * flower/include/dictionary.hh:
534 * flower/include/array.icc:
536 * flower/source-file.cc:
537 * flower/getopt-long.cc: gcc-3.1 fixes.
539 * stepmake/stepmake/generic-targets.make: Add comment about warning.
541 * lexer-gcc-3.0.patch: Add comment, and a fix for installations
542 that have an unpatched flex and gcc-3.1.x.
544 * Documentation/topdocs/INSTALL.texi: Add comments and
545 instructions on gcc-3.1.x.
547 * lexer-gcc-3.1.sh: New file.
549 * aclocal.m4: regenerate.
551 * stepmake/aclocal.m4: Version compare fix.
553 2002-07-05 Han-Wen <hanwen@cs.uu.nl>
555 * ly/engraver-init.ly (RhythmicStaffContext): stems up by default.
557 * lily-guile.hh: remove guile 1.3 compatibility, add 1.4
558 compatibility functions.
560 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
562 * Documentation/windows/lilypond.hint (requires): Add libintl2.
564 2002-07-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
566 * VERSION: 1.5.65 released.
568 * scripts/lilypond-book.py: patches by Tom Cato Amundsen. Adds
569 support for the columnsep when using the geometry package.
571 2002-07-04 Jan Nieuwenhuizen <janneke@gnu.org>
573 * scm/grob-property-description.scm (minimum-space-pair): Remove.
575 * Documentation/windows/README:
576 * Documentation/windows/guile-1.5.6-1.5.6.jcn2.patch:
577 * Documentation/windows/changelog: New file.
579 * Documentation/windows/lilypond.hint (requires): libguile14 (was:
582 2002-07-03 Han-Wen <hanwen@cs.uu.nl>
584 * lily/grob-property.cc (HASHING_FOR_MUTABLE_PROPS): experiment:
585 try hash tables for mutable properties.
587 * lily/align-interface.cc: remove aligned-interface and props
588 minimum-space-pair extra-space
590 * lily/grob-property.cc: new file move grob prop handling here.
592 * lily/lily-guile.cc (ly_deep_copy): add vector support
594 * lily/break-substitution.cc (do_break_substitution): add vector
597 * lily/spanner.cc: remove extend_spanner_over_* funcs.
599 2002-07-02 Jan Nieuwenhuizen <janneke@gnu.org>
601 * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Workaround for
602 broken Debian gcc version string: 'gcc (GCC) 3.1.1 20020606
605 2002-07-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
607 * lily/bar-check-iterator.cc (process): change
608 barbarCheckNoSynchronize to barCheckSynchronize
610 * Documentation/user/bugs.itexi: move to introduction, remove.
612 * Documentation/user/*.itexi: general carnage/cleanage.
614 * Documentation/user/internals.itely: split most of file into
615 internal documentation (.scm and .cc)
617 * buildscripts/make-font-dir.py: put designsize in to X font
620 * make/lilypond.redhat.spec.in: postinstall bugfix
622 2002-07-02 Juergen Reuter <reuter@ipd.uka.de>
624 * lily/ambitus-engraver.cc, lily/ambitus.cc: Various bugfixes:
625 avoid segfault on undefined ambitus pitch; avoid wasteful creation
626 of pitch smobs; defer computation of centralCPosition beyond first
627 timestep to catch also clefs outside of the current voice context.
629 2002-07-02 Han-Wen <hanwen@cs.uu.nl>
631 * input/template/satb.ly: new file
633 2002-07-01 Jan Nieuwenhuizen <janneke@gnu.org>
635 * Documentation/user/glossary.tely: Precautions for lilypond-book:
636 don't use spaces after @lilypond options.
638 * Documentation/topdocs/INSTALL.texi (Top): Remove generic Guile
641 2002-07-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
643 * VERSION (MAJOR_VERSION): 1.5.64
645 2002-06-30 Jan Nieuwenhuizen <janneke@gnu.org>
647 * lily/grob.cc (mark_smob): don't mark parents, explain why.
649 * tex/lilyponddefs.tex: Define outputscale only once.
651 2002-06-29 Jan Nieuwenhuizen <janneke@gnu.org>
653 * configure.in: Require guile 1.4 or newer (was 1.3.4?).
655 2002-06-29 Han-Wen <hanwen@cs.uu.nl>
657 * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
659 * lily/separating-line-group-engraver.cc (acknowledge_grob):
660 ignore grobs with no-spacing-rods set.
662 * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
664 * scm/grob-description.scm (all-grob-descriptions): sort list
666 2002-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
668 * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
671 * Documentation/topdocs/FAQ.texi (Installation): Add
672 lilypond-devel list. Add faq about font removal. Fix faq about
673 generating and running ./configure.
675 2002-06-26 Jan Nieuwenhuizen <janneke@gnu.org>
677 * scm/chord-name.scm (chord::name->text): Workaround: clean markup
680 * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
682 * input/test/ambitus.ly:
683 * lily/ambitus-engraver.cc:
685 * lily/include/ambitus.hh: New file.
687 * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
689 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
691 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
692 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
693 scm/basic-properties.scm, scm/grob-description.scm,
694 scm/grob-property-description.scm: Add support for ambitus.
696 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
698 * lily/text-spanner.cc: add some props to interface (patch
701 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
703 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
704 dereference valid Grob.
706 * configure.in: Quoting fixes.
708 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
710 * VERSION: 1.5.63 released
712 * lily/grob-scheme.cc: new file
714 * lily/break-substitution.cc: split up break substitution
715 functionality, and make a special constant stack-space version for
716 lists of grobs. This should fix the problems of lily in
717 combination with pthreads/qthreads.
719 * lily/grob.cc (mark_smob): bugfix: mark other parent too.
721 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
723 * lily/text-spanner.cc (setup_pedal_bracket):
724 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
725 Fix the lengths of mixed-style piano pedal brackets.
727 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
729 * Documentation/user/tutorial.itely (First steps): Add missing
732 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
733 about guile --with-threads. Hopefully this issue can be resolved
734 rsn, but maybe we should even add warnings for the standard Debian
735 and Red Hat packages?
737 * configure.in: Warn if guile is configured to use threads. Maybe
738 we should make this an error (ie, add to REQUIRED list?)
740 * config.make.in (PACKAGE_NAME):
741 (PACKAGE, package): Don't hardcode.
743 * VERSION (PACKAGE_NAME): Typo fix.
745 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
747 * input/tutorial/brahms-*.ly: new tutorial files.
749 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
751 * scm/script.scm (default-script-alist): fermata is up.
753 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
754 dynamic line spanner when there is no crescendo to connect.
756 * lily/tie.cc (get_control_points): add test to avoid flat ties.
758 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
760 * lily/note-collision.cc (check_meshing_chords): don't crash if no
763 * scm/music-functions.scm (toplevel-music-functions): new
764 definition. Functions to apply automatically. Removes the need for
765 explicitly doing \apply #voicify-music
767 * lily/grob.cc (do_break_substitution): rename function, use
768 global var for criterion argument. Reduces stack usage a little.
770 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
772 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
773 visibility-lambda to break-visibility
775 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
777 * input/bugs/part-combiner.ly: New file.
779 * lily/include/spacing-interface.hh: New file.
781 * lily/include/spaceable-element.hh: Remove.
783 * input/test/script-priority.ly: New file.
785 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
787 * lily/system.cc (output_lines): kill grobs that are only for spacing.
789 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
791 * lily/fingering-engraver.cc (make_script):
792 * lily/script-engraver.cc (process_music):
793 * lily/text-engraver.cc:
794 (process_acknowledged_grobs): Remove hard coded script-priority.
796 * flower/warn.cc: Cleanup.
798 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
801 * aclocal.m4: Regenerate.
803 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
805 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
806 * lily/include/lily-guile.hh: Only include config.h if necessary.
808 * Changelog: cvs changes ml archive test #8.
810 * lily/slur-engraver.cc: Layout fix.
812 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
814 * ly/engraver-init.ly (RhythmicStaffContext): add
815 Dot_column_engraver, resurrect barlines
817 * VERSION: 1.5.62 released.
819 * lily/engraver-group-engraver.cc (do_announces): rename
820 create_grobs () to process_acknowledged_grobs().
822 * lily/grob.cc (programming_error): add programming_error with
825 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
826 fail if a beam doesn't have stems.
828 * lily/engraver-group-engraver.cc (do_announces): scary change in
829 calling convention of create_grobs(): no create_grobs() call
830 before acknowledge_grobs().
832 * lily/sequential-music-iterator.cc (skip): add support for grace
835 * lily/music.cc (Music): fix very subtle and nasty memory
836 corruption bug. Typical symptom: "programming_error: Rhythmic_req
839 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
841 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
843 * ly/engraver-init.ly (RhythmicStaffContext): add
847 * lily/parser.yy: various protection fixes. Less objects are now
850 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
852 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
855 * Documentation/windows/zlily-profile.sh:
856 * Documentation/windows/post-lilypond.sh: Assume normal
857 prefix=/usr for lilypond.
859 * lily/musical-request.cc (length_mom): Display origin with error.
861 * input/test/duration-check.ly: New file.
863 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
866 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
867 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
870 * autogen.sh: Regenerate.
872 * Documentation/topdocs/INSTALL.texi:
874 * stepmake/configure.in:
875 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
876 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
877 ./configure once again requires autoconf == 2.13.
879 * stepmake/autogen.sh: Check for autoconf == 2.13.
881 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
883 * lily/parser.yy (open_request_parens): add input locations to
884 open and close parens.
886 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
888 * lily/tuplet-bracket.cc:
889 * lily/text-spanner.cc:
890 * lily/piano-pedal-engraver.cc:
891 * scm/grob-description.scm:
892 * scm/grob-property-description.scm: Changed the
893 edge-width property of brackets to edge-widen. Changed the sign of
894 the left element of edge-widen so a pair of equal numbers produces
895 a symmetrical bracket.
897 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
899 * ly/espanol.ly: added.
901 * lily/simple-spacer.cc (solve): remove assert.
903 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
905 * lily/forbid-break-engraver.cc (class
906 Forbid_line_break_engraver): new engraver: forbid linebreaks
909 * lily/spacing-spanner.cc (loose_column): add another check: don't
910 move around bar lines as loose columns.
912 * scm/basic-properties.scm (default-break-barline): add pre-break
915 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
917 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
918 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
920 * scripts/lilypond-book.py (environment): Bugfix: update to new
921 TEXMF scheme, from ly2dvi.
923 * lily/lookup.cc (slur): Invoke bezier-bow.
925 * scm/tex.scm (bezier-bow):
926 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
927 (Previously named bezier-sandwich).
929 * scm/tex.scm (bezier-sandwich):
930 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
932 * make/lilypond.mandrake.spec.in (post):
933 * make/lilypond.suse.spec.in (post):
934 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
936 * tex/lilyponddefs.tex: Uncomment feta character support.
938 * Documentation/user/refman.itely (Pitches): Add espanol.ly
941 * ly/catalan.ly: Add comment about (spanish) -s suffix.
943 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
946 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
948 * GNUmakefile.in (short-examples):
949 (long-examples): Bugfix for --srcdir build.
950 (top-web): Rewrite weblist find command.
952 * stepmake/bin/config.sub:
953 * stepmake/bin/config.guess: Update from latest autotools.
956 * autogen.sh: Regenerate.
959 * stepmake/configure.in:
960 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
961 requires autoconf >= 2.50.
963 * stepmake/autogen.sh: Check for autoconf >= 2.50.
965 * Documentation/user/refman.itely: Bugfix for tablature example.
967 * Documentation/windows/compiling.texi: Update for new and
970 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
972 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
973 introduce base-shortest-duration
975 * lily/parser.yy (music_output_def_body): don't crash when \tempo
976 in unexpected \midi{} is found.
978 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
980 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
981 the use of make/ly.make for use as an external makefile. Probably
982 noone except for myself ever used this anyway.
984 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
985 to new $datadir convention (<package>/<version>).
987 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
989 * VERSION: 1.5.61 released
991 * Document/user/refman.itely: tablature doc and code updates by
992 Jean-Baptiste Lamy <jiba@tuxfamily.org>
994 * input/template/piano-dynamics.ly: bugfixes.
996 * lily/key-engraver.cc (try_music): read request only once. Don't
997 overwrite lastKeySignature. Call create_key() only once. This
998 fixes a bug with multiple equal key changes on polyphonic staffs.
1000 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1002 * scm/grob-description.scm: Add side-position-interface to TextSpanner
1004 * scm/grob-property-description.scm: Document the trill line type.
1006 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
1008 * stepmake/stepmake/generic-vars.make:
1009 * make/lilypond-vars.make:
1010 * GNUmakefile.in (builddir-setup): New setup for builddir run.
1011 Fixes LilyPond run from builddir for --srcdir builds.
1013 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
1016 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
1018 * scm/grob-description.scm (all-grob-descriptions): add
1019 font-family to RehearsalMark
1021 * scm/drums.scm: move over definitions from drum-pitch-init.ly
1023 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
1026 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
1028 * lilypond-mode.el: Propose saving before applying a command:
1029 for saved buffer set default command to LilyPond.
1031 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
1033 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
1036 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
1038 * Documentation/windows/lilypond-doc.hint: New file.
1040 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
1041 Bugfixes for --srcdir html-doc build.
1043 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
1044 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
1046 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
1048 * ly/script-init.ly (pralldown): add some scripts.
1050 * Documentation/user/refman.itely: many edits.
1052 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
1054 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
1055 direction, this breaks staffline avoidance of the bracket when
1058 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1060 * scripts/midi2ly.py: Fix handling of -o
1062 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
1064 * lily/molecule.cc (translate): set max distance to 100 cm.
1066 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1068 * VERSION: 1.5.60 released
1070 * lily/beam.cc: tremolo fix.
1072 * scripts/convert-ly.py: add tuplet-X-visibility rules.
1073 add VerticalExtent -> verticalExtent rules.
1075 * lily/axis-group-engraver.cc: consistent case for
1076 XxxxVerticalExtent properties.
1078 * Documentation/user/refman.itely (Tuplets): update
1079 tuplet-X-visibility properties.
1081 * input/test/defaultbars.ly: Corrected (thanks Mats)
1083 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1085 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
1087 * buildscripts/lilypond-profile.sh: override settings if
1088 LILYPONDPREFIX is set.
1090 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1092 * scripts/ly2dvi.py (non_path_environment): Fix typo
1094 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
1096 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
1098 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
1100 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
1102 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
1103 beam-engraver: use different engraver so we can mix normal and
1106 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
1108 * lily/beam.cc (shift_region_to_valid): Try to shift positions
1109 after slope-damping and concaveness check, so that short-stems are
1112 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
1114 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
1116 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
1118 * VERSION: 1.5.59 released
1120 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
1121 notice that missing features are exercise for user.
1123 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
1125 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
1126 (but alas, not partly precomputed) value for current_y when
1127 calculating stem length demerits.
1128 (calc_stem_y): Temporary precomputed factors fix.
1130 * lily/stem.cc (calc_stem_info): Take multiplicity into account
1133 * input/bugs/melisma-tie-rest.ly: New file.
1135 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
1137 * lily/stem.cc (calc_stem_info): remove min_y member, rename
1138 stuff. Remove kneeing stuff.
1140 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
1143 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
1149 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
1150 patch-level of version in minor-version string. Arg.
1152 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
1154 * ly/engraver-init.ly (TabStaffContext):
1155 enable TabStaff by default.
1157 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
1159 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
1161 * config.hh.in: Remove duplicate DIR_DATADIR entry.
1163 * aclocal.m4: Regenerate.
1165 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
1167 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
1169 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
1171 * lilypond-mode.el: Write notes with fewer keystrokes trough a
1172 "Quick notes"-interface.
1174 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
1176 * input/regression/non-empty-text.ly: Update example with outdated
1179 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
1181 * scripts/convert-ly.py: add textNonEmpty rule
1183 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
1185 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
1187 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
1188 using translate-robust add_molecule instead of add_at_edge.
1189 Bugfix for #(lines (finger "" "1")).
1191 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
1193 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
1196 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
1200 * Documentation/user/refman.itely: Bugfix: add node Repeats and
1201 MIDI. Regenerate menu. Fix @end example.
1203 * lily/accidental.cc: Add cautionary-style to interface.
1205 * mf/feta-beugel.mf (code): use autometric macros for braces.
1206 This fixes input/bugs/braces.
1208 * lily/afm.cc (count): return numOfChars, not size of array
1209 (always equals 256.)
1211 * lily/script.cc (before_line_breaking): postpone setting the
1212 X-parent of vertical scripts. This fixes the case of scripts on
1215 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
1217 * scm/grob-description.scm: fix alignment of barnumber: make sure
1218 it doesn't hit the G-clef.
1220 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
1221 startGraceMusic not startGraceContext).
1223 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
1225 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
1228 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
1230 * lily/accidental-engraver.cc: remove old accidental engraver,
1231 move new one to accidental-engraver.cc.
1233 * lily/local-key-item.cc: remove file
1235 * lily/include/local-key-item.hh: remove file
1237 * scripts/ly2dvi.py (make_preview): add --preview-resolution
1240 * lily/accidental.cc (brew_molecule): support for cautionary
1243 * lily/note-head.cc (internal_brew_molecule): warn if note head
1246 * lily/time-signature.cc (special_time_signature): remove warning
1247 about time signature.
1249 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
1250 reverse springs by limiting fixed-note space.
1252 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
1254 * stepmake/aclocal.m4: Bugfix: complain if program not found.
1256 * scripts/update-lily.py (next_version, prev_version, diff_name):
1257 New function. Patches now named name-prev-latest.diff.gz.
1258 Bugfix: import shutil.
1260 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1262 * input/tutorial/sammartini.ly: fix and document autochange
1265 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
1266 does produce .pdftex files.
1268 * lily/note-collision.cc (check_meshing_chords): move file from
1269 collision.cc, implement merged note heads (there you go, Drarn :-)
1271 * input/regression/collision-heads.ly: new file
1273 * VERSION: 1.5.57 released.
1275 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
1277 * mf/parmesan-heads.mf, scm/grob-description.scm,
1278 scm/grob-property-description.scm, scm/interface-description,
1279 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
1280 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
1281 lily/include/ligature-engraver.hh,
1282 lily/include/ligature-bracket.hh, lily/parser.yy,
1283 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
1284 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
1285 lily/ligature-head.cc, lily/ligature-engraver.cc,
1286 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
1287 implemented white mensural ligatures (still with a big list of
1291 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1293 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
1294 Documentation/user/internals.itely.
1296 * lily/function-documentation.cc: new file. Infrastructure for
1297 self documenting Scheme functions.
1299 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
1301 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
1303 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1305 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
1306 and * (as in "([^>]*)?")
1308 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
1310 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
1311 Add info about CVS. Stable/development are currently 1.4/1.5,
1312 both at lilypond.org.
1314 * autogen.sh: Generate.
1316 * stepmake/configure:
1317 * configure: Regenerate.
1319 * stepmake/stepmake/automatically-generated.sub.make: Keep
1320 original first line.
1322 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
1324 * stepmake/stepmake/generic-targets.make (configure): Generate
1327 * GNUmakefile.in (SCRIPTS):
1328 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
1330 * stepmake/autogen.sh: New file.
1332 * configure: Check for g++ >= 2.95.
1334 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
1335 c/c++ version checking.
1337 * flower/include/string.hh: Typo fix.
1339 * lily/include/midi-item.hh: Remove stray i.
1341 * Documentation/windows/GNUmakefile: Avoid collapsed directory
1344 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
1345 constructs '//' from arguments.
1347 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1349 * scm/lily.scm (ly-load): show SCM filenames if verbose.
1351 * lily/lily-guile.cc (init_functions): add ly-verbose function.
1353 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
1355 * flower/include/{pointer,tuple}*: removed.
1357 * VERSION: released 1.5.56
1359 * scm/music-functions.scm (check-start-chords): function to check
1360 for chords without \context. Apply automatically from parser.
1362 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1364 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
1367 * scm/output-lib.scm: fix ez notation stems.
1369 * lily/paper-outputter.cc: various fixes to speed up compilation.
1371 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1373 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
1375 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
1377 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
1378 determine latex input.
1380 * stepmake/bin/install-sh: Include latest from libtool.
1382 * stepmake/configure:
1383 * configure: Regenerate.
1385 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
1386 (USER_CFLAGS): Bugfix, include CPPFLAGS.
1388 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
1390 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
1391 REQUIRED programs and version. Try to continue configuring, list
1392 missing programs at the end, but don't generate a GNUmakefile if
1393 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
1394 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
1395 fancy for some older systems.
1397 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1399 * lily/score-engraver.cc (typeset_all): sanity check for items
1400 that are Y parent to spanner.
1402 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
1405 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1407 * lily/*.cc: remove as many iostream use as possible.
1409 * flower/ : remove text-db, text-stream, data-file.
1411 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
1413 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
1414 (completize_preamble): don't barf if no preamble present.
1415 (do_file): allow extensions on --output
1417 * scripts/ly2dvi.py (make_preview): make automatic preview of
1418 first system. Small cleanups.
1420 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1422 * scripts/lilypond-book.py (make_pixmap): output png directly.
1424 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
1427 * lily/parser.yy (My_lily_parser): comment out code. (Causes
1428 problems with recent bison releases).
1430 * make/lilypond.redhat.spec.in: add pfa fonts to X.
1432 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
1434 * lilypond-font-lock.el: Fixes the order of the note name list.
1436 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
1438 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
1439 capability, --verbose option, rlimit hack.
1441 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1443 * lily/piano-pedal-engraver.cc: cleanups.
1445 * lily/accidental.cc (after_line_breaking): add break tie
1448 * lily/text-engraver.cc (try_music): don't typeset fingerings
1450 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
1452 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
1454 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
1456 * lily/*.cc: change gh_str02scm() to ly_str02scm().
1458 * lily/spacing-spanner.cc (note_spacing): Bound
1459 shortest-playing-length by the distance to next note. This should
1460 fix chord tremolo spacing.
1462 * VERSION: 1.5.55 released
1464 * lily/stem.cc (off_callback): invisible stem over whole note is
1465 centered on note now.
1467 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
1468 stem-tremolo is stem now.
1470 * input/mozart-hrn*.ly: many corrections.
1472 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
1473 support for dynamic scripts.
1475 * lily/accidental-placement.cc (position_accidentals): check for
1476 collisions as well: should avoid those heads too.
1478 * lily/beam.cc (check_concave): allow undefined gap and
1479 threshold. Change the meaning of threshold/gap == 0.0.
1480 (check_concave): skip Stolba concaveness check if we have a knee
1483 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1485 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
1486 tremolos of dotted duration.
1488 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
1490 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
1491 downstroke again. Sigh.
1493 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
1494 script on note head.
1496 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
1498 * lily/slur.cc (add_column): allow slur over rest.
1500 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
1502 * lily/beam.cc: move scoring constants out of code
1504 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
1506 * mf/feta-nummer.mf: scalability fixes.
1508 * mf/feta-nummer-code.mf: fixes for 5, 8.
1510 * mf/feta-klef.mf: G clef fixes.
1512 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
1514 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
1516 * scripts/lilypond-book.py: %Newline, rather than glue macros
1517 after \end{verbatim}.
1519 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
1521 * Documentation/user/lilypond-book.itely:
1522 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
1525 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
1527 * scm/grob-property-description.scm (beam-space): Junk.
1529 * lily/beam.cc (space_function): New method.
1530 (get_interbeam): Call space-function.
1532 * scm/grob-description.scm (Beam): Initialize space-function with
1533 Beam::space_function.
1535 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
1536 Beam.space-function. Don't quantise grace beams.
1538 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1540 * VERSION: 1.5.54 released
1542 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
1545 * Documentation/index.texi: add PDF links.
1547 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
1549 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
1550 compare #'glyph as strings.
1552 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
1554 * scripts/ly2dvi.py (setup_environment): fix by Mats.
1556 * lily/stem.cc (head_count): Change function name. Change property
1557 to #'note-heads i.s.o. #'heads.
1558 (position_noteheads): Kern noteheads for invisible stems.
1559 (before_line_breaking): Do position_noteheads() for whole note
1562 * lily/accidental-placement.cc (position_accidentals): First
1563 determine refpoints, only then determine extents.
1565 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1567 * lily/accidental-placement.cc (position_accidentals): use all
1568 note heads for note head-skyline.
1570 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
1572 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
1574 * Documentation/windows/setup.hint (requires): Add gsview dependency.
1576 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
1578 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
1580 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
1582 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1584 * mf/feta-schrift.mf: lighter staccato.
1586 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
1588 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
1590 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
1592 * VERSION: 1.5.53 released
1594 * scm/lily.scm (ly-load): use primitive-load for loading.
1596 * lily/misc.cc: remove quantise_iv()
1598 * lily/*.cc: pass read-only arrays by reference.
1600 * lily/grob.cc (common_refpoint_of_array): new function. Try to
1601 use common_refpoint_of_{array, list} when possible.
1603 * lily/include/accidental-placement.hh: new file.
1605 * lily/accidental-placement.cc (alignment_callback): position
1606 accidentals in a better way.
1608 * lily/skyline.cc: new file. Compute distances for collections of
1611 * lily/include/skyline.hh: new file
1613 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
1615 * lily/accidental.cc (class Accidental_interface): grob for a
1618 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
1621 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
1622 together with new accidental-interface.
1624 * lily/include/*.hh: remove spurious set_interface() decls.
1626 * lily/key-signature-interface.cc (brew_molecule): add padding for
1627 natural signs. Make natural typesetting like the sharp.
1630 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
1631 is now slightly curved, not straight.
1634 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
1636 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
1638 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
1639 more strictly. Use more clever regular expressions. Commented regexps.
1641 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
1643 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
1645 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
1647 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
1648 to control width of staff symbol in ragged-right mode (by request
1651 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
1652 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
1653 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
1654 added support for ligature brackets (needed when transcribing
1657 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
1659 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
1660 Fontify notes more strictly.
1662 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
1664 * mf/feta-din-code.mf: dynamic z sign.
1666 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
1668 * lilypond-mode.el: Prevent recoloring strings and comments.
1670 * lilypond-font-lock.el: Handle block comments: block comments
1671 can have also ordinary comments inside.
1673 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
1675 * lily/stem.cc (get_default_dir): set direction to CENTER if
1676 invisible. Various other fixes to deal with invisible stems and
1677 stem-direction == CENTER.
1679 * lily/rest-collision.cc (do_shift): take direction from note if
1682 * input/regression/tie-grace.ly: new file.
1684 * lily/tie-engraver.cc (create_grobs): fix tied graces.
1686 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1687 knee correction. Fixes tight spacing for knees.
1689 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1691 * VERSION: 1.5.52 released
1693 * lily/*.cc: add some undocced properties.
1694 scm/grob-description.scm: idem.
1696 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1698 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1699 multi-measure rests like "R1 *4" and scheme (typically has '#'
1700 in the beginning). Small fixes. Add few reserved words.
1702 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1704 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1707 * Documentation/windows/installing.texi: Suggest gswin32c (console
1708 program) for getting the version. Layout fixes.
1710 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1712 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1713 windows viewing commands, remove silly comment about Yap.
1715 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1717 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1718 configure to find kpathsea on for example Slackware 8.0.
1720 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1722 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1723 by default: avoid "1" over single bar rests.
1725 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1726 and correct the handling of geometry options.
1728 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1730 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1731 implementation for Class::has_interface automatically. Junk all
1732 other implementations.
1734 * lily/grob.cc (internal_get_grob_property): also typecheck
1735 property reads. Catches even more undocced properties. Bugfixing
1736 left for the uninspired masses.
1738 * lily/beam.cc: remove end_after_line_breaking().
1740 * lily/grob.cc (calculate_dependencies): remove list support for
1743 * lily/font-size-engraver.cc: only do font-interface.
1745 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1747 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1750 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1752 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1753 brackets using arpeggio requests.
1755 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1756 molecule-callback to use for drawing the brackets.
1758 * Documentation/user/refman.itely:
1759 * input/test/chord-bracket.ly: Chord brackets documented
1761 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1763 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1765 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1767 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1769 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1770 direction tuplets on beams.
1772 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1774 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1776 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1778 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1779 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1780 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1781 submenu to "LilyPond"-menu.
1783 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1784 an interface to play midi.
1786 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1788 * input/regression/script-stack-order.ly: new file.
1790 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1792 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1794 * mf/feta-din-code.mf: kerning for dynamics.
1796 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1798 * input/regression/dynamics-glyphs.ly: new file
1800 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1802 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1803 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1805 * Documentation/windows/gs-profile.sh:
1806 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1807 moved to gs/gsview windows packages.
1809 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1811 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1812 finding out the duration. Fixes chord tremolo bug.
1814 * lily/completion-note-heads-engraver.cc (process_music): Set
1815 correct duration for all requests of the broken notes.
1817 * input/regression/completion-heads.ly: Added example of
1818 Completion_heads_engraver.
1820 * lilypond-mode.el: Added "2Midi" command
1822 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1824 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1825 edge-width, edge-height and shorten-pair properties for tuplet
1828 * lilypond-indent.el: Support for blinking of matching parentheses
1830 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1832 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1833 cleanups of piano pedal brackets.
1835 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1837 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1839 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1841 * mf/feta-new-code.mf: new dynamic f sign.
1844 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1846 * mf/feta-new-code.mf: new dynamic p sign.
1848 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1850 * lily/note-spacing.cc (stem_dir_correction): only do
1851 beam-correction if a beam is there.
1853 * lily/stem.cc (duration_log): change from flag_i (); better
1855 (get_default_stem_end_position): fix dot/flag collision code.
1857 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1859 * VERSION: release 1.5.50
1861 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1862 unit spring here. Reduces number of warning messages.
1864 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1866 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1868 * scm/generic-property.scm: remove generic-property, property-engraver
1870 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1872 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1874 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1876 * scm/*.scm: remove volta, hairpin and tuplet functions.
1878 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1879 note column for notes/stems/dots that already have parents. Fixes
1880 nested grace contexts.
1882 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1884 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1885 get too curved slurs.
1887 * scm/slur.scm (default-slur-extremity-offset-alist)
1888 (default-phrasing-slur-extremity-offset-alist): Move slur
1889 attachments further away from note-head, vertically. Also, leave
1890 a horizontal gap between slur and stem end.
1892 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1894 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1896 * input/regression/spacing-grace-duration.ly: new file
1898 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1899 for shortest durations.
1901 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1902 extent of the mm rest.
1904 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1907 * lily/tuplet-bracket.cc (make_bracket): new function
1908 (get_x_offset): new function; make tuplet brackets align on stems
1909 if stem has same direction.
1910 (parallel_beam): be anal about matching bracket to tuplet.
1912 * lily/lookup.cc (line): new function Lookup::line().
1914 * scm/tex.scm (dashed-line): change -line to -system in names.
1916 * lily/box.cc (add_point): new function.
1918 * flower/include/interval.hh: new function add_point ().
1919 new function widen()
1921 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1923 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1925 * scm/grob-property-description.scm (number-threshold): Add
1928 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1929 rest if #measures > number-threshold. Use padding (well, fake
1932 * scm/font.scm (make-style-sheet): New styles: mark-number,
1934 (paper20-style-sheet-alist): Add bigger bold fonts.
1936 * lily/mark-engraver.cc (process_music): Use style mark-number or
1939 * .cvsignore: Ignore all kinds of lilypond input and output.
1941 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1943 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1945 * lily/staff-symbol.cc (brew_molecule): make line thickness
1948 * lily/*.cc: replace stafflinethickness by linethickness.
1950 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1952 * input/regression/beam-concave.ly: Add to-be-considered-concave
1955 * lily/beam.cc (check_concave): Add check for large gap between an
1956 inner notehead and the line through outer noteheads.
1958 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1959 value 2.0 staff-space.
1961 * scm/grob-property-description.scm (concaveness-gap): Add
1964 * input/mozart-hrn3-allegro.ly: Fix typo.
1966 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1968 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1969 lily/note-head-engraver: improved implementation of roundfilledbox
1970 (according to Han-Wen's request)
1972 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1973 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1974 lily/simple-spacer.cc: ragged-right alignment
1976 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1978 * input/regression/spacing-note-flags.ly: new file
1980 * input/regression/spacing-rest.ly: new file
1982 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1984 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1985 all grace notes tight (not only the column directly following a
1988 * scm/grob-description.scm (all-grob-descriptions): don't make
1989 mm-rests larger than normal.
1991 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1992 curved. Remove white space at the right of flags.
1994 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1996 * ports/ports.make: Bugfix: ignore CVS directories.
1998 * stepmake/.cvsignore: New file.
2000 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
2002 * lily/note-spacing.cc (stem_dir_correction): don't correct when
2003 there is a flag on the stem.
2005 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
2007 * scm/grob-property-description.scm (measure-length):
2008 measure-length grob property.
2010 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
2011 better spacing for breakable columns when they're juxtaposed: use
2012 measure length if applicable
2014 * lily/timing-engraver.cc (start_translation_timestep): store
2015 measure length in breakable column at start of measure.
2017 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
2019 * ROADMAP: Add description for ports dir, to check email upon
2022 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
2024 * VERSION: 1.5.48 released
2026 * lily/multi-measure-rest.cc (symbol_molecule): split off from
2028 (set_spacing_rods): Use symbol_molecule() to determine minimum
2030 (church_rest): split off from brew_molecule()
2031 (big_rest): split off from brew_molecule(). Construct using
2034 * mf/feta-eindelijk.mf: junk multi measure rest.
2036 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
2038 * lily/multi-measure-rest.cc (add_column): remove columns property.
2040 * lily/dynamic-engraver.cc (process_music): add more verbose warning
2042 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
2045 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
2047 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
2048 keywords covered, dropped some non-keywords, include R- and 128-notes
2050 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
2052 * Code clean-up: Junk multiple implementations of ledger line
2053 creation in note_head, custos, and porrectus. This is important
2054 since there soon will be some more applications of ledger lines to
2055 come (e.g. ambitus engraver).
2057 * Make thickness of ledger lines adjustable. This is essential
2058 for mensural notation.
2060 * Fix some bugs in the current ledger_line implementation, most
2061 notably that of the horizontal extent of ledger lines which equals
2062 at least the extent of the metafont ledger_line character, and
2063 which grows(!) if the desired extent shrinks below this limit.
2065 * roundfilledbox: variable blotdiameter
2067 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
2069 * VERSION: 1.5.47 released
2071 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
2073 * lily/porrectus.cc: change line-thickness to thickness, change
2074 stem-direction to direction.
2076 * scm/backend-documentation-lib.scm (check-dangling-properties):
2077 Automatically detect doc'ed properties that are not in an interface
2079 * scm/grob-property-description.scm: property cleanup. Remove many
2080 paper-column props that are non-existent.
2082 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
2083 the grob has a molecule-callback.
2085 * lily/*.cc: remove many set_interface() calls, and their
2088 * input/regression/spacing-knee.ly: new file
2090 * input/regression/spacing-clef-first-note.ly: new file
2092 * lily/staff-spacing.cc (get_spacing_params): different spacing
2093 for pref matter to note at start of line, halfway during line.
2095 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
2096 correction only if stems have same direction (i.e. not for
2097 stem-clef combination).
2098 (stem_dir_correction): maximal correction for knees.
2100 * lily/*.cc: many updates to interface descriptions.
2102 * lily/grob.cc (internal_set_grob_property): add interface check
2103 for every set_grob_property call
2105 * lily/*.cc: document interface stuff in C++
2107 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
2109 * lily/volta-bracket.cc: naming: change volta spanner to
2112 * input/bugs/*.ly: cleanup, remove lots of files.
2114 * buildscripts/mf-to-table.py (write_ps_encoding): generate
2115 .encoding file. WARNING: upgrade to pktrace 1.0.3
2117 * mf/feta-toevallig.mf: change PS name for parentheses.
2119 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2121 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
2124 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
2126 * lily/scope.cc: remove file .
2128 * lily/include/scope.hh: remove file. Remove Scope class
2132 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
2133 score_forbidden_quants): ): take out of SCM, pass parameters so
2134 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
2136 (calc_stem_y): robustness: take care of last_visible_stem == 0.
2139 * lily/lily-guile.cc (ly_unit): return internal unit.
2141 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
2143 * lily/paper-outputter.cc (output_version): output internal unit
2144 from Paper_outputter
2146 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2148 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2150 * scripts/ly2dvi.py: clean up old .*pk font caching code.
2152 * scm/ps.scm: Use uppercase postscript font names for the standard
2155 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
2156 Add all available TeX Type1 fonts, including Feta, to the
2157 Ghostscript font path.
2159 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
2160 version (affects the FontName) in lilypond.map.
2162 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
2163 documentation file to fetaNNlist.ly to avoid name collisions between
2164 lilypond generated .tex file and font .tex macros file.
2167 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
2169 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
2170 made mensural longa and (semi-)brevis leaner
2172 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
2174 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
2175 clean-up: moved bezier shape and slope from porrectus to lookup
2177 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
2178 and /usr/share/texmf/fonts
2180 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2182 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
2184 * lily/text-spanner.cc (brew_molecule): add #'thickness
2185 (brew_molecule): add corrections for thickness in molecule padding.
2187 * lily/line-spanner.cc (line_atom): make function private
2189 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
2190 discover bounding box. This solves the cropping problem.
2192 * lily/bar-check-iterator.cc (process): Only resynchronize bar
2193 check when it fails. This fixes the combination of grace notes
2196 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
2198 * lily/repeated-music.cc (minimum_start): new Scheme callable function
2199 (first_start): new Scheme callable. This will fix repeated music
2200 starting with grace notes.
2202 * lily/music.cc (start_mom): check start-moment-function grob property.
2204 * VERSION: 1.5.45 released
2206 * input/regression/system-extents.ly: new regression test. Test
2209 * lily/system.cc: rename LineOfScore into System
2211 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
2213 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
2214 (ly_get_extent): new Scheme function ly-get-extent
2216 * ps/lilyponddefs.ps: use output-scale for line-x
2219 * scm/ps.scm (font-load-command):
2222 2002-03-20 Rune Zedeler <rune@zedeler.dk>
2224 * lily/beaming-info.cc: Stupid typo fixed
2226 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2227 support for cross-context auto-accidentals.
2228 Now the engraver can stay in Staff-context and see other contexts
2230 Changed properties: autoAccidentals, autoCautionaries
2232 * lily/translator-group.cc (set_children_property):
2233 Function added recursively setting the same property (deep_copied)
2234 for all children of a Translator_group.
2236 * ly/property-init.ly: added commands
2237 \pianoAccidentals \voiceAccidentals
2238 \modernVoiceAccidentals \modernVoiceCautionaries
2240 * ly/engraver-init.ly: Correct initialization of new accidentals.
2242 * scm/translator-property-description.scm: Updated
2244 * input/regression/accidental-voice.ly: Added
2246 * Documentation/regression-test.tely: Added new test
2248 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2250 * VERSION: 1.5.44 released
2252 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
2254 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
2256 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
2259 * tex/feta*.tex: remove.
2261 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
2262 all software dealing with it.
2264 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
2266 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
2267 (this fixes pdf output). Drop awk dependency.
2269 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
2270 dimensions (linewidth) are in mm.
2272 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
2274 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
2276 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
2278 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
2280 * VERSION: 1.5.43 released
2282 * scm/beam.scm (beam-dir-majority-median): if majority is
2283 undecided, use median. Removes a forced dir in sarabande.
2285 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
2287 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
2289 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
2290 widths, heights and shortens are now customisable properties.
2292 * scm/grob-description.scm, scm/grob-property-description.scm: New
2293 properties added to PianoPedalBracket, unnecessary
2294 Y-offset-callbacks removed from *Pedal, undocumented properties
2297 * Documentation/user/refman.itely: Piano pedal updates.
2299 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
2301 * scm/grob-property-description.scm:
2302 * scm/interface-description.scm: Remove old stuff.
2304 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
2305 0.48 (previously 0.42).
2306 (Beam): Remove old stuff.
2309 * lily/stem-tremolo.cc:
2311 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
2312 (previously space-function).
2314 * stepmake/bin/add-html-footer.py: Website title fix.
2316 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2318 * scripts/ly2dvi.py (environment): use new font searching setup.
2320 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
2322 * lily/tfm.cc (dimensions): make code dimension independent
2324 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
2327 * tex/lily-ps-defs.tex: scaling for PS points and MM.
2329 * lily/include/dimensions.hh: try MM as internal unit.
2331 * scm/*.scm: remove invoke-dim1
2333 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2335 * GNUmakefile.in (fontpaths): add fontpaths target,
2337 * make/mutopia-targets.make: add PDF rules.
2339 * make/mutopia-rules.make: add pdf rule.
2341 * buildscripts/mutopia-index.py (list_item): add PDF.
2343 * buildscripts/lilypond-profile.sh (TEXMF): typo.
2345 * make/lilypond-vars.make: set TEXMF for the new font setup.
2347 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2349 * VERSION: 1.5.42 released
2351 * mf/feta-schrift.mf: endless twiddling of Tr.
2353 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
2354 endless twiddling with the bulb shape.
2356 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
2357 little smaller if there is an accidental.
2359 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2361 * buildscripts/lilypond-profile.sh:
2363 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
2364 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
2365 Implement new font installation strategy
2367 * Documentation/misc/fontinstallation (TEXMF): Documentation of
2368 the new font installation strategy.
2370 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
2373 * input/test/staff-size.ly: Simplified using StaffContainer
2375 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
2378 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
2380 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
2382 * lily/beam.cc (score_stem_lengths): new quanting stuff
2383 (score_forbidden_quants): Second and third beam quant stuff.
2385 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
2387 * lily/beam.cc (least_squares): Remember least-squares-dy for
2389 (quantise_interval): Don't quant to dy steeper that
2390 least-squares-dy. Return empty interval if no sane quants found.
2391 (quantise_position): Try quantise_interval until we have
2392 acceptable solution.
2394 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2396 * scm/interface-description.scm (beam-interface): Update.
2398 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2400 * VERSION: 1.5.41 released
2402 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
2403 optima serifs on top of t, bottom of r.
2405 * mf/feta-bolletjes.mf: make ledger line rounder.
2407 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
2409 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
2412 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
2414 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
2415 well as text pedal indications and a combination of both. All
2416 pedal indications are horizontally aligned on a line spanner.
2418 * lily/text-spanner.cc: Edge-width property added to use in
2419 bracketed piano pedals. Function setup_sustain_pedal added to set
2420 the dimensions of the brackets.
2422 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
2423 some of the *Pedal properties tweaked.
2425 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
2426 edge-width (TextSpanner) properties.
2428 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
2430 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
2431 fontified identifiers list.
2433 * input/test/pedal.ly: New pedal features added.
2435 * Documentation/user/refman.itely: New pedal features documented.
2438 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2440 * lily/include/new-beam.hh: Previously new-beam.hh
2441 * lily/beam.cc: Previously new-beam.cc
2442 (least_squares): Bugfix: don't barf on beams with less than two
2443 visible stems (tremolos).
2446 * scm/grob-description.scm (Beam): Junk old beam stuff.
2449 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2453 * mf/feta-eindelijk.mf: new 8th rest.
2455 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
2456 stick out of staffline
2458 * scripts/lilypond-book.py: fixes for texi regular expressions.
2460 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
2462 * lily/include/new-beam.hh:
2463 * lily/new-beam.cc: New file.
2465 * flower/include/interval.hh:
2466 * flower/include/interval.tcc (delta): New method.
2467 (swap): Now public (previously private).
2469 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
2470 1 staff-line-thickness. Sadly, this makes dy quanting problems
2471 (dy quants allowed should depend on actual left y) more visible.
2473 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
2475 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
2477 * scm/grob-property-description.scm (concaveness-threshold): Add
2478 typecheck and description.
2480 * scm/grob-description.scm (Beam): Remove obsolete properties, add
2481 concaveness-threshold (previously concaveness).
2483 * lily/beam.cc (check_concave): Remove choices and debugging
2484 stuff: use best concaveness calculation.
2485 (quantise_dy): Remove choice. Try to never make a slope steeper
2486 by quantising, but certainly never quantise a slope away.
2487 (check_stem_length_f): Remove choice. In case of lengthening
2488 alowed, always lengthen to ideal length.
2490 * Documentation/index.texi: Fix FAQ url.
2492 * Documentation/topdocs/INSTALL.texi: Add information about fink,
2493 compile fix and 1.4 specific fix that doesn't hurt 1.5.
2495 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
2497 * VERSION: 1.5.39 released
2499 * lily/simple-spacer.cc (add_rod): rods take precedence over
2500 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
2502 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
2504 * lily/note-spacing.cc (get_spacing): only insert space for
2505 accidentals if necessary.
2507 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
2509 * lily/spacing-spanner.cc (musical_column_spacing): new
2510 function. Have correct spacing from note to end-of-line as well.
2512 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
2514 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
2516 * darwin.patch: New file.
2518 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
2519 code. Shorten stems by fraction of stems to be shortened.
2521 * lily/stem.cc (get_default_stem_end_position): Shorten only half
2522 of shorten value for boundary cases.
2524 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
2525 (Beam): Set beamed-stem-shorten to (1.0 0.5).
2527 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
2529 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
2531 * scm/grob-description.scm (Beam): Add concaveness. Replace
2532 Beam::cancel_suspect_slope with Beam::check_concave.
2534 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
2535 set slope to horizontal if concaveness > Beam.concaveness. This
2536 handles cases that kludgy cancel_suspect_slope was meant to catch
2538 (cancel_suspect_slope): Remove.
2540 2002-03-12 Rune Zedeler <rune@zedeler.dk>
2542 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
2543 stemLeftBeamCount and stemRightBeamCount to equal 0.
2546 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
2548 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
2549 fixed spacing for pref matter, if the next column is musical, and
2552 * lily/note-spacing.cc (stem_dir_correction): Use correct
2553 discretionary for stem-bar spacing.
2555 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
2557 * VERSION: 1.5.38 released
2559 * lily/grob.cc (warning): Use cause tracking to give more
2560 meaningful errors from the backend.
2562 * lily/property-iterator.cc (check_grob): Warn if setting grob
2563 property in unknown grob.
2565 * mf/feta-toevallig.mf: brushed stems for natural sign.
2567 * lily/molecule.cc (align_to): don't translate empty molecule.
2568 (this triggers a very subtle bug in time-signature.)
2570 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
2572 * lily/spring.cc: remove file.
2574 * input/regression/spacing-stem-bar.ly: new file
2576 * lily/score.cc (run_translator): resurrect point-and-click
2578 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
2581 * lily/spacing-spanner.cc (find_shortest): Shortest note for
2582 spacing is now globally determined, using the most common shortest
2583 note. Notes that are shorter are spaced geometrically, and with
2584 expand hints. This makes spacing more even, and measures that have
2585 very short notes won't be that stretched out.
2587 * mf/feta-klef.mf: F-clef fixes, documentation on the
2588 shape. (WARNING: font changed.)
2590 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
2592 * lily/simple-spacer.cc (add_columns): support for infinitely
2595 * lily/staff-spacing.cc (get_spacing_params): space after
2596 prefatory matter is fixed.
2598 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
2600 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
2601 barline following an upstem.
2603 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
2604 function from next_notes_correction().
2605 (bar_y_positions): idem.
2607 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2609 * input/regression/break.ly (texidoc): bugfix: escape \ in
2612 * lily/staff-spacing.cc (next_notes_correction): Correct the
2613 spacing of a note following a barline.
2616 2002-03-04 Glen Prideaux
2618 * mf/feta-solfa.mf: Shaped note heads
2620 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
2622 * VERSION: 1.5.37 released
2624 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
2625 left-align molecule.
2627 * lily/break-align-interface.cc (do_alignment): completely
2628 rewritten. Now it does not use Align_interface anymore, but a
2629 separate routine. Like StaffSpacing, it reads space-alist from the
2630 breakable grobs. This allows you to set spacing using
2632 \property Staff.Clef \override #'space-alist = '(....stuff....)
2634 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
2635 to Bar_line. Move files around as well.
2637 * lily/time-signature.cc (time_signature): left align time signatures.
2639 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
2640 Corrections of the glyph shape C. Comments added.
2642 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2644 * lily/spacing-spanner.cc: move from third-try.cc; rename
2645 Third_spacing_spanner to Spacing_spanner.
2647 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
2648 spacing stuff. Much cleaner now, and we prepare for neat spacing
2649 tricks around bar lines and such.
2651 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
2652 variables with themselves. (Ouch.)
2654 * lily/span-bar.cc (brew_molecule): don't try to span bars that
2657 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2661 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2664 * lily/music.cc (ly_get_mus_property): typechecking
2665 (ly_set_mus_property): idem
2666 (ly_make_music): idem
2667 (ly_music_name): idem
2669 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2671 * lily/note-spacing.cc (stem_dir_correction): correction for
2672 same stem notes as well.
2674 * lily/pitch.cc (pitch_transpose): stricter typechecking
2676 * mf/parmesan*mf: magnification fixes.
2678 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2680 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2682 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2683 documenting the font. (Doesn't work for parmesan at the moment)
2685 * Documentation/user/appendices.itely (The Feta font): Add list of
2686 Feta font symbols with names.
2688 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2691 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2693 * lily/translator-group.cc (ly_set_trans_property): typechecking
2694 (ly_get_trans_property): typechecking.
2696 * lily/font-metric.cc (ly_text_dimension): typechecking
2697 (ly_find_glyph_by_name): idem.
2699 * scm/bass-figure.scm (brew-complete-figure): support for
2702 * lily/grob.cc (ly_get_paper_var): new function
2704 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2706 * VERSION (PATCH_LEVEL): 1.5.35 released.
2708 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2709 (bracket): New function.
2711 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2712 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2714 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2717 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2720 * lily/grob.cc (ly_get_grob_property): be anal about types.
2721 (ly_set_grob_property): idem
2723 * lily/figured-bass-engraver.cc (process_music): move molecule
2724 building completely to Scheme
2726 * lily/include/musical-request.hh (class Bass_figure_req): Add
2729 * lily/parser.yy (bass_figure): add support for space figure.
2731 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2733 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2735 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2736 (ly_align_to_x): new function ly-align-to!
2738 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2739 function ly-get-font
2741 * mf/feta-nummer.mf: include normal-space dimension.
2743 * lily/collision.cc (check_meshing_chords): don't merge collisions
2746 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2749 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2751 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2753 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2755 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2758 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2761 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2762 scm/grob-description.scm: added mensural fermata symbol
2764 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2766 * VERSION: 1.5.34 released.
2768 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2770 * lily/staff-symbol-referencer.cc (callback): assume that
2771 staff-position is unset in general.
2773 * input/regression/rest-pitch.ly: new file.
2775 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2778 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2780 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2781 as Scheme option. Run regression test by default with
2782 internal-type-checking.
2784 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2786 * lily/lily-guile.cc (type_check_assignment): changed functions.
2788 * scm/*description*.scm: be anal about typechecks. Some changes
2789 for internal variable names.
2791 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2793 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2795 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2797 * VERSION: 1.5.33 released.
2799 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2800 flare_path everywhere (c-clef, numbers).
2802 * lily/bar-number-engraver.cc (process_music): also print bar
2803 number if measure starts with grace note.
2805 * input/regression/grace-bar-number.ly: new test.
2807 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2809 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2812 * scm/music-functions.scm (voicify-music): split chords into
2813 different voices automatically.
2815 * lily/music.cc (ly_music_list_p): new function
2817 * lily/music-sequence.cc (do_relative_octave): robustification
2819 * scm/music-functions.scm: many utility functions
2821 * lily/music.cc (ly_set_mus_property): add type checks to the
2822 Scheme property assignment.
2824 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2827 * mf/lilypond.map: .map file from Mats' page.
2829 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2831 * Some more parmesan related fixes;
2833 * Custos: varying shape (in particular, stem length), depending on the
2834 vertical position of the custos (on staffline / between stafflines);
2836 * Custos: added grob property "neutral-direction" (same semantics as
2837 with stem); introduced new grob property "neutral-position";
2839 * Time-signature: print a warning when resorting to default layout.
2841 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2843 * lily/translator-group.cc (add_fresh_simple_translator): remove
2844 function; initialize() is called through
2845 Translator_group::initialize().
2847 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2848 for the neighbors of a loose column.
2850 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2851 position loose columns so that they don't collide.
2853 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2855 * VERSION: 1.5.32 released.
2857 * scm/font.scm: remove font-name symbol.
2859 * mf/GNUmakefile: use pktrace for making PFAs
2861 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2863 * lily/rest-collision.cc (do_shift): read direction field from
2864 rest-column in case of note-rest collision. This should fix some
2865 problems with rest collisions.
2867 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2869 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2872 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2873 property. Read pitch directly from #'cause.
2875 * mf/feta-puntje.mf: bugfix
2877 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2879 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2881 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2883 * Documentation/windows/compiling.texi: Update.
2885 * Documentation/index.texi: Add link to orphaned compiling for
2888 * Documentation/footer.html.in: Comment fix.
2890 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2892 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2894 * VERSION: 1.5.31 released
2896 * lily/new-spacing-spanner.cc: remove file.
2898 * lily/third-try.cc (do_measure): only take spacings into account
2899 if they pertain to the column pair under consideration. This fixes
2900 spacing bug when mixing eighths triplets and normal eighths.
2902 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2903 lines don't take up space anymore. Document why in note-head.cc
2906 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2908 * lily/font-interface.cc (get_font): reinstate
2909 #'font-magnification. See input/regression/font-magnification.ly
2910 (get_font): Change the definition of #'font-name grob property.
2912 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2913 that have a #'cause field.
2915 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2917 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2919 * mf/GNUmakefile: remove metapost stuff
2921 * stepmake/aclocal.m4: remove metapost detection stuff.
2923 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2925 * mf/GNUmakefile (FET_FILES):
2926 (FONT_FILES): Include parmesan.
2928 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2931 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2933 * Documentation/user/refman.itely (Paper size): Quote braces.
2935 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2937 * stepmake/aclocal.m4: fixed bison version check to be more
2940 * lily/stem.cc (position_noteheads): fix for cluster chords.
2942 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2944 * python 2.2 support.
2946 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2948 * VERSION: 1.5.30 released
2950 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2952 * Documentation/user/refman.itely (Dynamics): add a note about
2955 * scm/grob-description.scm: add a 'translator-type? object
2956 property, so that \property Foo.Bar =\turnOff doesn't cause
2959 * lily/translator-group.cc (add_fresh_group_translator): make
2960 new add-translator functions to make distinction between fresh and
2961 used group-translators. Fixes problem with scripts on auto-changing voice
2963 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2964 add to Score_performer. Fixes bar checks in MIDI
2966 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2967 heads. Fixes many quirks with ties.
2969 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2970 in the grob property #'cause, instead of using Grob_info.
2972 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2973 staff context, fixing dot alignment on collisions.
2975 * lily/beam-engraver.cc (try_music): remove can't find beam start
2976 warning, so that skipTypesetting won't complain.
2978 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2980 * Documentation/user/refman.itely (Paper size): Documentation fix,
2983 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2985 * scm/grob-description.scm: \breathe: Use feta font comma by default
2987 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2989 * input/template/piano-dynamics.ly (pedal): Simplified
2991 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2993 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2995 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2997 * lilypond-mode.el (LilyPond-command-query): ignore case.
2999 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3001 * VERSION: 1.5.29 released
3003 * all files: change 2001 to 2002 in headers globally
3005 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
3006 cheese") font. WARNING: fonts changed.
3008 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
3010 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
3012 * mf/*.mf: Added some more vaticana/solesmes style font symbols
3014 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
3016 * mf/*.mf: Fixed a few typos in various .mf files
3018 2002-01-17 Rune Zedeler <rune@zedeler.dk>
3020 * mf/: added macro soft_penstroke
3022 softened some glyphs
3023 redrawn triangular noteheads
3025 added classical quarter rest
3027 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
3029 * lily/bar.cc: Bugfix: repeat dots when even number of staff
3030 lines and staff_space>=2
3032 * lily/rest.cc: Use default rests when current style glyphs not
3034 \property Staff.Rest \override #'style = #'classical
3036 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
3038 * input/bugs/first-tie.ly: New file.
3040 * input/bugs/spacing-clash.ly: New file.
3042 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
3046 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
3048 * lilypond-indent.el: New file providing indentation for
3049 parenthesised blocks of lilypond code in Emacs
3051 * lilypond-font-lock.el: Changes to the syntax table to facilitate
3052 indentation and handle block comments properly. Distinguish
3053 accents from close-brackets in fontification.
3055 * lilypond-mode.el: LilyPond-indent-command set appropriately.
3057 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
3059 * Documentation/windows/installing.texi:
3060 * Documentation/windows/compiling.texi: Include from 1.4.10.
3062 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
3064 * input/bugs/first-midi-tie.ly: New file.
3066 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
3068 * VERSION: 1.5.28 released
3070 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
3071 illicit beams on [c4 c4] etc.
3073 * lily/bar-check-iterator.cc (Bar_check_iterator): new
3074 file. Make separate iterator for Bar_checks. Bar_check now happen
3075 outside engravers, meaning that you can use them with
3076 skipTypesetting. Associated changes in other files.
3078 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
3081 * lily/spacing-spanner.cc (stem_dir_correction): removed function
3083 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
3085 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
3087 * lily/stem.cc (set_spacing_hints): removed function
3089 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
3090 correction for spacing; now take vertical extents of the stem into
3093 * lily/third-try.cc: More hacking to get spacing working.
3095 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
3096 sits at staff level and creates note spacing objects. Scrap it
3097 again, and document why.
3099 * lily/include/group-interface.hh: rename functions.
3101 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
3103 * stepmake/stepmake/c++-rules.make:
3104 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
3106 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
3108 * make/lilypond-vars.make:
3109 * scripts/ly2dvi.py (setup_environment):
3110 * scripts/lilypond-book.py (setup_environment): Also set tex
3113 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3115 * VERSION: 1.5.27 released.
3117 * Documentation/user/refman.itely (Bar numbers): added bar number
3120 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
3123 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
3125 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
3126 spread the last few lines all over the last page of a score.
3128 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
3130 * lily/third-try.cc: 3rd try at revising spacing
3131 engine. Not yet finished.
3133 * lily/paper-column.cc (brew_molecule): print debugging marks on a
3136 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
3137 collecting past note heads.
3139 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
3142 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
3143 class. Keep a queue of grobs that are still playing in busyGrobs.
3145 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
3146 function. Use busyGrobs to detect playing notes.
3148 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
3150 * Documentation/topdocs/INSTALL.texi: Added note about broken
3151 python-2.1. Updated note for Debian's broken (well, broken for
3152 our use anyway) tex configuration.
3154 * scripts/lilypond-book.py (re_dict): python2.2 fix.
3156 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
3157 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
3159 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
3160 (But left margin of png's still misses a few pixels. Arg.)
3162 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
3164 * lilypond-mode.el (LilyPond-command-next-midi): Make
3165 possible to kill midi-process (using "C-c C-m").
3167 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
3169 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
3170 Convert strings with dimensions to numbers.
3172 * lily/volta-engraver.cc: only make a bracket for the top staff,
3173 as found in stavesFound.
3175 * lily/bar-number-engraver.cc: remove staff administration.
3177 * lily/mark-engraver.cc (acknowledge_grob): remove staff
3178 administration. This breaks support for invisible-staff.
3180 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
3181 symbols into stavesFound.
3183 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
3184 grobs, and put them into columns.
3186 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
3187 Engraver_group_engraver as a potential candidate for ack'ing grobs.
3189 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
3191 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
3192 midi section in the Emacs-mode, so it is possible to play certain
3193 score in a multiscore lilypond-file.
3195 2001-12-09 Rune Zedeler <rune@zedeler.dk>
3196 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
3197 (FIXME: not accessible from guile)
3199 * lily/accidental-engraver.cc: rewrote accidental-routines to get
3200 better support for Kurt Stone's suggestions.
3201 Removed properties: noResetKey, forgetAccidentals, autoReminders,
3203 Changed property: localKeySignature.
3204 Added properties: extraNatural, autoAccidentals,
3207 (BUGFIX: broken-tie-support destroyed in 1.5.16)
3209 * ly/property-init.ly: added commands
3210 \defaultAccidentals \modernAccidentals \modernCautionaries
3211 \noResetKey \forgetAccidentals
3213 * ly/engraver-init.ly: Correct initialization of new accidentals.
3215 * scm/translator-property-description.scm: The new properties
3218 * input/: Some examples added, some changed.
3220 * Documentation/regression-test.tely: Added quick test of new
3223 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3225 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
3228 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3230 * lily/beam.cc (before_line_breaking): Make beams without stems
3231 or with only one stem disappear.
3233 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3235 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
3236 files to have standardised HTML bibliography output. Update build
3237 docs to reflect this.
3239 * lily/include/simple-spacer.hh (struct Simple_spacer): add
3240 active_count_, so that we don't have to look for active springs
3243 * scm/interface-description.scm,scm/grob-property-description.scm:
3246 * lily/simple-spacer.cc (solve): Handle forced line breaks
3247 here. Fixes problems when combining linebreaks with non-fitting
3250 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
3252 * 1.4.9.jcn3 forward ports.
3254 * Really included .cvsignore.
3256 * Included Han-Wen's uu1 windows fixes.
3258 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
3260 * Added Cygwin setup.hint
3262 * Removed tex, python wrappers and postinstalls to go with Cywgin's
3263 tetex/texmf, python installations.
3265 * Updated cygwin installer.
3267 * ly2dvi: Don't accept filenames with spaces (+ fix).
3269 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
3271 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
3273 * lily/translator-def.cc: Remove manual symbol caching.
3275 * lily/script-column.cc (before_line_breaking): robustness check:
3276 don't crash if no direction set.
3278 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
3280 * scripts/pmx2ly.py (Parser.parse_header): more generic header
3284 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
3286 * lily/note-head.cc (head_extent): added to compute width without
3287 ledger lines. By default, ledger lines take up width now.
3289 * input/regression/fingering.ly: demonstrate auto fingering.
3290 Horizontal placement is still buggy.
3292 * lily/fingering-engraver.cc (class Fingering_engraver):
3293 added. Provides support for horizontal fingering scripts
3295 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
3297 * lily/side-position-interface.cc (add_staff_support): add staff
3298 only for Y-axis side positions.
3300 * lily/parser.yy (request_chord): Fix mem leak.
3302 * lily/musical-request.cc (transpose): moved to Music::transpose()
3304 * lily/include/grob-info.hh: Change music pointer to SCM, so we
3305 can store grobs as grob-creation cause as well.
3307 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
3308 handle when adding. Use precomputed symbols throughout lily.
3310 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
3311 track of spacing issues.
3313 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
3314 to keep track of staff spacing
3316 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
3318 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
3319 code clean from conditionals and have a concentrated sets of
3320 compatibility fixes for old guile versions.
3322 * Fixes for guile 1.4, including embedded ps.
3324 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3326 * lily/stanza-number-engraver.cc (process_music): allow pairs as
3327 well for markup texts.
3329 * lily/musical-request.cc (length_mom): kludge for null pointer.
3331 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
3333 * scm/lily.scm (sign): bugfix
3335 * CHANGES: Change log instated.
3337 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.