1 2002-07-24 Jan Nieuwenhuizen <janneke@gnu.org>
3 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Add
4 forcedBreak options and fix measure count comments.
6 * GNUmakefile.in: Junk intl.
8 * config.make.in (prefix): Prepend $(DESTDIR) to allow install
9 without overriding prefix.
11 * aclocal.m4: Regenerate.
13 * stepmake/aclocal.m4: Don't expand $prefix: fixes install with
22 * tex/GNUmakefile: use local_package_datadir iso datadir.
24 * make/substitute.make (ATVARIABLES): Add local_lilypond_datadir.
26 * aclocal.m4: Regenerate.
30 * stepmake/aclocal.m4: Cleanups and more conventional naming for
31 datadir ($prefix/share), package_datadir ($prefix/$package), and
32 local_package_datadir ($prefix/$package/$version).
34 * make/lilypond-vars.make:
36 * scripts/lilypond-book.py:
38 * scripts/midi2ly.py: use local_package_datadir iso datadir.
40 * GNUmakefile.in: build_datadir without version.
42 * lily/main.cc: Datadir cleanup.
44 * lily/text-item.cc (lookup_text):
45 * lily/music-output-def.cc (print_smob):
46 * lily/mensural-ligature.cc (brew_molecule):
47 * lily/beam-quanting.cc (score_slopes_dy, score_forbidden_quants):
50 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
52 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Warn when not
53 using 6 systems, like the original.
55 * input/test/count-systems.ly: New file.
57 * lily/spanner.cc (get_broken_into):
58 * lily/grob.cc (original_scm, line_scm): New function.
60 * lily/include/grob.hh (ly_scm2grob_array): Moved from
61 group-interface.hh and renamed.
62 (ly_grob_array2scm): New function.
64 2002-07-23 Juergen Reuter <reuter@ipd.uka.de>
66 * lily/ambitus-engraver.cc: bugfix: create ambitus grob during
69 2002-07-23 Han-Wen <hanwen@cs.uu.nl>
71 * lily/separation-item.cc (width): cache extent in extent-X
73 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
74 only add extent for non-musical column.
76 * lily/accidental-placement.cc (split_accidentals): new function
77 (get_relevant_accidental_extent): new function
79 * lily/staff-spacing.cc (next_note_correction): idem
81 * lily/separating-group-spanner.cc (find_rods): use conditional_width().
83 * scm/sketch.scm: fix roundfilledbox definition
85 * lily/lily-guile.cc (robust_list_ref): be sensible with negative
86 argument. This fixes too-long stems on half and quarter notes.
88 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
90 * Documentation/index.texi: Add, fix, change some links and names,
91 including dump of wiki wiki.
93 * Documentation/GNUmakefile (local-WWW): Slurp wiki.
95 * buildscripts/wiki-slurp.py: New file. Accept multiple pattern.
96 (unwiki): Replace local urls with <img src> too.
98 * Documentation/GNUmakefile (wiki-dump): New target.
100 * Documentation/header.html.in: Link to Documentation/index
101 renamed to Index (was other...).
103 * Documentation/regression-test.tely: Remove.
105 * make/lysdoc-targets.make (local-WWW): Add default targets .ps.gz
108 2002-07-22 Han-Wen <hanwen@cs.uu.nl>
110 * VERSION: 1.5.69 released
112 * lily/accidental-placement.cc (position_accidentals): document
115 * lily/skyline.cc (skyline_meshing_distance): bugfixes.
117 2002-07-22 Jan Nieuwenhuizen <janneke@gnu.org>
119 * input/regression/abe.ly:
120 * input/test/transposing.ly: Remove mention of mudela.
122 * scripts/lilypond-book.py (make_pixmap): Don't use quiet_system,
123 ie, don't redirect PNG output to /dev/null. Fixes lys-to-tely
126 * input/test/mark.ly:
127 * Documentation/user/refman.itely: Re-enable \mark #'() example.
129 * lily/parser.yy: Revert to MARK scalar.
131 2002-07-21 Han-Wen <hanwen@cs.uu.nl>
133 * lily/accidental.cc (accurate_boxes): add function to represent
134 flat with 2 boxes. Improves flat-flat accidental spacing.
136 * lily/accidental-placement.cc (stagger_apes): try to arrange accs
137 in a C form, with the top accidental closet to the chord.
139 * lily/stem.cc (get_default_stem_end_position): don't crash if
141 (get_default_stem_end_position): idem for stem-shorten.
143 * mf/feta-toevallig.mf: enlarge flat bbox.
145 * input/regression/lyrics-extender.ly: new file.
147 * lily/lyric-extender.cc (brew_molecule): don't add
148 right-trim-amount if extender is broken.
150 * scripts/ly2dvi.py (global_latex_preamble): bugfix (thanks Werner).
152 2002-07-21 Jan Nieuwenhuizen <janneke@gnu.org>
154 * Documentation/index.texi: Add pointers to new regression and
157 * Documentation/user/converters.itely:
158 Documentation/user/invoking.itexi: Some small fixes for uniform
161 * input/allfontsize.ly, size*.ly: New files, moved from
164 * input/font20.ly, font-body.ly: New files, moved from input/test.
166 * input/font*.ly: New files, moved from input/test.
168 * input/test/*.ly: Remove empty files, fix broken ones.
170 * input/test/different-time-signatures.ly: Add FIXME marker;
171 comment-out broken code.
173 * Documentation/regression-test.tely: Comment-out, add
174 obsolete-marker and url to regression-test-dir.
176 * input/test/GNUmakefile:
177 * input/regression/GNUmakefile: Add rule for lys-to-tely.py.
179 * input/regression/+.ly:
180 * input/test/+.ly: New file.
182 * input/test/cue-notes.ly: better example
184 * Documentation/user/refman.itely (Font selection): font size doco
186 * input/mutopia/F.Schubert/standchen.ly: note bugfix
188 * lily/stem.cc: rewrite of scoring to give sane results on knee
191 * lily/beam.cc (set_stem_lengths): extend stems for gapped tremolo
193 (connect_beams): chop off beaming outside the beam. Fixes problem
196 * lily/score-engraver.cc (initialize): error if feta20.afm
198 2002-07-19 Han-Wen <hanwen@cs.uu.nl>
200 * scm/engraver-documentation-lib.scm
201 (document-property-operation): add properties to context
204 * scm/documentation-lib.scm (pad-string-to): align info menus.
206 2002-07-18 Jan Nieuwenhuizen <janneke@gnu.org>
208 * debian/GNUmakefile: Remove lilypond.links.
210 * debian/: Debian patch (Anthony Fok).
212 * debian/lilypond.links: Remove, as per Anthony's request.
214 * aclocal.m4: Regenerate.
216 * stepmake/aclocal.m4: Add --with-kpathsea-include,
217 --with-kpathsea-lib options.
219 * scripts/mup2ly.py: Cut-n-paste include missing lilylib.
221 * stepmake/stepmake/compile-vars.make:
222 * stepmake/stepmake/executable-rules.make:
223 * stepmake/stepmake/python-module-rules.make:
224 * stepmake/stepmake/shared-library-rules.make: Use ALL_LDFLAGS, to
225 guard agains user override of LDFLAGS.
227 * Documentation/user/refman.itely: Compile fix for \mark #'(music ...).
229 * Documentation/user/internals.itely: Use ly-set-mus-property!.
231 * cygwin/mknetrel: New file.
233 * cygwin: New directory. Moved Cygwin stuff from
234 Documentation/windows.
236 * Documentation/windows/fix-suffixes.sh:
237 * buildscripts/walk.sh: Junk.
239 * aclocal.m4: Regenerate.
241 * buildscripts/walk.sh: Remove.
243 * stepmake/stepmake/topdocs-targets.make:
244 * stepmake/stepmake/help2man-rules.make:
245 * stepmake/stepmake/generic-vars.make:
246 * stepmake/make/stepmake.make:
247 * Documentation/user/GNUmakefile:
248 * make/stepmake.make:
249 * make/lilypond-vars.make:
251 * stepmake/aclocal.m4: Remove builddir cruftyness.
253 * stepmake/stepmake/c++-rules.make: Use ALL_CXXFLAGS, to guard
254 agains user override of CXXFLAGS.
256 * stepmake/stepmake/c++-vars.make (ALL_CXXFLAGS): Include CXXFLAGS.
258 * stepmake/stepmake/c-rules.make: Use ALL_CFLAGS, to guard
259 against user override of CFLAGS.
261 * stepmake/stepmake/c-vars.make (ALL_CFLAGS): Include CFLAGS.
263 2002-07-17 Han-Wen <hanwen@cs.uu.nl>
265 * GNUmakefile.in: distribute lexer-gcc-3.1.sh as well
267 * lily/music.cc (LY_DEFINE): change ly-set-mus-property to
270 * lily/grob.cc (LY_DEFINE): change ly-set-grob-property to ly-set-grob-property!
272 * lily/parser.yy (Repeated_music): shift duration log for tremolo
273 repeats, instead of klutzing around.
275 * lily/chord-tremolo-engraver.cc (acknowledge_grob): set X parent
276 of stem tremolo grobs.
278 * scm/music-functions.scm (shift-duration-log): new function, add
279 to duration log of all notes.
281 * lily/duration.cc: add compression factor arguments to
283 compression-factor, dot-count, duration-log: add scheme functions.
285 * lily/mark-engraver.cc (process_music): allow \mark to take a
286 number as argument as well.
288 2002-07-16 Han-Wen <hanwen@cs.uu.nl>
290 * lily/rest.cc (after_line_breaking): only translate the whole
291 rest if we have more than 1 staff line
293 2002-07-16 Han-Wen Nienhuys <hanwen@cs.uu.nl>
295 * VERSION: release 1.5.68
297 * scripts/lilypond-book.py: fixes by Tom Cato Amundsen.
299 2002-07-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
301 * lily/beam-quanting.cc (score_forbidden_quants): split beam
302 quanting functionality.
303 (quanting): argh. Forgot how linear interpolation works. Bugfix.
305 * Documentation/index.texi (Top): add whole-big-page documentation.
307 * lily/side-position-interface.cc (general_side_position):
308 Subtract parent offset iso. adding it. (Huh? How could this have
311 * lily/clef-engraver.cc (stop_translation_timestep): add staff to
312 OctavateEight support.
314 * scripts/lilypond-book.py: add smallverbatim option.
316 * lily/beam.cc (quanting): bugfix. Behave sanely when no visible
319 * lily/accidental-placement.cc (position_accidentals): add padding
320 property. Increase default setting to 0.2.
322 2002-07-15 Han-Wen <hanwen@cs.uu.nl>
324 * lily/paper-column.cc (before_line_breaking): urg. bugfix.
326 * lily/separating-line-group-engraver.cc (finalize): don't replace
327 right-items, but add to list. This fixes a bug when a staff ends
328 with cross-staff voice switching away.
330 2002-07-14 Han-Wen <hanwen@cs.uu.nl>
332 * input/mutopia/GNUmakefile: move mutopia/ to input/mutopia/
334 * lily/beam.cc (quanting): add explicit support for cross-staff
335 beaming: make slope penalty larger.
337 * lily/beam.cc: use common refpoints throughout. This fixes many
340 * lily/paper-column.cc (before_line_breaking): bug fix.
342 * lily/volta-engraver.cc (process_music): do something sensible if
345 * scripts/lilypond-book.py (make_pixmap): opps. Do png conversion
348 * Documentation/user/refman.itely (Global layout): made section on
349 global layout, added spacing documentation.
351 * lily/staff-symbol.cc (brew_molecule): change ragged right for
352 staff symbols. See comments.
354 2002-07-14 Jan Nieuwenhuizen <janneke@gnu.org>
356 * lily/voice-devnull-engraver.cc (acknowledge_grob): Use proper
357 spelling for always. In solo a due mode, kill spanners when the
358 other thread has solo.
360 * lily/thread-devnull-engraver.cc (acknowledge_grob): In solo a
361 due mode, kill everything when the other thread has solo.
363 * lily/a2-engraver.cc (acknowledge_grob): In solo a due mode, do
364 not set directions when we have solo.
366 * lily/part-combine-music-iterator.cc (process): Set property
367 "othersolo" if the other thread has solo.
369 2002-07-13 Han-Wen <hanwen@cs.uu.nl>
371 * VERSION: 1.5.67 released.
373 * lily/beam.cc (calc_stem_y): fix beams on quarter notes.
375 * lily/stem-tremolo.cc (brew_molecule): add code for stem tremolos.
377 * lily/auto-beam-engraver.cc (create_beam_p): remember Beam
378 settings at the start of a potential auto beam.
380 * lily/include/sequential-iterator.hh (class Sequential_iterator):
381 bugfix: protect music list from GC.
383 * Documentation/user/introduction.itely: misc fixes.
385 * scripts/ly2dvi.py (run_latex): show latex error log. Ask for
386 bugreport if lilypond is killed by a signal.
388 * input/regression/beam-funky.ly: new file
390 * lily/input-smob.cc (make_input): GUILE 1.7 compatibility fixes.
392 * lily/beam.cc: complete rewrite of multiplicity. This fixes 16th
394 (quanting): add french beaming support (property french-beaming)
395 (stem_beams): removed.
397 i2002-07-12 Mats Bengtsson <matsb@s3.kth.se>
399 * lily/beam.cc (after_line_breaking): Set correct stem lengths
400 also when beam positions are set manually.
401 (consider_auto_knees): Do not use automatic knees if the directions
402 are set manually by the user.
404 2002-07-12 Han-Wen <hanwen@cs.uu.nl>
406 * input/regression/grace-auto-beam.ly: new file
408 * input/regression/grace-unfold-repeat.ly: new file
410 * lily/auto-beam-engraver.cc (test_moment): never start on grace moments.
412 * lily/forbid-break-engraver.cc (start_translation_timestep): skip
413 grace notes for break-forbidding. Breaks during grace notes are
414 handled by Bar_engraver.
416 * lily/unfolded-repeat-iterator.cc: Reimplement
417 Unfolded_repeat_iterator, Volta_repeat_iterator using
418 Sequential_iterator. All grace functionality from {} carries over
421 * lily/sequential-iterator.cc: new file: form baseclass for
422 sequential music iterator and unfolded/volta repeat iterator.
424 2002-07-11 Han-Wen Nienhuys <hanwen@cs.uu.nl>
426 * lily/include/debug.hh: deprecate.
428 * lily/spacing-spanner.cc (set_springs): add support for
429 common-shortest-duration field.
431 * lily/parser.yy (translator_spec_body): allow \set in \translator
432 {} block. This is the same as \override, here.
434 * lily/score-engraver.cc (one_time_step): don't warn about columns
435 when skipTypesetting == #t.
437 * lily/spacing-spanner.cc (musical_column_spacing): change
438 ragged right function to produce natural spacing.
440 2002-07-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
442 * lily/paper-column.cc (before_line_breaking): update
443 #'bounded-by-me field for suicided items. This fixes crazy
444 spacing in \partcombine scores.
446 2002-07-10 Jan Nieuwenhuizen <janneke@gnu.org>
448 * config.hh.in: Add HAVE_SSTREAM.
450 * configure.in: Add check for sstream header.
452 2002-07-09 Mats Bengtsson <matsb@s3.kth.se>
454 * flower/source-file.cc: Fix compatibility with older g++.
456 2002-07-09 Jan Nieuwenhuizen <janneke@gnu.org>
458 * input/twinkle.ly: Bugfix: no automaticMelismata.
460 2002-07-08 Han-Wen <hanwen@cs.uu.nl>
462 * mutopia/J.S.Bach/Cembalo-Partitas/: remove
464 * ly/engraver-init.ly (ScoreContext): turn on automaticMelismata
467 * lily/voice-devnull-engraver.cc (try_music):
468 lily/thread-devnull-engraver.cc: use proper spelling for #'always.
470 * lily/unfolded-repeat-iterator.cc (Unfolded_repeat_iterator):
471 copy here_mom_ too. This fixes an obscure bug with combining
472 partcombine and repeat
474 * lily/chord-tremolo-iterator.cc (Chord_tremolo_iterator): copy
477 2002-07-07 Han-Wen <hanwen@cs.uu.nl>
479 * mutopia/J.S.Bach/pa.ly: remove
480 * mutopia/J.S.Bach/Duette/: remove
482 * scm/font.scm (change-rhs-size): add support for "paper19.ly"
484 * VERSION: 1.5.66 released
486 * scm/grob-description.scm (all-grob-descriptions): add
487 item-interface where necessary
489 * lily/score-engraver.cc (one_time_step): warn for grobs created
490 during stop_translation_timestep().
492 * lily/a2-engraver.cc: restrict acknowledged grob types.
494 * lily/chord-name-engraver.cc: remove acknowledge_grob().
496 * Documentation/user/tutorial.itely: doc carnage.
498 2002-07-06 Rune Zedeler <rune@zedeler.dk>
500 * Documentation/user/refman.itely: Documented accidentals
501 (incl. bugs), subdivideBeams and drum/percussion notation.
503 * lily/translator-group.cc, lily/include/translator-group.hh
504 (Translator_group::set_children_property): removed.
506 * lily/accidental-engraver.cc: don't use
507 Translator_group::set_children_property.
509 * lily/new-accidental-engraver.cc: Added. More correct
510 accidentals, but wrong spacing.
512 * lily/beam-enagraver.cc, lily/auto-beam-engraver.cc: Small
513 subdivideBeams-fixes.
515 * scm/drums.scm: Small changes/fixes in instruments and maps
517 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
519 * lexer-gcc-3.1.sh: Fixes and more comments.
521 * Documentation/topdocs/INSTALL.texi: Add comment about gcc-3.0.4
524 * lily/include/stream.hh:
525 * lily/include/moment.hh:
526 * lily/include/midi-stream.hh:
528 * lily/scm-option.cc:
530 * lily/my-lily-lexer.cc:
532 * lily/midi-stream.cc:
535 * lily/includable-lexer.cc:
536 * flower/include/source-file.hh:
537 * flower/include/parray.hh:
538 * flower/include/dictionary.hh:
539 * flower/include/array.icc:
541 * flower/source-file.cc:
542 * flower/getopt-long.cc: gcc-3.1 fixes.
544 * stepmake/stepmake/generic-targets.make: Add comment about warning.
546 * lexer-gcc-3.0.patch: Add comment, and a fix for installations
547 that have an unpatched flex and gcc-3.1.x.
549 * Documentation/topdocs/INSTALL.texi: Add comments and
550 instructions on gcc-3.1.x.
552 * lexer-gcc-3.1.sh: New file.
554 * aclocal.m4: regenerate.
556 * stepmake/aclocal.m4: Version compare fix.
558 2002-07-05 Han-Wen <hanwen@cs.uu.nl>
560 * ly/engraver-init.ly (RhythmicStaffContext): stems up by default.
562 * lily-guile.hh: remove guile 1.3 compatibility, add 1.4
563 compatibility functions.
565 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
567 * Documentation/windows/lilypond.hint (requires): Add libintl2.
569 2002-07-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
571 * VERSION: 1.5.65 released.
573 * scripts/lilypond-book.py: patches by Tom Cato Amundsen. Adds
574 support for the columnsep when using the geometry package.
576 2002-07-04 Jan Nieuwenhuizen <janneke@gnu.org>
578 * scm/grob-property-description.scm (minimum-space-pair): Remove.
580 * Documentation/windows/README:
581 * Documentation/windows/guile-1.5.6-1.5.6.jcn2.patch:
582 * Documentation/windows/changelog: New file.
584 * Documentation/windows/lilypond.hint (requires): libguile14 (was:
587 2002-07-03 Han-Wen <hanwen@cs.uu.nl>
589 * lily/grob-property.cc (HASHING_FOR_MUTABLE_PROPS): experiment:
590 try hash tables for mutable properties.
592 * lily/align-interface.cc: remove aligned-interface and props
593 minimum-space-pair extra-space
595 * lily/grob-property.cc: new file move grob prop handling here.
597 * lily/lily-guile.cc (ly_deep_copy): add vector support
599 * lily/break-substitution.cc (do_break_substitution): add vector
602 * lily/spanner.cc: remove extend_spanner_over_* funcs.
604 2002-07-02 Jan Nieuwenhuizen <janneke@gnu.org>
606 * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Workaround for
607 broken Debian gcc version string: 'gcc (GCC) 3.1.1 20020606
610 2002-07-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
612 * lily/bar-check-iterator.cc (process): change
613 barbarCheckNoSynchronize to barCheckSynchronize
615 * Documentation/user/bugs.itexi: move to introduction, remove.
617 * Documentation/user/*.itexi: general carnage/cleanage.
619 * Documentation/user/internals.itely: split most of file into
620 internal documentation (.scm and .cc)
622 * buildscripts/make-font-dir.py: put designsize in to X font
625 * make/lilypond.redhat.spec.in: postinstall bugfix
627 2002-07-02 Juergen Reuter <reuter@ipd.uka.de>
629 * lily/ambitus-engraver.cc, lily/ambitus.cc: Various bugfixes:
630 avoid segfault on undefined ambitus pitch; avoid wasteful creation
631 of pitch smobs; defer computation of centralCPosition beyond first
632 timestep to catch also clefs outside of the current voice context.
634 2002-07-02 Han-Wen <hanwen@cs.uu.nl>
636 * input/template/satb.ly: new file
638 2002-07-01 Jan Nieuwenhuizen <janneke@gnu.org>
640 * Documentation/user/glossary.tely: Precautions for lilypond-book:
641 don't use spaces after @lilypond options.
643 * Documentation/topdocs/INSTALL.texi (Top): Remove generic Guile
646 2002-07-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
648 * VERSION (MAJOR_VERSION): 1.5.64
650 2002-06-30 Jan Nieuwenhuizen <janneke@gnu.org>
652 * lily/grob.cc (mark_smob): don't mark parents, explain why.
654 * tex/lilyponddefs.tex: Define outputscale only once.
656 2002-06-29 Jan Nieuwenhuizen <janneke@gnu.org>
658 * configure.in: Require guile 1.4 or newer (was 1.3.4?).
660 2002-06-29 Han-Wen <hanwen@cs.uu.nl>
662 * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
664 * lily/separating-line-group-engraver.cc (acknowledge_grob):
665 ignore grobs with no-spacing-rods set.
667 * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
669 * scm/grob-description.scm (all-grob-descriptions): sort list
671 2002-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
673 * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
676 * Documentation/topdocs/FAQ.texi (Installation): Add
677 lilypond-devel list. Add faq about font removal. Fix faq about
678 generating and running ./configure.
680 2002-06-26 Jan Nieuwenhuizen <janneke@gnu.org>
682 * scm/chord-name.scm (chord::name->text): Workaround: clean markup
685 * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
687 * input/test/ambitus.ly:
688 * lily/ambitus-engraver.cc:
690 * lily/include/ambitus.hh: New file.
692 * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
694 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
696 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
697 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
698 scm/basic-properties.scm, scm/grob-description.scm,
699 scm/grob-property-description.scm: Add support for ambitus.
701 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
703 * lily/text-spanner.cc: add some props to interface (patch
706 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
708 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
709 dereference valid Grob.
711 * configure.in: Quoting fixes.
713 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
715 * VERSION: 1.5.63 released
717 * lily/grob-scheme.cc: new file
719 * lily/break-substitution.cc: split up break substitution
720 functionality, and make a special constant stack-space version for
721 lists of grobs. This should fix the problems of lily in
722 combination with pthreads/qthreads.
724 * lily/grob.cc (mark_smob): bugfix: mark other parent too.
726 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
728 * lily/text-spanner.cc (setup_pedal_bracket):
729 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
730 Fix the lengths of mixed-style piano pedal brackets.
732 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
734 * Documentation/user/tutorial.itely (First steps): Add missing
737 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
738 about guile --with-threads. Hopefully this issue can be resolved
739 rsn, but maybe we should even add warnings for the standard Debian
740 and Red Hat packages?
742 * configure.in: Warn if guile is configured to use threads. Maybe
743 we should make this an error (ie, add to REQUIRED list?)
745 * config.make.in (PACKAGE_NAME):
746 (PACKAGE, package): Don't hardcode.
748 * VERSION (PACKAGE_NAME): Typo fix.
750 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
752 * input/tutorial/brahms-*.ly: new tutorial files.
754 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
756 * scm/script.scm (default-script-alist): fermata is up.
758 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
759 dynamic line spanner when there is no crescendo to connect.
761 * lily/tie.cc (get_control_points): add test to avoid flat ties.
763 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
765 * lily/note-collision.cc (check_meshing_chords): don't crash if no
768 * scm/music-functions.scm (toplevel-music-functions): new
769 definition. Functions to apply automatically. Removes the need for
770 explicitly doing \apply #voicify-music
772 * lily/grob.cc (do_break_substitution): rename function, use
773 global var for criterion argument. Reduces stack usage a little.
775 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
777 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
778 visibility-lambda to break-visibility
780 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
782 * input/bugs/part-combiner.ly: New file.
784 * lily/include/spacing-interface.hh: New file.
786 * lily/include/spaceable-element.hh: Remove.
788 * input/test/script-priority.ly: New file.
790 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
792 * lily/system.cc (output_lines): kill grobs that are only for spacing.
794 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
796 * lily/fingering-engraver.cc (make_script):
797 * lily/script-engraver.cc (process_music):
798 * lily/text-engraver.cc:
799 (process_acknowledged_grobs): Remove hard coded script-priority.
801 * flower/warn.cc: Cleanup.
803 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
806 * aclocal.m4: Regenerate.
808 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
810 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
811 * lily/include/lily-guile.hh: Only include config.h if necessary.
813 * Changelog: cvs changes ml archive test #8.
815 * lily/slur-engraver.cc: Layout fix.
817 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
819 * ly/engraver-init.ly (RhythmicStaffContext): add
820 Dot_column_engraver, resurrect barlines
822 * VERSION: 1.5.62 released.
824 * lily/engraver-group-engraver.cc (do_announces): rename
825 create_grobs () to process_acknowledged_grobs().
827 * lily/grob.cc (programming_error): add programming_error with
830 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
831 fail if a beam doesn't have stems.
833 * lily/engraver-group-engraver.cc (do_announces): scary change in
834 calling convention of create_grobs(): no create_grobs() call
835 before acknowledge_grobs().
837 * lily/sequential-music-iterator.cc (skip): add support for grace
840 * lily/music.cc (Music): fix very subtle and nasty memory
841 corruption bug. Typical symptom: "programming_error: Rhythmic_req
844 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
846 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
848 * ly/engraver-init.ly (RhythmicStaffContext): add
852 * lily/parser.yy: various protection fixes. Less objects are now
855 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
857 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
860 * Documentation/windows/zlily-profile.sh:
861 * Documentation/windows/post-lilypond.sh: Assume normal
862 prefix=/usr for lilypond.
864 * lily/musical-request.cc (length_mom): Display origin with error.
866 * input/test/duration-check.ly: New file.
868 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
871 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
872 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
875 * autogen.sh: Regenerate.
877 * Documentation/topdocs/INSTALL.texi:
879 * stepmake/configure.in:
880 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
881 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
882 ./configure once again requires autoconf == 2.13.
884 * stepmake/autogen.sh: Check for autoconf == 2.13.
886 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
888 * lily/parser.yy (open_request_parens): add input locations to
889 open and close parens.
891 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
893 * lily/tuplet-bracket.cc:
894 * lily/text-spanner.cc:
895 * lily/piano-pedal-engraver.cc:
896 * scm/grob-description.scm:
897 * scm/grob-property-description.scm: Changed the
898 edge-width property of brackets to edge-widen. Changed the sign of
899 the left element of edge-widen so a pair of equal numbers produces
900 a symmetrical bracket.
902 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
904 * ly/espanol.ly: added.
906 * lily/simple-spacer.cc (solve): remove assert.
908 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
910 * lily/forbid-break-engraver.cc (class
911 Forbid_line_break_engraver): new engraver: forbid linebreaks
914 * lily/spacing-spanner.cc (loose_column): add another check: don't
915 move around bar lines as loose columns.
917 * scm/basic-properties.scm (default-break-barline): add pre-break
920 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
922 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
923 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
925 * scripts/lilypond-book.py (environment): Bugfix: update to new
926 TEXMF scheme, from ly2dvi.
928 * lily/lookup.cc (slur): Invoke bezier-bow.
930 * scm/tex.scm (bezier-bow):
931 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
932 (Previously named bezier-sandwich).
934 * scm/tex.scm (bezier-sandwich):
935 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
937 * make/lilypond.mandrake.spec.in (post):
938 * make/lilypond.suse.spec.in (post):
939 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
941 * tex/lilyponddefs.tex: Uncomment feta character support.
943 * Documentation/user/refman.itely (Pitches): Add espanol.ly
946 * ly/catalan.ly: Add comment about (spanish) -s suffix.
948 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
951 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
953 * GNUmakefile.in (short-examples):
954 (long-examples): Bugfix for --srcdir build.
955 (top-web): Rewrite weblist find command.
957 * stepmake/bin/config.sub:
958 * stepmake/bin/config.guess: Update from latest autotools.
961 * autogen.sh: Regenerate.
964 * stepmake/configure.in:
965 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
966 requires autoconf >= 2.50.
968 * stepmake/autogen.sh: Check for autoconf >= 2.50.
970 * Documentation/user/refman.itely: Bugfix for tablature example.
972 * Documentation/windows/compiling.texi: Update for new and
975 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
977 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
978 introduce base-shortest-duration
980 * lily/parser.yy (music_output_def_body): don't crash when \tempo
981 in unexpected \midi{} is found.
983 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
985 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
986 the use of make/ly.make for use as an external makefile. Probably
987 noone except for myself ever used this anyway.
989 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
990 to new $datadir convention (<package>/<version>).
992 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
994 * VERSION: 1.5.61 released
996 * Document/user/refman.itely: tablature doc and code updates by
997 Jean-Baptiste Lamy <jiba@tuxfamily.org>
999 * input/template/piano-dynamics.ly: bugfixes.
1001 * lily/key-engraver.cc (try_music): read request only once. Don't
1002 overwrite lastKeySignature. Call create_key() only once. This
1003 fixes a bug with multiple equal key changes on polyphonic staffs.
1005 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1007 * scm/grob-description.scm: Add side-position-interface to TextSpanner
1009 * scm/grob-property-description.scm: Document the trill line type.
1011 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
1013 * stepmake/stepmake/generic-vars.make:
1014 * make/lilypond-vars.make:
1015 * GNUmakefile.in (builddir-setup): New setup for builddir run.
1016 Fixes LilyPond run from builddir for --srcdir builds.
1018 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
1021 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
1023 * scm/grob-description.scm (all-grob-descriptions): add
1024 font-family to RehearsalMark
1026 * scm/drums.scm: move over definitions from drum-pitch-init.ly
1028 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
1031 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
1033 * lilypond-mode.el: Propose saving before applying a command:
1034 for saved buffer set default command to LilyPond.
1036 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
1038 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
1041 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
1043 * Documentation/windows/lilypond-doc.hint: New file.
1045 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
1046 Bugfixes for --srcdir html-doc build.
1048 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
1049 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
1051 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
1053 * ly/script-init.ly (pralldown): add some scripts.
1055 * Documentation/user/refman.itely: many edits.
1057 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
1059 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
1060 direction, this breaks staffline avoidance of the bracket when
1063 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1065 * scripts/midi2ly.py: Fix handling of -o
1067 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
1069 * lily/molecule.cc (translate): set max distance to 100 cm.
1071 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1073 * VERSION: 1.5.60 released
1075 * lily/beam.cc: tremolo fix.
1077 * scripts/convert-ly.py: add tuplet-X-visibility rules.
1078 add VerticalExtent -> verticalExtent rules.
1080 * lily/axis-group-engraver.cc: consistent case for
1081 XxxxVerticalExtent properties.
1083 * Documentation/user/refman.itely (Tuplets): update
1084 tuplet-X-visibility properties.
1086 * input/test/defaultbars.ly: Corrected (thanks Mats)
1088 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1090 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
1092 * buildscripts/lilypond-profile.sh: override settings if
1093 LILYPONDPREFIX is set.
1095 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1097 * scripts/ly2dvi.py (non_path_environment): Fix typo
1099 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
1101 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
1103 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
1105 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
1107 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
1108 beam-engraver: use different engraver so we can mix normal and
1111 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
1113 * lily/beam.cc (shift_region_to_valid): Try to shift positions
1114 after slope-damping and concaveness check, so that short-stems are
1117 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
1119 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
1121 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
1123 * VERSION: 1.5.59 released
1125 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
1126 notice that missing features are exercise for user.
1128 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
1130 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
1131 (but alas, not partly precomputed) value for current_y when
1132 calculating stem length demerits.
1133 (calc_stem_y): Temporary precomputed factors fix.
1135 * lily/stem.cc (calc_stem_info): Take multiplicity into account
1138 * input/bugs/melisma-tie-rest.ly: New file.
1140 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
1142 * lily/stem.cc (calc_stem_info): remove min_y member, rename
1143 stuff. Remove kneeing stuff.
1145 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
1148 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
1154 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
1155 patch-level of version in minor-version string. Arg.
1157 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
1159 * ly/engraver-init.ly (TabStaffContext):
1160 enable TabStaff by default.
1162 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
1164 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
1166 * config.hh.in: Remove duplicate DIR_DATADIR entry.
1168 * aclocal.m4: Regenerate.
1170 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
1172 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
1174 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
1176 * lilypond-mode.el: Write notes with fewer keystrokes trough a
1177 "Quick notes"-interface.
1179 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
1181 * input/regression/non-empty-text.ly: Update example with outdated
1184 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
1186 * scripts/convert-ly.py: add textNonEmpty rule
1188 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
1190 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
1192 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
1193 using translate-robust add_molecule instead of add_at_edge.
1194 Bugfix for #(lines (finger "" "1")).
1196 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
1198 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
1201 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
1205 * Documentation/user/refman.itely: Bugfix: add node Repeats and
1206 MIDI. Regenerate menu. Fix @end example.
1208 * lily/accidental.cc: Add cautionary-style to interface.
1210 * mf/feta-beugel.mf (code): use autometric macros for braces.
1211 This fixes input/bugs/braces.
1213 * lily/afm.cc (count): return numOfChars, not size of array
1214 (always equals 256.)
1216 * lily/script.cc (before_line_breaking): postpone setting the
1217 X-parent of vertical scripts. This fixes the case of scripts on
1220 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
1222 * scm/grob-description.scm: fix alignment of barnumber: make sure
1223 it doesn't hit the G-clef.
1225 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
1226 startGraceMusic not startGraceContext).
1228 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
1230 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
1233 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
1235 * lily/accidental-engraver.cc: remove old accidental engraver,
1236 move new one to accidental-engraver.cc.
1238 * lily/local-key-item.cc: remove file
1240 * lily/include/local-key-item.hh: remove file
1242 * scripts/ly2dvi.py (make_preview): add --preview-resolution
1245 * lily/accidental.cc (brew_molecule): support for cautionary
1248 * lily/note-head.cc (internal_brew_molecule): warn if note head
1251 * lily/time-signature.cc (special_time_signature): remove warning
1252 about time signature.
1254 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
1255 reverse springs by limiting fixed-note space.
1257 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
1259 * stepmake/aclocal.m4: Bugfix: complain if program not found.
1261 * scripts/update-lily.py (next_version, prev_version, diff_name):
1262 New function. Patches now named name-prev-latest.diff.gz.
1263 Bugfix: import shutil.
1265 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1267 * input/tutorial/sammartini.ly: fix and document autochange
1270 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
1271 does produce .pdftex files.
1273 * lily/note-collision.cc (check_meshing_chords): move file from
1274 collision.cc, implement merged note heads (there you go, Drarn :-)
1276 * input/regression/collision-heads.ly: new file
1278 * VERSION: 1.5.57 released.
1280 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
1282 * mf/parmesan-heads.mf, scm/grob-description.scm,
1283 scm/grob-property-description.scm, scm/interface-description,
1284 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
1285 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
1286 lily/include/ligature-engraver.hh,
1287 lily/include/ligature-bracket.hh, lily/parser.yy,
1288 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
1289 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
1290 lily/ligature-head.cc, lily/ligature-engraver.cc,
1291 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
1292 implemented white mensural ligatures (still with a big list of
1296 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1298 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
1299 Documentation/user/internals.itely.
1301 * lily/function-documentation.cc: new file. Infrastructure for
1302 self documenting Scheme functions.
1304 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
1306 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
1308 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1310 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
1311 and * (as in "([^>]*)?")
1313 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
1315 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
1316 Add info about CVS. Stable/development are currently 1.4/1.5,
1317 both at lilypond.org.
1319 * autogen.sh: Generate.
1321 * stepmake/configure:
1322 * configure: Regenerate.
1324 * stepmake/stepmake/automatically-generated.sub.make: Keep
1325 original first line.
1327 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
1329 * stepmake/stepmake/generic-targets.make (configure): Generate
1332 * GNUmakefile.in (SCRIPTS):
1333 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
1335 * stepmake/autogen.sh: New file.
1337 * configure: Check for g++ >= 2.95.
1339 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
1340 c/c++ version checking.
1342 * flower/include/string.hh: Typo fix.
1344 * lily/include/midi-item.hh: Remove stray i.
1346 * Documentation/windows/GNUmakefile: Avoid collapsed directory
1349 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
1350 constructs '//' from arguments.
1352 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1354 * scm/lily.scm (ly-load): show SCM filenames if verbose.
1356 * lily/lily-guile.cc (init_functions): add ly-verbose function.
1358 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
1360 * flower/include/{pointer,tuple}*: removed.
1362 * VERSION: released 1.5.56
1364 * scm/music-functions.scm (check-start-chords): function to check
1365 for chords without \context. Apply automatically from parser.
1367 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1369 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
1372 * scm/output-lib.scm: fix ez notation stems.
1374 * lily/paper-outputter.cc: various fixes to speed up compilation.
1376 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1378 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
1380 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
1382 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
1383 determine latex input.
1385 * stepmake/bin/install-sh: Include latest from libtool.
1387 * stepmake/configure:
1388 * configure: Regenerate.
1390 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
1391 (USER_CFLAGS): Bugfix, include CPPFLAGS.
1393 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
1395 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
1396 REQUIRED programs and version. Try to continue configuring, list
1397 missing programs at the end, but don't generate a GNUmakefile if
1398 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
1399 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
1400 fancy for some older systems.
1402 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1404 * lily/score-engraver.cc (typeset_all): sanity check for items
1405 that are Y parent to spanner.
1407 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
1410 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1412 * lily/*.cc: remove as many iostream use as possible.
1414 * flower/ : remove text-db, text-stream, data-file.
1416 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
1418 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
1419 (completize_preamble): don't barf if no preamble present.
1420 (do_file): allow extensions on --output
1422 * scripts/ly2dvi.py (make_preview): make automatic preview of
1423 first system. Small cleanups.
1425 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1427 * scripts/lilypond-book.py (make_pixmap): output png directly.
1429 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
1432 * lily/parser.yy (My_lily_parser): comment out code. (Causes
1433 problems with recent bison releases).
1435 * make/lilypond.redhat.spec.in: add pfa fonts to X.
1437 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
1439 * lilypond-font-lock.el: Fixes the order of the note name list.
1441 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
1443 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
1444 capability, --verbose option, rlimit hack.
1446 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1448 * lily/piano-pedal-engraver.cc: cleanups.
1450 * lily/accidental.cc (after_line_breaking): add break tie
1453 * lily/text-engraver.cc (try_music): don't typeset fingerings
1455 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
1457 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
1459 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
1461 * lily/*.cc: change gh_str02scm() to ly_str02scm().
1463 * lily/spacing-spanner.cc (note_spacing): Bound
1464 shortest-playing-length by the distance to next note. This should
1465 fix chord tremolo spacing.
1467 * VERSION: 1.5.55 released
1469 * lily/stem.cc (off_callback): invisible stem over whole note is
1470 centered on note now.
1472 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
1473 stem-tremolo is stem now.
1475 * input/mozart-hrn*.ly: many corrections.
1477 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
1478 support for dynamic scripts.
1480 * lily/accidental-placement.cc (position_accidentals): check for
1481 collisions as well: should avoid those heads too.
1483 * lily/beam.cc (check_concave): allow undefined gap and
1484 threshold. Change the meaning of threshold/gap == 0.0.
1485 (check_concave): skip Stolba concaveness check if we have a knee
1488 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1490 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
1491 tremolos of dotted duration.
1493 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
1495 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
1496 downstroke again. Sigh.
1498 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
1499 script on note head.
1501 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
1503 * lily/slur.cc (add_column): allow slur over rest.
1505 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
1507 * lily/beam.cc: move scoring constants out of code
1509 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
1511 * mf/feta-nummer.mf: scalability fixes.
1513 * mf/feta-nummer-code.mf: fixes for 5, 8.
1515 * mf/feta-klef.mf: G clef fixes.
1517 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
1519 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
1521 * scripts/lilypond-book.py: %Newline, rather than glue macros
1522 after \end{verbatim}.
1524 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
1526 * Documentation/user/lilypond-book.itely:
1527 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
1530 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
1532 * scm/grob-property-description.scm (beam-space): Junk.
1534 * lily/beam.cc (space_function): New method.
1535 (get_interbeam): Call space-function.
1537 * scm/grob-description.scm (Beam): Initialize space-function with
1538 Beam::space_function.
1540 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
1541 Beam.space-function. Don't quantise grace beams.
1543 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1545 * VERSION: 1.5.54 released
1547 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
1550 * Documentation/index.texi: add PDF links.
1552 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
1554 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
1555 compare #'glyph as strings.
1557 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
1559 * scripts/ly2dvi.py (setup_environment): fix by Mats.
1561 * lily/stem.cc (head_count): Change function name. Change property
1562 to #'note-heads i.s.o. #'heads.
1563 (position_noteheads): Kern noteheads for invisible stems.
1564 (before_line_breaking): Do position_noteheads() for whole note
1567 * lily/accidental-placement.cc (position_accidentals): First
1568 determine refpoints, only then determine extents.
1570 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1572 * lily/accidental-placement.cc (position_accidentals): use all
1573 note heads for note head-skyline.
1575 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
1577 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
1579 * Documentation/windows/setup.hint (requires): Add gsview dependency.
1581 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
1583 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
1585 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
1587 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1589 * mf/feta-schrift.mf: lighter staccato.
1591 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
1593 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
1595 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
1597 * VERSION: 1.5.53 released
1599 * scm/lily.scm (ly-load): use primitive-load for loading.
1601 * lily/misc.cc: remove quantise_iv()
1603 * lily/*.cc: pass read-only arrays by reference.
1605 * lily/grob.cc (common_refpoint_of_array): new function. Try to
1606 use common_refpoint_of_{array, list} when possible.
1608 * lily/include/accidental-placement.hh: new file.
1610 * lily/accidental-placement.cc (alignment_callback): position
1611 accidentals in a better way.
1613 * lily/skyline.cc: new file. Compute distances for collections of
1616 * lily/include/skyline.hh: new file
1618 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
1620 * lily/accidental.cc (class Accidental_interface): grob for a
1623 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
1626 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
1627 together with new accidental-interface.
1629 * lily/include/*.hh: remove spurious set_interface() decls.
1631 * lily/key-signature-interface.cc (brew_molecule): add padding for
1632 natural signs. Make natural typesetting like the sharp.
1635 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
1636 is now slightly curved, not straight.
1639 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
1641 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
1643 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
1644 more strictly. Use more clever regular expressions. Commented regexps.
1646 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
1648 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
1650 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
1652 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
1653 to control width of staff symbol in ragged-right mode (by request
1656 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
1657 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
1658 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
1659 added support for ligature brackets (needed when transcribing
1662 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
1664 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
1665 Fontify notes more strictly.
1667 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
1669 * mf/feta-din-code.mf: dynamic z sign.
1671 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
1673 * lilypond-mode.el: Prevent recoloring strings and comments.
1675 * lilypond-font-lock.el: Handle block comments: block comments
1676 can have also ordinary comments inside.
1678 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
1680 * lily/stem.cc (get_default_dir): set direction to CENTER if
1681 invisible. Various other fixes to deal with invisible stems and
1682 stem-direction == CENTER.
1684 * lily/rest-collision.cc (do_shift): take direction from note if
1687 * input/regression/tie-grace.ly: new file.
1689 * lily/tie-engraver.cc (create_grobs): fix tied graces.
1691 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1692 knee correction. Fixes tight spacing for knees.
1694 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1696 * VERSION: 1.5.52 released
1698 * lily/*.cc: add some undocced properties.
1699 scm/grob-description.scm: idem.
1701 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1703 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1704 multi-measure rests like "R1 *4" and scheme (typically has '#'
1705 in the beginning). Small fixes. Add few reserved words.
1707 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1709 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1712 * Documentation/windows/installing.texi: Suggest gswin32c (console
1713 program) for getting the version. Layout fixes.
1715 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1717 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1718 windows viewing commands, remove silly comment about Yap.
1720 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1722 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1723 configure to find kpathsea on for example Slackware 8.0.
1725 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1727 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1728 by default: avoid "1" over single bar rests.
1730 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1731 and correct the handling of geometry options.
1733 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1735 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1736 implementation for Class::has_interface automatically. Junk all
1737 other implementations.
1739 * lily/grob.cc (internal_get_grob_property): also typecheck
1740 property reads. Catches even more undocced properties. Bugfixing
1741 left for the uninspired masses.
1743 * lily/beam.cc: remove end_after_line_breaking().
1745 * lily/grob.cc (calculate_dependencies): remove list support for
1748 * lily/font-size-engraver.cc: only do font-interface.
1750 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1752 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1755 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1757 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1758 brackets using arpeggio requests.
1760 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1761 molecule-callback to use for drawing the brackets.
1763 * Documentation/user/refman.itely:
1764 * input/test/chord-bracket.ly: Chord brackets documented
1766 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1768 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1770 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1772 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1774 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1775 direction tuplets on beams.
1777 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1779 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1781 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1783 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1784 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1785 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1786 submenu to "LilyPond"-menu.
1788 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1789 an interface to play midi.
1791 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1793 * input/regression/script-stack-order.ly: new file.
1795 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1797 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1799 * mf/feta-din-code.mf: kerning for dynamics.
1801 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1803 * input/regression/dynamics-glyphs.ly: new file
1805 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1807 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1808 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1810 * Documentation/windows/gs-profile.sh:
1811 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1812 moved to gs/gsview windows packages.
1814 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1816 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1817 finding out the duration. Fixes chord tremolo bug.
1819 * lily/completion-note-heads-engraver.cc (process_music): Set
1820 correct duration for all requests of the broken notes.
1822 * input/regression/completion-heads.ly: Added example of
1823 Completion_heads_engraver.
1825 * lilypond-mode.el: Added "2Midi" command
1827 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1829 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1830 edge-width, edge-height and shorten-pair properties for tuplet
1833 * lilypond-indent.el: Support for blinking of matching parentheses
1835 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1837 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1838 cleanups of piano pedal brackets.
1840 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1842 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1844 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1846 * mf/feta-new-code.mf: new dynamic f sign.
1849 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1851 * mf/feta-new-code.mf: new dynamic p sign.
1853 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1855 * lily/note-spacing.cc (stem_dir_correction): only do
1856 beam-correction if a beam is there.
1858 * lily/stem.cc (duration_log): change from flag_i (); better
1860 (get_default_stem_end_position): fix dot/flag collision code.
1862 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1864 * VERSION: release 1.5.50
1866 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1867 unit spring here. Reduces number of warning messages.
1869 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1871 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1873 * scm/generic-property.scm: remove generic-property, property-engraver
1875 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1877 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1879 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1881 * scm/*.scm: remove volta, hairpin and tuplet functions.
1883 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1884 note column for notes/stems/dots that already have parents. Fixes
1885 nested grace contexts.
1887 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1889 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1890 get too curved slurs.
1892 * scm/slur.scm (default-slur-extremity-offset-alist)
1893 (default-phrasing-slur-extremity-offset-alist): Move slur
1894 attachments further away from note-head, vertically. Also, leave
1895 a horizontal gap between slur and stem end.
1897 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1899 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1901 * input/regression/spacing-grace-duration.ly: new file
1903 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1904 for shortest durations.
1906 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1907 extent of the mm rest.
1909 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1912 * lily/tuplet-bracket.cc (make_bracket): new function
1913 (get_x_offset): new function; make tuplet brackets align on stems
1914 if stem has same direction.
1915 (parallel_beam): be anal about matching bracket to tuplet.
1917 * lily/lookup.cc (line): new function Lookup::line().
1919 * scm/tex.scm (dashed-line): change -line to -system in names.
1921 * lily/box.cc (add_point): new function.
1923 * flower/include/interval.hh: new function add_point ().
1924 new function widen()
1926 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1928 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1930 * scm/grob-property-description.scm (number-threshold): Add
1933 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1934 rest if #measures > number-threshold. Use padding (well, fake
1937 * scm/font.scm (make-style-sheet): New styles: mark-number,
1939 (paper20-style-sheet-alist): Add bigger bold fonts.
1941 * lily/mark-engraver.cc (process_music): Use style mark-number or
1944 * .cvsignore: Ignore all kinds of lilypond input and output.
1946 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1948 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1950 * lily/staff-symbol.cc (brew_molecule): make line thickness
1953 * lily/*.cc: replace stafflinethickness by linethickness.
1955 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1957 * input/regression/beam-concave.ly: Add to-be-considered-concave
1960 * lily/beam.cc (check_concave): Add check for large gap between an
1961 inner notehead and the line through outer noteheads.
1963 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1964 value 2.0 staff-space.
1966 * scm/grob-property-description.scm (concaveness-gap): Add
1969 * input/mozart-hrn3-allegro.ly: Fix typo.
1971 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1973 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1974 lily/note-head-engraver: improved implementation of roundfilledbox
1975 (according to Han-Wen's request)
1977 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1978 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1979 lily/simple-spacer.cc: ragged-right alignment
1981 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1983 * input/regression/spacing-note-flags.ly: new file
1985 * input/regression/spacing-rest.ly: new file
1987 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1989 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1990 all grace notes tight (not only the column directly following a
1993 * scm/grob-description.scm (all-grob-descriptions): don't make
1994 mm-rests larger than normal.
1996 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1997 curved. Remove white space at the right of flags.
1999 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
2001 * ports/ports.make: Bugfix: ignore CVS directories.
2003 * stepmake/.cvsignore: New file.
2005 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
2007 * lily/note-spacing.cc (stem_dir_correction): don't correct when
2008 there is a flag on the stem.
2010 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
2012 * scm/grob-property-description.scm (measure-length):
2013 measure-length grob property.
2015 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
2016 better spacing for breakable columns when they're juxtaposed: use
2017 measure length if applicable
2019 * lily/timing-engraver.cc (start_translation_timestep): store
2020 measure length in breakable column at start of measure.
2022 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
2024 * ROADMAP: Add description for ports dir, to check email upon
2027 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
2029 * VERSION: 1.5.48 released
2031 * lily/multi-measure-rest.cc (symbol_molecule): split off from
2033 (set_spacing_rods): Use symbol_molecule() to determine minimum
2035 (church_rest): split off from brew_molecule()
2036 (big_rest): split off from brew_molecule(). Construct using
2039 * mf/feta-eindelijk.mf: junk multi measure rest.
2041 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
2043 * lily/multi-measure-rest.cc (add_column): remove columns property.
2045 * lily/dynamic-engraver.cc (process_music): add more verbose warning
2047 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
2050 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
2052 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
2053 keywords covered, dropped some non-keywords, include R- and 128-notes
2055 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
2057 * Code clean-up: Junk multiple implementations of ledger line
2058 creation in note_head, custos, and porrectus. This is important
2059 since there soon will be some more applications of ledger lines to
2060 come (e.g. ambitus engraver).
2062 * Make thickness of ledger lines adjustable. This is essential
2063 for mensural notation.
2065 * Fix some bugs in the current ledger_line implementation, most
2066 notably that of the horizontal extent of ledger lines which equals
2067 at least the extent of the metafont ledger_line character, and
2068 which grows(!) if the desired extent shrinks below this limit.
2070 * roundfilledbox: variable blotdiameter
2072 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
2074 * VERSION: 1.5.47 released
2076 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
2078 * lily/porrectus.cc: change line-thickness to thickness, change
2079 stem-direction to direction.
2081 * scm/backend-documentation-lib.scm (check-dangling-properties):
2082 Automatically detect doc'ed properties that are not in an interface
2084 * scm/grob-property-description.scm: property cleanup. Remove many
2085 paper-column props that are non-existent.
2087 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
2088 the grob has a molecule-callback.
2090 * lily/*.cc: remove many set_interface() calls, and their
2093 * input/regression/spacing-knee.ly: new file
2095 * input/regression/spacing-clef-first-note.ly: new file
2097 * lily/staff-spacing.cc (get_spacing_params): different spacing
2098 for pref matter to note at start of line, halfway during line.
2100 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
2101 correction only if stems have same direction (i.e. not for
2102 stem-clef combination).
2103 (stem_dir_correction): maximal correction for knees.
2105 * lily/*.cc: many updates to interface descriptions.
2107 * lily/grob.cc (internal_set_grob_property): add interface check
2108 for every set_grob_property call
2110 * lily/*.cc: document interface stuff in C++
2112 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
2114 * lily/volta-bracket.cc: naming: change volta spanner to
2117 * input/bugs/*.ly: cleanup, remove lots of files.
2119 * buildscripts/mf-to-table.py (write_ps_encoding): generate
2120 .encoding file. WARNING: upgrade to pktrace 1.0.3
2122 * mf/feta-toevallig.mf: change PS name for parentheses.
2124 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2126 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
2129 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
2131 * lily/scope.cc: remove file .
2133 * lily/include/scope.hh: remove file. Remove Scope class
2137 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
2138 score_forbidden_quants): ): take out of SCM, pass parameters so
2139 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
2141 (calc_stem_y): robustness: take care of last_visible_stem == 0.
2144 * lily/lily-guile.cc (ly_unit): return internal unit.
2146 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
2148 * lily/paper-outputter.cc (output_version): output internal unit
2149 from Paper_outputter
2151 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2153 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2155 * scripts/ly2dvi.py: clean up old .*pk font caching code.
2157 * scm/ps.scm: Use uppercase postscript font names for the standard
2160 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
2161 Add all available TeX Type1 fonts, including Feta, to the
2162 Ghostscript font path.
2164 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
2165 version (affects the FontName) in lilypond.map.
2167 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
2168 documentation file to fetaNNlist.ly to avoid name collisions between
2169 lilypond generated .tex file and font .tex macros file.
2172 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
2174 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
2175 made mensural longa and (semi-)brevis leaner
2177 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
2179 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
2180 clean-up: moved bezier shape and slope from porrectus to lookup
2182 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
2183 and /usr/share/texmf/fonts
2185 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2187 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
2189 * lily/text-spanner.cc (brew_molecule): add #'thickness
2190 (brew_molecule): add corrections for thickness in molecule padding.
2192 * lily/line-spanner.cc (line_atom): make function private
2194 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
2195 discover bounding box. This solves the cropping problem.
2197 * lily/bar-check-iterator.cc (process): Only resynchronize bar
2198 check when it fails. This fixes the combination of grace notes
2201 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
2203 * lily/repeated-music.cc (minimum_start): new Scheme callable function
2204 (first_start): new Scheme callable. This will fix repeated music
2205 starting with grace notes.
2207 * lily/music.cc (start_mom): check start-moment-function grob property.
2209 * VERSION: 1.5.45 released
2211 * input/regression/system-extents.ly: new regression test. Test
2214 * lily/system.cc: rename LineOfScore into System
2216 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
2218 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
2219 (ly_get_extent): new Scheme function ly-get-extent
2221 * ps/lilyponddefs.ps: use output-scale for line-x
2224 * scm/ps.scm (font-load-command):
2227 2002-03-20 Rune Zedeler <rune@zedeler.dk>
2229 * lily/beaming-info.cc: Stupid typo fixed
2231 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2232 support for cross-context auto-accidentals.
2233 Now the engraver can stay in Staff-context and see other contexts
2235 Changed properties: autoAccidentals, autoCautionaries
2237 * lily/translator-group.cc (set_children_property):
2238 Function added recursively setting the same property (deep_copied)
2239 for all children of a Translator_group.
2241 * ly/property-init.ly: added commands
2242 \pianoAccidentals \voiceAccidentals
2243 \modernVoiceAccidentals \modernVoiceCautionaries
2245 * ly/engraver-init.ly: Correct initialization of new accidentals.
2247 * scm/translator-property-description.scm: Updated
2249 * input/regression/accidental-voice.ly: Added
2251 * Documentation/regression-test.tely: Added new test
2253 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2255 * VERSION: 1.5.44 released
2257 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
2259 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
2261 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
2264 * tex/feta*.tex: remove.
2266 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
2267 all software dealing with it.
2269 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
2271 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
2272 (this fixes pdf output). Drop awk dependency.
2274 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
2275 dimensions (linewidth) are in mm.
2277 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
2279 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
2281 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
2283 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
2285 * VERSION: 1.5.43 released
2287 * scm/beam.scm (beam-dir-majority-median): if majority is
2288 undecided, use median. Removes a forced dir in sarabande.
2290 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
2292 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
2294 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
2295 widths, heights and shortens are now customisable properties.
2297 * scm/grob-description.scm, scm/grob-property-description.scm: New
2298 properties added to PianoPedalBracket, unnecessary
2299 Y-offset-callbacks removed from *Pedal, undocumented properties
2302 * Documentation/user/refman.itely: Piano pedal updates.
2304 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
2306 * scm/grob-property-description.scm:
2307 * scm/interface-description.scm: Remove old stuff.
2309 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
2310 0.48 (previously 0.42).
2311 (Beam): Remove old stuff.
2314 * lily/stem-tremolo.cc:
2316 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
2317 (previously space-function).
2319 * stepmake/bin/add-html-footer.py: Website title fix.
2321 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2323 * scripts/ly2dvi.py (environment): use new font searching setup.
2325 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
2327 * lily/tfm.cc (dimensions): make code dimension independent
2329 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
2332 * tex/lily-ps-defs.tex: scaling for PS points and MM.
2334 * lily/include/dimensions.hh: try MM as internal unit.
2336 * scm/*.scm: remove invoke-dim1
2338 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2340 * GNUmakefile.in (fontpaths): add fontpaths target,
2342 * make/mutopia-targets.make: add PDF rules.
2344 * make/mutopia-rules.make: add pdf rule.
2346 * buildscripts/mutopia-index.py (list_item): add PDF.
2348 * buildscripts/lilypond-profile.sh (TEXMF): typo.
2350 * make/lilypond-vars.make: set TEXMF for the new font setup.
2352 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2354 * VERSION: 1.5.42 released
2356 * mf/feta-schrift.mf: endless twiddling of Tr.
2358 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
2359 endless twiddling with the bulb shape.
2361 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
2362 little smaller if there is an accidental.
2364 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2366 * buildscripts/lilypond-profile.sh:
2368 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
2369 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
2370 Implement new font installation strategy
2372 * Documentation/misc/fontinstallation (TEXMF): Documentation of
2373 the new font installation strategy.
2375 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
2378 * input/test/staff-size.ly: Simplified using StaffContainer
2380 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
2383 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
2385 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
2387 * lily/beam.cc (score_stem_lengths): new quanting stuff
2388 (score_forbidden_quants): Second and third beam quant stuff.
2390 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
2392 * lily/beam.cc (least_squares): Remember least-squares-dy for
2394 (quantise_interval): Don't quant to dy steeper that
2395 least-squares-dy. Return empty interval if no sane quants found.
2396 (quantise_position): Try quantise_interval until we have
2397 acceptable solution.
2399 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2401 * scm/interface-description.scm (beam-interface): Update.
2403 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2405 * VERSION: 1.5.41 released
2407 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
2408 optima serifs on top of t, bottom of r.
2410 * mf/feta-bolletjes.mf: make ledger line rounder.
2412 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
2414 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
2417 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
2419 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
2420 well as text pedal indications and a combination of both. All
2421 pedal indications are horizontally aligned on a line spanner.
2423 * lily/text-spanner.cc: Edge-width property added to use in
2424 bracketed piano pedals. Function setup_sustain_pedal added to set
2425 the dimensions of the brackets.
2427 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
2428 some of the *Pedal properties tweaked.
2430 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
2431 edge-width (TextSpanner) properties.
2433 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
2435 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
2436 fontified identifiers list.
2438 * input/test/pedal.ly: New pedal features added.
2440 * Documentation/user/refman.itely: New pedal features documented.
2443 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2445 * lily/include/new-beam.hh: Previously new-beam.hh
2446 * lily/beam.cc: Previously new-beam.cc
2447 (least_squares): Bugfix: don't barf on beams with less than two
2448 visible stems (tremolos).
2451 * scm/grob-description.scm (Beam): Junk old beam stuff.
2454 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2458 * mf/feta-eindelijk.mf: new 8th rest.
2460 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
2461 stick out of staffline
2463 * scripts/lilypond-book.py: fixes for texi regular expressions.
2465 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
2467 * lily/include/new-beam.hh:
2468 * lily/new-beam.cc: New file.
2470 * flower/include/interval.hh:
2471 * flower/include/interval.tcc (delta): New method.
2472 (swap): Now public (previously private).
2474 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
2475 1 staff-line-thickness. Sadly, this makes dy quanting problems
2476 (dy quants allowed should depend on actual left y) more visible.
2478 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
2480 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
2482 * scm/grob-property-description.scm (concaveness-threshold): Add
2483 typecheck and description.
2485 * scm/grob-description.scm (Beam): Remove obsolete properties, add
2486 concaveness-threshold (previously concaveness).
2488 * lily/beam.cc (check_concave): Remove choices and debugging
2489 stuff: use best concaveness calculation.
2490 (quantise_dy): Remove choice. Try to never make a slope steeper
2491 by quantising, but certainly never quantise a slope away.
2492 (check_stem_length_f): Remove choice. In case of lengthening
2493 alowed, always lengthen to ideal length.
2495 * Documentation/index.texi: Fix FAQ url.
2497 * Documentation/topdocs/INSTALL.texi: Add information about fink,
2498 compile fix and 1.4 specific fix that doesn't hurt 1.5.
2500 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
2502 * VERSION: 1.5.39 released
2504 * lily/simple-spacer.cc (add_rod): rods take precedence over
2505 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
2507 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
2509 * lily/note-spacing.cc (get_spacing): only insert space for
2510 accidentals if necessary.
2512 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
2514 * lily/spacing-spanner.cc (musical_column_spacing): new
2515 function. Have correct spacing from note to end-of-line as well.
2517 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
2519 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
2521 * darwin.patch: New file.
2523 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
2524 code. Shorten stems by fraction of stems to be shortened.
2526 * lily/stem.cc (get_default_stem_end_position): Shorten only half
2527 of shorten value for boundary cases.
2529 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
2530 (Beam): Set beamed-stem-shorten to (1.0 0.5).
2532 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
2534 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
2536 * scm/grob-description.scm (Beam): Add concaveness. Replace
2537 Beam::cancel_suspect_slope with Beam::check_concave.
2539 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
2540 set slope to horizontal if concaveness > Beam.concaveness. This
2541 handles cases that kludgy cancel_suspect_slope was meant to catch
2543 (cancel_suspect_slope): Remove.
2545 2002-03-12 Rune Zedeler <rune@zedeler.dk>
2547 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
2548 stemLeftBeamCount and stemRightBeamCount to equal 0.
2551 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
2553 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
2554 fixed spacing for pref matter, if the next column is musical, and
2557 * lily/note-spacing.cc (stem_dir_correction): Use correct
2558 discretionary for stem-bar spacing.
2560 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
2562 * VERSION: 1.5.38 released
2564 * lily/grob.cc (warning): Use cause tracking to give more
2565 meaningful errors from the backend.
2567 * lily/property-iterator.cc (check_grob): Warn if setting grob
2568 property in unknown grob.
2570 * mf/feta-toevallig.mf: brushed stems for natural sign.
2572 * lily/molecule.cc (align_to): don't translate empty molecule.
2573 (this triggers a very subtle bug in time-signature.)
2575 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
2577 * lily/spring.cc: remove file.
2579 * input/regression/spacing-stem-bar.ly: new file
2581 * lily/score.cc (run_translator): resurrect point-and-click
2583 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
2586 * lily/spacing-spanner.cc (find_shortest): Shortest note for
2587 spacing is now globally determined, using the most common shortest
2588 note. Notes that are shorter are spaced geometrically, and with
2589 expand hints. This makes spacing more even, and measures that have
2590 very short notes won't be that stretched out.
2592 * mf/feta-klef.mf: F-clef fixes, documentation on the
2593 shape. (WARNING: font changed.)
2595 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
2597 * lily/simple-spacer.cc (add_columns): support for infinitely
2600 * lily/staff-spacing.cc (get_spacing_params): space after
2601 prefatory matter is fixed.
2603 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
2605 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
2606 barline following an upstem.
2608 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
2609 function from next_notes_correction().
2610 (bar_y_positions): idem.
2612 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2614 * input/regression/break.ly (texidoc): bugfix: escape \ in
2617 * lily/staff-spacing.cc (next_notes_correction): Correct the
2618 spacing of a note following a barline.
2621 2002-03-04 Glen Prideaux
2623 * mf/feta-solfa.mf: Shaped note heads
2625 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
2627 * VERSION: 1.5.37 released
2629 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
2630 left-align molecule.
2632 * lily/break-align-interface.cc (do_alignment): completely
2633 rewritten. Now it does not use Align_interface anymore, but a
2634 separate routine. Like StaffSpacing, it reads space-alist from the
2635 breakable grobs. This allows you to set spacing using
2637 \property Staff.Clef \override #'space-alist = '(....stuff....)
2639 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
2640 to Bar_line. Move files around as well.
2642 * lily/time-signature.cc (time_signature): left align time signatures.
2644 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
2645 Corrections of the glyph shape C. Comments added.
2647 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2649 * lily/spacing-spanner.cc: move from third-try.cc; rename
2650 Third_spacing_spanner to Spacing_spanner.
2652 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
2653 spacing stuff. Much cleaner now, and we prepare for neat spacing
2654 tricks around bar lines and such.
2656 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
2657 variables with themselves. (Ouch.)
2659 * lily/span-bar.cc (brew_molecule): don't try to span bars that
2662 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2666 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2669 * lily/music.cc (ly_get_mus_property): typechecking
2670 (ly_set_mus_property): idem
2671 (ly_make_music): idem
2672 (ly_music_name): idem
2674 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2676 * lily/note-spacing.cc (stem_dir_correction): correction for
2677 same stem notes as well.
2679 * lily/pitch.cc (pitch_transpose): stricter typechecking
2681 * mf/parmesan*mf: magnification fixes.
2683 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2685 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2687 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2688 documenting the font. (Doesn't work for parmesan at the moment)
2690 * Documentation/user/appendices.itely (The Feta font): Add list of
2691 Feta font symbols with names.
2693 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2696 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2698 * lily/translator-group.cc (ly_set_trans_property): typechecking
2699 (ly_get_trans_property): typechecking.
2701 * lily/font-metric.cc (ly_text_dimension): typechecking
2702 (ly_find_glyph_by_name): idem.
2704 * scm/bass-figure.scm (brew-complete-figure): support for
2707 * lily/grob.cc (ly_get_paper_var): new function
2709 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2711 * VERSION (PATCH_LEVEL): 1.5.35 released.
2713 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2714 (bracket): New function.
2716 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2717 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2719 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2722 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2725 * lily/grob.cc (ly_get_grob_property): be anal about types.
2726 (ly_set_grob_property): idem
2728 * lily/figured-bass-engraver.cc (process_music): move molecule
2729 building completely to Scheme
2731 * lily/include/musical-request.hh (class Bass_figure_req): Add
2734 * lily/parser.yy (bass_figure): add support for space figure.
2736 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2738 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2740 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2741 (ly_align_to_x): new function ly-align-to!
2743 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2744 function ly-get-font
2746 * mf/feta-nummer.mf: include normal-space dimension.
2748 * lily/collision.cc (check_meshing_chords): don't merge collisions
2751 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2754 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2756 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2758 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2760 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2763 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2766 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2767 scm/grob-description.scm: added mensural fermata symbol
2769 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2771 * VERSION: 1.5.34 released.
2773 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2775 * lily/staff-symbol-referencer.cc (callback): assume that
2776 staff-position is unset in general.
2778 * input/regression/rest-pitch.ly: new file.
2780 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2783 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2785 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2786 as Scheme option. Run regression test by default with
2787 internal-type-checking.
2789 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2791 * lily/lily-guile.cc (type_check_assignment): changed functions.
2793 * scm/*description*.scm: be anal about typechecks. Some changes
2794 for internal variable names.
2796 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2798 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2800 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2802 * VERSION: 1.5.33 released.
2804 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2805 flare_path everywhere (c-clef, numbers).
2807 * lily/bar-number-engraver.cc (process_music): also print bar
2808 number if measure starts with grace note.
2810 * input/regression/grace-bar-number.ly: new test.
2812 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2814 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2817 * scm/music-functions.scm (voicify-music): split chords into
2818 different voices automatically.
2820 * lily/music.cc (ly_music_list_p): new function
2822 * lily/music-sequence.cc (do_relative_octave): robustification
2824 * scm/music-functions.scm: many utility functions
2826 * lily/music.cc (ly_set_mus_property): add type checks to the
2827 Scheme property assignment.
2829 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2832 * mf/lilypond.map: .map file from Mats' page.
2834 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2836 * Some more parmesan related fixes;
2838 * Custos: varying shape (in particular, stem length), depending on the
2839 vertical position of the custos (on staffline / between stafflines);
2841 * Custos: added grob property "neutral-direction" (same semantics as
2842 with stem); introduced new grob property "neutral-position";
2844 * Time-signature: print a warning when resorting to default layout.
2846 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2848 * lily/translator-group.cc (add_fresh_simple_translator): remove
2849 function; initialize() is called through
2850 Translator_group::initialize().
2852 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2853 for the neighbors of a loose column.
2855 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2856 position loose columns so that they don't collide.
2858 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2860 * VERSION: 1.5.32 released.
2862 * scm/font.scm: remove font-name symbol.
2864 * mf/GNUmakefile: use pktrace for making PFAs
2866 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2868 * lily/rest-collision.cc (do_shift): read direction field from
2869 rest-column in case of note-rest collision. This should fix some
2870 problems with rest collisions.
2872 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2874 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2877 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2878 property. Read pitch directly from #'cause.
2880 * mf/feta-puntje.mf: bugfix
2882 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2884 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2886 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2888 * Documentation/windows/compiling.texi: Update.
2890 * Documentation/index.texi: Add link to orphaned compiling for
2893 * Documentation/footer.html.in: Comment fix.
2895 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2897 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2899 * VERSION: 1.5.31 released
2901 * lily/new-spacing-spanner.cc: remove file.
2903 * lily/third-try.cc (do_measure): only take spacings into account
2904 if they pertain to the column pair under consideration. This fixes
2905 spacing bug when mixing eighths triplets and normal eighths.
2907 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2908 lines don't take up space anymore. Document why in note-head.cc
2911 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2913 * lily/font-interface.cc (get_font): reinstate
2914 #'font-magnification. See input/regression/font-magnification.ly
2915 (get_font): Change the definition of #'font-name grob property.
2917 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2918 that have a #'cause field.
2920 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2922 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2924 * mf/GNUmakefile: remove metapost stuff
2926 * stepmake/aclocal.m4: remove metapost detection stuff.
2928 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2930 * mf/GNUmakefile (FET_FILES):
2931 (FONT_FILES): Include parmesan.
2933 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2936 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2938 * Documentation/user/refman.itely (Paper size): Quote braces.
2940 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2942 * stepmake/aclocal.m4: fixed bison version check to be more
2945 * lily/stem.cc (position_noteheads): fix for cluster chords.
2947 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2949 * python 2.2 support.
2951 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2953 * VERSION: 1.5.30 released
2955 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2957 * Documentation/user/refman.itely (Dynamics): add a note about
2960 * scm/grob-description.scm: add a 'translator-type? object
2961 property, so that \property Foo.Bar =\turnOff doesn't cause
2964 * lily/translator-group.cc (add_fresh_group_translator): make
2965 new add-translator functions to make distinction between fresh and
2966 used group-translators. Fixes problem with scripts on auto-changing voice
2968 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2969 add to Score_performer. Fixes bar checks in MIDI
2971 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2972 heads. Fixes many quirks with ties.
2974 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2975 in the grob property #'cause, instead of using Grob_info.
2977 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2978 staff context, fixing dot alignment on collisions.
2980 * lily/beam-engraver.cc (try_music): remove can't find beam start
2981 warning, so that skipTypesetting won't complain.
2983 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2985 * Documentation/user/refman.itely (Paper size): Documentation fix,
2988 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2990 * scm/grob-description.scm: \breathe: Use feta font comma by default
2992 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2994 * input/template/piano-dynamics.ly (pedal): Simplified
2996 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2998 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
3000 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
3002 * lilypond-mode.el (LilyPond-command-query): ignore case.
3004 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3006 * VERSION: 1.5.29 released
3008 * all files: change 2001 to 2002 in headers globally
3010 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
3011 cheese") font. WARNING: fonts changed.
3013 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
3015 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
3017 * mf/*.mf: Added some more vaticana/solesmes style font symbols
3019 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
3021 * mf/*.mf: Fixed a few typos in various .mf files
3023 2002-01-17 Rune Zedeler <rune@zedeler.dk>
3025 * mf/: added macro soft_penstroke
3027 softened some glyphs
3028 redrawn triangular noteheads
3030 added classical quarter rest
3032 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
3034 * lily/bar.cc: Bugfix: repeat dots when even number of staff
3035 lines and staff_space>=2
3037 * lily/rest.cc: Use default rests when current style glyphs not
3039 \property Staff.Rest \override #'style = #'classical
3041 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
3043 * input/bugs/first-tie.ly: New file.
3045 * input/bugs/spacing-clash.ly: New file.
3047 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
3051 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
3053 * lilypond-indent.el: New file providing indentation for
3054 parenthesised blocks of lilypond code in Emacs
3056 * lilypond-font-lock.el: Changes to the syntax table to facilitate
3057 indentation and handle block comments properly. Distinguish
3058 accents from close-brackets in fontification.
3060 * lilypond-mode.el: LilyPond-indent-command set appropriately.
3062 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
3064 * Documentation/windows/installing.texi:
3065 * Documentation/windows/compiling.texi: Include from 1.4.10.
3067 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
3069 * input/bugs/first-midi-tie.ly: New file.
3071 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
3073 * VERSION: 1.5.28 released
3075 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
3076 illicit beams on [c4 c4] etc.
3078 * lily/bar-check-iterator.cc (Bar_check_iterator): new
3079 file. Make separate iterator for Bar_checks. Bar_check now happen
3080 outside engravers, meaning that you can use them with
3081 skipTypesetting. Associated changes in other files.
3083 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
3086 * lily/spacing-spanner.cc (stem_dir_correction): removed function
3088 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
3090 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
3092 * lily/stem.cc (set_spacing_hints): removed function
3094 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
3095 correction for spacing; now take vertical extents of the stem into
3098 * lily/third-try.cc: More hacking to get spacing working.
3100 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
3101 sits at staff level and creates note spacing objects. Scrap it
3102 again, and document why.
3104 * lily/include/group-interface.hh: rename functions.
3106 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
3108 * stepmake/stepmake/c++-rules.make:
3109 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
3111 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
3113 * make/lilypond-vars.make:
3114 * scripts/ly2dvi.py (setup_environment):
3115 * scripts/lilypond-book.py (setup_environment): Also set tex
3118 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3120 * VERSION: 1.5.27 released.
3122 * Documentation/user/refman.itely (Bar numbers): added bar number
3125 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
3128 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
3130 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
3131 spread the last few lines all over the last page of a score.
3133 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
3135 * lily/third-try.cc: 3rd try at revising spacing
3136 engine. Not yet finished.
3138 * lily/paper-column.cc (brew_molecule): print debugging marks on a
3141 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
3142 collecting past note heads.
3144 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
3147 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
3148 class. Keep a queue of grobs that are still playing in busyGrobs.
3150 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
3151 function. Use busyGrobs to detect playing notes.
3153 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
3155 * Documentation/topdocs/INSTALL.texi: Added note about broken
3156 python-2.1. Updated note for Debian's broken (well, broken for
3157 our use anyway) tex configuration.
3159 * scripts/lilypond-book.py (re_dict): python2.2 fix.
3161 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
3162 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
3164 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
3165 (But left margin of png's still misses a few pixels. Arg.)
3167 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
3169 * lilypond-mode.el (LilyPond-command-next-midi): Make
3170 possible to kill midi-process (using "C-c C-m").
3172 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
3174 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
3175 Convert strings with dimensions to numbers.
3177 * lily/volta-engraver.cc: only make a bracket for the top staff,
3178 as found in stavesFound.
3180 * lily/bar-number-engraver.cc: remove staff administration.
3182 * lily/mark-engraver.cc (acknowledge_grob): remove staff
3183 administration. This breaks support for invisible-staff.
3185 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
3186 symbols into stavesFound.
3188 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
3189 grobs, and put them into columns.
3191 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
3192 Engraver_group_engraver as a potential candidate for ack'ing grobs.
3194 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
3196 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
3197 midi section in the Emacs-mode, so it is possible to play certain
3198 score in a multiscore lilypond-file.
3200 2001-12-09 Rune Zedeler <rune@zedeler.dk>
3201 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
3202 (FIXME: not accessible from guile)
3204 * lily/accidental-engraver.cc: rewrote accidental-routines to get
3205 better support for Kurt Stone's suggestions.
3206 Removed properties: noResetKey, forgetAccidentals, autoReminders,
3208 Changed property: localKeySignature.
3209 Added properties: extraNatural, autoAccidentals,
3212 (BUGFIX: broken-tie-support destroyed in 1.5.16)
3214 * ly/property-init.ly: added commands
3215 \defaultAccidentals \modernAccidentals \modernCautionaries
3216 \noResetKey \forgetAccidentals
3218 * ly/engraver-init.ly: Correct initialization of new accidentals.
3220 * scm/translator-property-description.scm: The new properties
3223 * input/: Some examples added, some changed.
3225 * Documentation/regression-test.tely: Added quick test of new
3228 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3230 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
3233 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3235 * lily/beam.cc (before_line_breaking): Make beams without stems
3236 or with only one stem disappear.
3238 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3240 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
3241 files to have standardised HTML bibliography output. Update build
3242 docs to reflect this.
3244 * lily/include/simple-spacer.hh (struct Simple_spacer): add
3245 active_count_, so that we don't have to look for active springs
3248 * scm/interface-description.scm,scm/grob-property-description.scm:
3251 * lily/simple-spacer.cc (solve): Handle forced line breaks
3252 here. Fixes problems when combining linebreaks with non-fitting
3255 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
3257 * 1.4.9.jcn3 forward ports.
3259 * Really included .cvsignore.
3261 * Included Han-Wen's uu1 windows fixes.
3263 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
3265 * Added Cygwin setup.hint
3267 * Removed tex, python wrappers and postinstalls to go with Cywgin's
3268 tetex/texmf, python installations.
3270 * Updated cygwin installer.
3272 * ly2dvi: Don't accept filenames with spaces (+ fix).
3274 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
3276 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
3278 * lily/translator-def.cc: Remove manual symbol caching.
3280 * lily/script-column.cc (before_line_breaking): robustness check:
3281 don't crash if no direction set.
3283 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
3285 * scripts/pmx2ly.py (Parser.parse_header): more generic header
3289 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
3291 * lily/note-head.cc (head_extent): added to compute width without
3292 ledger lines. By default, ledger lines take up width now.
3294 * input/regression/fingering.ly: demonstrate auto fingering.
3295 Horizontal placement is still buggy.
3297 * lily/fingering-engraver.cc (class Fingering_engraver):
3298 added. Provides support for horizontal fingering scripts
3300 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
3302 * lily/side-position-interface.cc (add_staff_support): add staff
3303 only for Y-axis side positions.
3305 * lily/parser.yy (request_chord): Fix mem leak.
3307 * lily/musical-request.cc (transpose): moved to Music::transpose()
3309 * lily/include/grob-info.hh: Change music pointer to SCM, so we
3310 can store grobs as grob-creation cause as well.
3312 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
3313 handle when adding. Use precomputed symbols throughout lily.
3315 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
3316 track of spacing issues.
3318 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
3319 to keep track of staff spacing
3321 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
3323 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
3324 code clean from conditionals and have a concentrated sets of
3325 compatibility fixes for old guile versions.
3327 * Fixes for guile 1.4, including embedded ps.
3329 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3331 * lily/stanza-number-engraver.cc (process_music): allow pairs as
3332 well for markup texts.
3334 * lily/musical-request.cc (length_mom): kludge for null pointer.
3336 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
3338 * scm/lily.scm (sign): bugfix
3340 * CHANGES: Change log instated.
3342 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.