1 2002-07-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3 * buildscripts/lilypond-profile.sh: update support for
6 2002-07-24 Jan Nieuwenhuizen <janneke@gnu.org>
8 * Documentation/user/refman.itely (Point and click): Add info
11 2002-07-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
13 * lily/accidental-placement.cc (extent_callback): remove function
14 (position_accidentals): do nothing if not live.
15 Use accidental-grobs property i.s.o. accidentals, to maintain
18 2002-07-24 Jan Nieuwenhuizen <janneke@gnu.org>
20 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: *
21 input/test/count-systems.ly: Update to new system-count function
24 * lily/grob.cc (get_line, get_original): Use LY_DEFINE.
26 * lily/spanner.cc (get_broken_into): Use LY_DEFINE.
28 * lily/include/spanner.hh:
29 * lily/include/grob.hh: Remove DECLARE_SCHEME_CALLBACKs.
31 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Add
32 forcedBreak options and fix measure count comments.
34 * GNUmakefile.in: Junk intl.
36 * config.make.in (prefix): Prepend $(DESTDIR) to allow install
37 without overriding prefix.
39 * aclocal.m4: Regenerate.
41 * stepmake/aclocal.m4: Don't expand $prefix: fixes install with
50 * tex/GNUmakefile: use local_package_datadir iso datadir.
52 * make/substitute.make (ATVARIABLES): Add local_lilypond_datadir.
54 * aclocal.m4: Regenerate.
58 * stepmake/aclocal.m4: Cleanups and more conventional naming for
59 datadir ($prefix/share), package_datadir ($prefix/$package), and
60 local_package_datadir ($prefix/$package/$version).
62 * make/lilypond-vars.make:
64 * scripts/lilypond-book.py:
66 * scripts/midi2ly.py: use local_package_datadir iso datadir.
68 * GNUmakefile.in: build_datadir without version.
70 * lily/main.cc: Datadir cleanup.
72 * lily/text-item.cc (lookup_text):
73 * lily/music-output-def.cc (print_smob):
74 * lily/mensural-ligature.cc (brew_molecule):
75 * lily/beam-quanting.cc (score_slopes_dy, score_forbidden_quants):
78 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
80 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Warn when not
81 using 6 systems, like the original.
83 * input/test/count-systems.ly: New file.
85 * lily/spanner.cc (get_broken_into):
86 * lily/grob.cc (original_scm, line_scm): New function.
88 * lily/include/grob.hh (ly_scm2grob_array): Moved from
89 group-interface.hh and renamed.
90 (ly_grob_array2scm): New function.
92 2002-07-23 Juergen Reuter <reuter@ipd.uka.de>
94 * lily/ambitus-engraver.cc: bugfix: create ambitus grob during
97 2002-07-23 Han-Wen <hanwen@cs.uu.nl>
99 * lily/separation-item.cc (width): cache extent in extent-X
101 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
102 only add extent for non-musical column.
104 * lily/accidental-placement.cc (split_accidentals): new function
105 (get_relevant_accidental_extent): new function
107 * lily/staff-spacing.cc (next_note_correction): idem
109 * lily/separating-group-spanner.cc (find_rods): use conditional_width().
111 * scm/sketch.scm: fix roundfilledbox definition
113 * lily/lily-guile.cc (robust_list_ref): be sensible with negative
114 argument. This fixes too-long stems on half and quarter notes.
116 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
118 * Documentation/index.texi: Add, fix, change some links and names,
119 including dump of wiki wiki.
121 * Documentation/GNUmakefile (local-WWW): Slurp wiki.
123 * buildscripts/wiki-slurp.py: New file. Accept multiple pattern.
124 (unwiki): Replace local urls with <img src> too.
126 * Documentation/GNUmakefile (wiki-dump): New target.
128 * Documentation/header.html.in: Link to Documentation/index
129 renamed to Index (was other...).
131 * Documentation/regression-test.tely: Remove.
133 * make/lysdoc-targets.make (local-WWW): Add default targets .ps.gz
136 2002-07-22 Han-Wen <hanwen@cs.uu.nl>
138 * VERSION: 1.5.69 released
140 * lily/accidental-placement.cc (position_accidentals): document
143 * lily/skyline.cc (skyline_meshing_distance): bugfixes.
145 2002-07-22 Jan Nieuwenhuizen <janneke@gnu.org>
147 * input/regression/abe.ly:
148 * input/test/transposing.ly: Remove mention of mudela.
150 * scripts/lilypond-book.py (make_pixmap): Don't use quiet_system,
151 ie, don't redirect PNG output to /dev/null. Fixes lys-to-tely
154 * input/test/mark.ly:
155 * Documentation/user/refman.itely: Re-enable \mark #'() example.
157 * lily/parser.yy: Revert to MARK scalar.
159 2002-07-21 Han-Wen <hanwen@cs.uu.nl>
161 * lily/accidental.cc (accurate_boxes): add function to represent
162 flat with 2 boxes. Improves flat-flat accidental spacing.
164 * lily/accidental-placement.cc (stagger_apes): try to arrange accs
165 in a C form, with the top accidental closet to the chord.
167 * lily/stem.cc (get_default_stem_end_position): don't crash if
169 (get_default_stem_end_position): idem for stem-shorten.
171 * mf/feta-toevallig.mf: enlarge flat bbox.
173 * input/regression/lyrics-extender.ly: new file.
175 * lily/lyric-extender.cc (brew_molecule): don't add
176 right-trim-amount if extender is broken.
178 * scripts/ly2dvi.py (global_latex_preamble): bugfix (thanks Werner).
180 2002-07-21 Jan Nieuwenhuizen <janneke@gnu.org>
182 * Documentation/index.texi: Add pointers to new regression and
185 * Documentation/user/converters.itely:
186 Documentation/user/invoking.itexi: Some small fixes for uniform
189 * input/allfontsize.ly, size*.ly: New files, moved from
192 * input/font20.ly, font-body.ly: New files, moved from input/test.
194 * input/font*.ly: New files, moved from input/test.
196 * input/test/*.ly: Remove empty files, fix broken ones.
198 * input/test/different-time-signatures.ly: Add FIXME marker;
199 comment-out broken code.
201 * Documentation/regression-test.tely: Comment-out, add
202 obsolete-marker and url to regression-test-dir.
204 * input/test/GNUmakefile:
205 * input/regression/GNUmakefile: Add rule for lys-to-tely.py.
207 * input/regression/+.ly:
208 * input/test/+.ly: New file.
210 * input/test/cue-notes.ly: better example
212 * Documentation/user/refman.itely (Font selection): font size doco
214 * input/mutopia/F.Schubert/standchen.ly: note bugfix
216 * lily/stem.cc: rewrite of scoring to give sane results on knee
219 * lily/beam.cc (set_stem_lengths): extend stems for gapped tremolo
221 (connect_beams): chop off beaming outside the beam. Fixes problem
224 * lily/score-engraver.cc (initialize): error if feta20.afm
226 2002-07-19 Han-Wen <hanwen@cs.uu.nl>
228 * scm/engraver-documentation-lib.scm
229 (document-property-operation): add properties to context
232 * scm/documentation-lib.scm (pad-string-to): align info menus.
234 2002-07-18 Jan Nieuwenhuizen <janneke@gnu.org>
236 * debian/GNUmakefile: Remove lilypond.links.
238 * debian/: Debian patch (Anthony Fok).
240 * debian/lilypond.links: Remove, as per Anthony's request.
242 * aclocal.m4: Regenerate.
244 * stepmake/aclocal.m4: Add --with-kpathsea-include,
245 --with-kpathsea-lib options.
247 * scripts/mup2ly.py: Cut-n-paste include missing lilylib.
249 * stepmake/stepmake/compile-vars.make:
250 * stepmake/stepmake/executable-rules.make:
251 * stepmake/stepmake/python-module-rules.make:
252 * stepmake/stepmake/shared-library-rules.make: Use ALL_LDFLAGS, to
253 guard agains user override of LDFLAGS.
255 * Documentation/user/refman.itely: Compile fix for \mark #'(music ...).
257 * Documentation/user/internals.itely: Use ly-set-mus-property!.
259 * cygwin/mknetrel: New file.
261 * cygwin: New directory. Moved Cygwin stuff from
262 Documentation/windows.
264 * Documentation/windows/fix-suffixes.sh:
265 * buildscripts/walk.sh: Junk.
267 * aclocal.m4: Regenerate.
269 * buildscripts/walk.sh: Remove.
271 * stepmake/stepmake/topdocs-targets.make:
272 * stepmake/stepmake/help2man-rules.make:
273 * stepmake/stepmake/generic-vars.make:
274 * stepmake/make/stepmake.make:
275 * Documentation/user/GNUmakefile:
276 * make/stepmake.make:
277 * make/lilypond-vars.make:
279 * stepmake/aclocal.m4: Remove builddir cruftyness.
281 * stepmake/stepmake/c++-rules.make: Use ALL_CXXFLAGS, to guard
282 agains user override of CXXFLAGS.
284 * stepmake/stepmake/c++-vars.make (ALL_CXXFLAGS): Include CXXFLAGS.
286 * stepmake/stepmake/c-rules.make: Use ALL_CFLAGS, to guard
287 against user override of CFLAGS.
289 * stepmake/stepmake/c-vars.make (ALL_CFLAGS): Include CFLAGS.
291 2002-07-17 Han-Wen <hanwen@cs.uu.nl>
293 * GNUmakefile.in: distribute lexer-gcc-3.1.sh as well
295 * lily/music.cc (LY_DEFINE): change ly-set-mus-property to
298 * lily/grob.cc (LY_DEFINE): change ly-set-grob-property to ly-set-grob-property!
300 * lily/parser.yy (Repeated_music): shift duration log for tremolo
301 repeats, instead of klutzing around.
303 * lily/chord-tremolo-engraver.cc (acknowledge_grob): set X parent
304 of stem tremolo grobs.
306 * scm/music-functions.scm (shift-duration-log): new function, add
307 to duration log of all notes.
309 * lily/duration.cc: add compression factor arguments to
311 compression-factor, dot-count, duration-log: add scheme functions.
313 * lily/mark-engraver.cc (process_music): allow \mark to take a
314 number as argument as well.
316 2002-07-16 Han-Wen <hanwen@cs.uu.nl>
318 * lily/rest.cc (after_line_breaking): only translate the whole
319 rest if we have more than 1 staff line
321 2002-07-16 Han-Wen Nienhuys <hanwen@cs.uu.nl>
323 * VERSION: release 1.5.68
325 * scripts/lilypond-book.py: fixes by Tom Cato Amundsen.
327 2002-07-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
329 * lily/beam-quanting.cc (score_forbidden_quants): split beam
330 quanting functionality.
331 (quanting): argh. Forgot how linear interpolation works. Bugfix.
333 * Documentation/index.texi (Top): add whole-big-page documentation.
335 * lily/side-position-interface.cc (general_side_position):
336 Subtract parent offset iso. adding it. (Huh? How could this have
339 * lily/clef-engraver.cc (stop_translation_timestep): add staff to
340 OctavateEight support.
342 * scripts/lilypond-book.py: add smallverbatim option.
344 * lily/beam.cc (quanting): bugfix. Behave sanely when no visible
347 * lily/accidental-placement.cc (position_accidentals): add padding
348 property. Increase default setting to 0.2.
350 2002-07-15 Han-Wen <hanwen@cs.uu.nl>
352 * lily/paper-column.cc (before_line_breaking): urg. bugfix.
354 * lily/separating-line-group-engraver.cc (finalize): don't replace
355 right-items, but add to list. This fixes a bug when a staff ends
356 with cross-staff voice switching away.
358 2002-07-14 Han-Wen <hanwen@cs.uu.nl>
360 * input/mutopia/GNUmakefile: move mutopia/ to input/mutopia/
362 * lily/beam.cc (quanting): add explicit support for cross-staff
363 beaming: make slope penalty larger.
365 * lily/beam.cc: use common refpoints throughout. This fixes many
368 * lily/paper-column.cc (before_line_breaking): bug fix.
370 * lily/volta-engraver.cc (process_music): do something sensible if
373 * scripts/lilypond-book.py (make_pixmap): opps. Do png conversion
376 * Documentation/user/refman.itely (Global layout): made section on
377 global layout, added spacing documentation.
379 * lily/staff-symbol.cc (brew_molecule): change ragged right for
380 staff symbols. See comments.
382 2002-07-14 Jan Nieuwenhuizen <janneke@gnu.org>
384 * lily/voice-devnull-engraver.cc (acknowledge_grob): Use proper
385 spelling for always. In solo a due mode, kill spanners when the
386 other thread has solo.
388 * lily/thread-devnull-engraver.cc (acknowledge_grob): In solo a
389 due mode, kill everything when the other thread has solo.
391 * lily/a2-engraver.cc (acknowledge_grob): In solo a due mode, do
392 not set directions when we have solo.
394 * lily/part-combine-music-iterator.cc (process): Set property
395 "othersolo" if the other thread has solo.
397 2002-07-13 Han-Wen <hanwen@cs.uu.nl>
399 * VERSION: 1.5.67 released.
401 * lily/beam.cc (calc_stem_y): fix beams on quarter notes.
403 * lily/stem-tremolo.cc (brew_molecule): add code for stem tremolos.
405 * lily/auto-beam-engraver.cc (create_beam_p): remember Beam
406 settings at the start of a potential auto beam.
408 * lily/include/sequential-iterator.hh (class Sequential_iterator):
409 bugfix: protect music list from GC.
411 * Documentation/user/introduction.itely: misc fixes.
413 * scripts/ly2dvi.py (run_latex): show latex error log. Ask for
414 bugreport if lilypond is killed by a signal.
416 * input/regression/beam-funky.ly: new file
418 * lily/input-smob.cc (make_input): GUILE 1.7 compatibility fixes.
420 * lily/beam.cc: complete rewrite of multiplicity. This fixes 16th
422 (quanting): add french beaming support (property french-beaming)
423 (stem_beams): removed.
425 i2002-07-12 Mats Bengtsson <matsb@s3.kth.se>
427 * lily/beam.cc (after_line_breaking): Set correct stem lengths
428 also when beam positions are set manually.
429 (consider_auto_knees): Do not use automatic knees if the directions
430 are set manually by the user.
432 2002-07-12 Han-Wen <hanwen@cs.uu.nl>
434 * input/regression/grace-auto-beam.ly: new file
436 * input/regression/grace-unfold-repeat.ly: new file
438 * lily/auto-beam-engraver.cc (test_moment): never start on grace moments.
440 * lily/forbid-break-engraver.cc (start_translation_timestep): skip
441 grace notes for break-forbidding. Breaks during grace notes are
442 handled by Bar_engraver.
444 * lily/unfolded-repeat-iterator.cc: Reimplement
445 Unfolded_repeat_iterator, Volta_repeat_iterator using
446 Sequential_iterator. All grace functionality from {} carries over
449 * lily/sequential-iterator.cc: new file: form baseclass for
450 sequential music iterator and unfolded/volta repeat iterator.
452 2002-07-11 Han-Wen Nienhuys <hanwen@cs.uu.nl>
454 * lily/include/debug.hh: deprecate.
456 * lily/spacing-spanner.cc (set_springs): add support for
457 common-shortest-duration field.
459 * lily/parser.yy (translator_spec_body): allow \set in \translator
460 {} block. This is the same as \override, here.
462 * lily/score-engraver.cc (one_time_step): don't warn about columns
463 when skipTypesetting == #t.
465 * lily/spacing-spanner.cc (musical_column_spacing): change
466 ragged right function to produce natural spacing.
468 2002-07-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
470 * lily/paper-column.cc (before_line_breaking): update
471 #'bounded-by-me field for suicided items. This fixes crazy
472 spacing in \partcombine scores.
474 2002-07-10 Jan Nieuwenhuizen <janneke@gnu.org>
476 * config.hh.in: Add HAVE_SSTREAM.
478 * configure.in: Add check for sstream header.
480 2002-07-09 Mats Bengtsson <matsb@s3.kth.se>
482 * flower/source-file.cc: Fix compatibility with older g++.
484 2002-07-09 Jan Nieuwenhuizen <janneke@gnu.org>
486 * input/twinkle.ly: Bugfix: no automaticMelismata.
488 2002-07-08 Han-Wen <hanwen@cs.uu.nl>
490 * mutopia/J.S.Bach/Cembalo-Partitas/: remove
492 * ly/engraver-init.ly (ScoreContext): turn on automaticMelismata
495 * lily/voice-devnull-engraver.cc (try_music):
496 lily/thread-devnull-engraver.cc: use proper spelling for #'always.
498 * lily/unfolded-repeat-iterator.cc (Unfolded_repeat_iterator):
499 copy here_mom_ too. This fixes an obscure bug with combining
500 partcombine and repeat
502 * lily/chord-tremolo-iterator.cc (Chord_tremolo_iterator): copy
505 2002-07-07 Han-Wen <hanwen@cs.uu.nl>
507 * mutopia/J.S.Bach/pa.ly: remove
508 * mutopia/J.S.Bach/Duette/: remove
510 * scm/font.scm (change-rhs-size): add support for "paper19.ly"
512 * VERSION: 1.5.66 released
514 * scm/grob-description.scm (all-grob-descriptions): add
515 item-interface where necessary
517 * lily/score-engraver.cc (one_time_step): warn for grobs created
518 during stop_translation_timestep().
520 * lily/a2-engraver.cc: restrict acknowledged grob types.
522 * lily/chord-name-engraver.cc: remove acknowledge_grob().
524 * Documentation/user/tutorial.itely: doc carnage.
526 2002-07-06 Rune Zedeler <rune@zedeler.dk>
528 * Documentation/user/refman.itely: Documented accidentals
529 (incl. bugs), subdivideBeams and drum/percussion notation.
531 * lily/translator-group.cc, lily/include/translator-group.hh
532 (Translator_group::set_children_property): removed.
534 * lily/accidental-engraver.cc: don't use
535 Translator_group::set_children_property.
537 * lily/new-accidental-engraver.cc: Added. More correct
538 accidentals, but wrong spacing.
540 * lily/beam-enagraver.cc, lily/auto-beam-engraver.cc: Small
541 subdivideBeams-fixes.
543 * scm/drums.scm: Small changes/fixes in instruments and maps
545 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
547 * lexer-gcc-3.1.sh: Fixes and more comments.
549 * Documentation/topdocs/INSTALL.texi: Add comment about gcc-3.0.4
552 * lily/include/stream.hh:
553 * lily/include/moment.hh:
554 * lily/include/midi-stream.hh:
556 * lily/scm-option.cc:
558 * lily/my-lily-lexer.cc:
560 * lily/midi-stream.cc:
563 * lily/includable-lexer.cc:
564 * flower/include/source-file.hh:
565 * flower/include/parray.hh:
566 * flower/include/dictionary.hh:
567 * flower/include/array.icc:
569 * flower/source-file.cc:
570 * flower/getopt-long.cc: gcc-3.1 fixes.
572 * stepmake/stepmake/generic-targets.make: Add comment about warning.
574 * lexer-gcc-3.0.patch: Add comment, and a fix for installations
575 that have an unpatched flex and gcc-3.1.x.
577 * Documentation/topdocs/INSTALL.texi: Add comments and
578 instructions on gcc-3.1.x.
580 * lexer-gcc-3.1.sh: New file.
582 * aclocal.m4: regenerate.
584 * stepmake/aclocal.m4: Version compare fix.
586 2002-07-05 Han-Wen <hanwen@cs.uu.nl>
588 * ly/engraver-init.ly (RhythmicStaffContext): stems up by default.
590 * lily-guile.hh: remove guile 1.3 compatibility, add 1.4
591 compatibility functions.
593 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
595 * Documentation/windows/lilypond.hint (requires): Add libintl2.
597 2002-07-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
599 * VERSION: 1.5.65 released.
601 * scripts/lilypond-book.py: patches by Tom Cato Amundsen. Adds
602 support for the columnsep when using the geometry package.
604 2002-07-04 Jan Nieuwenhuizen <janneke@gnu.org>
606 * scm/grob-property-description.scm (minimum-space-pair): Remove.
608 * Documentation/windows/README:
609 * Documentation/windows/guile-1.5.6-1.5.6.jcn2.patch:
610 * Documentation/windows/changelog: New file.
612 * Documentation/windows/lilypond.hint (requires): libguile14 (was:
615 2002-07-03 Han-Wen <hanwen@cs.uu.nl>
617 * lily/grob-property.cc (HASHING_FOR_MUTABLE_PROPS): experiment:
618 try hash tables for mutable properties.
620 * lily/align-interface.cc: remove aligned-interface and props
621 minimum-space-pair extra-space
623 * lily/grob-property.cc: new file move grob prop handling here.
625 * lily/lily-guile.cc (ly_deep_copy): add vector support
627 * lily/break-substitution.cc (do_break_substitution): add vector
630 * lily/spanner.cc: remove extend_spanner_over_* funcs.
632 2002-07-02 Jan Nieuwenhuizen <janneke@gnu.org>
634 * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Workaround for
635 broken Debian gcc version string: 'gcc (GCC) 3.1.1 20020606
638 2002-07-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
640 * lily/bar-check-iterator.cc (process): change
641 barbarCheckNoSynchronize to barCheckSynchronize
643 * Documentation/user/bugs.itexi: move to introduction, remove.
645 * Documentation/user/*.itexi: general carnage/cleanage.
647 * Documentation/user/internals.itely: split most of file into
648 internal documentation (.scm and .cc)
650 * buildscripts/make-font-dir.py: put designsize in to X font
653 * make/lilypond.redhat.spec.in: postinstall bugfix
655 2002-07-02 Juergen Reuter <reuter@ipd.uka.de>
657 * lily/ambitus-engraver.cc, lily/ambitus.cc: Various bugfixes:
658 avoid segfault on undefined ambitus pitch; avoid wasteful creation
659 of pitch smobs; defer computation of centralCPosition beyond first
660 timestep to catch also clefs outside of the current voice context.
662 2002-07-02 Han-Wen <hanwen@cs.uu.nl>
664 * input/template/satb.ly: new file
666 2002-07-01 Jan Nieuwenhuizen <janneke@gnu.org>
668 * Documentation/user/glossary.tely: Precautions for lilypond-book:
669 don't use spaces after @lilypond options.
671 * Documentation/topdocs/INSTALL.texi (Top): Remove generic Guile
674 2002-07-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
676 * VERSION (MAJOR_VERSION): 1.5.64
678 2002-06-30 Jan Nieuwenhuizen <janneke@gnu.org>
680 * lily/grob.cc (mark_smob): don't mark parents, explain why.
682 * tex/lilyponddefs.tex: Define outputscale only once.
684 2002-06-29 Jan Nieuwenhuizen <janneke@gnu.org>
686 * configure.in: Require guile 1.4 or newer (was 1.3.4?).
688 2002-06-29 Han-Wen <hanwen@cs.uu.nl>
690 * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
692 * lily/separating-line-group-engraver.cc (acknowledge_grob):
693 ignore grobs with no-spacing-rods set.
695 * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
697 * scm/grob-description.scm (all-grob-descriptions): sort list
699 2002-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
701 * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
704 * Documentation/topdocs/FAQ.texi (Installation): Add
705 lilypond-devel list. Add faq about font removal. Fix faq about
706 generating and running ./configure.
708 2002-06-26 Jan Nieuwenhuizen <janneke@gnu.org>
710 * scm/chord-name.scm (chord::name->text): Workaround: clean markup
713 * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
715 * input/test/ambitus.ly:
716 * lily/ambitus-engraver.cc:
718 * lily/include/ambitus.hh: New file.
720 * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
722 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
724 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
725 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
726 scm/basic-properties.scm, scm/grob-description.scm,
727 scm/grob-property-description.scm: Add support for ambitus.
729 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
731 * lily/text-spanner.cc: add some props to interface (patch
734 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
736 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
737 dereference valid Grob.
739 * configure.in: Quoting fixes.
741 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
743 * VERSION: 1.5.63 released
745 * lily/grob-scheme.cc: new file
747 * lily/break-substitution.cc: split up break substitution
748 functionality, and make a special constant stack-space version for
749 lists of grobs. This should fix the problems of lily in
750 combination with pthreads/qthreads.
752 * lily/grob.cc (mark_smob): bugfix: mark other parent too.
754 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
756 * lily/text-spanner.cc (setup_pedal_bracket):
757 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
758 Fix the lengths of mixed-style piano pedal brackets.
760 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
762 * Documentation/user/tutorial.itely (First steps): Add missing
765 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
766 about guile --with-threads. Hopefully this issue can be resolved
767 rsn, but maybe we should even add warnings for the standard Debian
768 and Red Hat packages?
770 * configure.in: Warn if guile is configured to use threads. Maybe
771 we should make this an error (ie, add to REQUIRED list?)
773 * config.make.in (PACKAGE_NAME):
774 (PACKAGE, package): Don't hardcode.
776 * VERSION (PACKAGE_NAME): Typo fix.
778 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
780 * input/tutorial/brahms-*.ly: new tutorial files.
782 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
784 * scm/script.scm (default-script-alist): fermata is up.
786 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
787 dynamic line spanner when there is no crescendo to connect.
789 * lily/tie.cc (get_control_points): add test to avoid flat ties.
791 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
793 * lily/note-collision.cc (check_meshing_chords): don't crash if no
796 * scm/music-functions.scm (toplevel-music-functions): new
797 definition. Functions to apply automatically. Removes the need for
798 explicitly doing \apply #voicify-music
800 * lily/grob.cc (do_break_substitution): rename function, use
801 global var for criterion argument. Reduces stack usage a little.
803 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
805 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
806 visibility-lambda to break-visibility
808 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
810 * input/bugs/part-combiner.ly: New file.
812 * lily/include/spacing-interface.hh: New file.
814 * lily/include/spaceable-element.hh: Remove.
816 * input/test/script-priority.ly: New file.
818 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
820 * lily/system.cc (output_lines): kill grobs that are only for spacing.
822 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
824 * lily/fingering-engraver.cc (make_script):
825 * lily/script-engraver.cc (process_music):
826 * lily/text-engraver.cc:
827 (process_acknowledged_grobs): Remove hard coded script-priority.
829 * flower/warn.cc: Cleanup.
831 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
834 * aclocal.m4: Regenerate.
836 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
838 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
839 * lily/include/lily-guile.hh: Only include config.h if necessary.
841 * Changelog: cvs changes ml archive test #8.
843 * lily/slur-engraver.cc: Layout fix.
845 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
847 * ly/engraver-init.ly (RhythmicStaffContext): add
848 Dot_column_engraver, resurrect barlines
850 * VERSION: 1.5.62 released.
852 * lily/engraver-group-engraver.cc (do_announces): rename
853 create_grobs () to process_acknowledged_grobs().
855 * lily/grob.cc (programming_error): add programming_error with
858 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
859 fail if a beam doesn't have stems.
861 * lily/engraver-group-engraver.cc (do_announces): scary change in
862 calling convention of create_grobs(): no create_grobs() call
863 before acknowledge_grobs().
865 * lily/sequential-music-iterator.cc (skip): add support for grace
868 * lily/music.cc (Music): fix very subtle and nasty memory
869 corruption bug. Typical symptom: "programming_error: Rhythmic_req
872 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
874 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
876 * ly/engraver-init.ly (RhythmicStaffContext): add
880 * lily/parser.yy: various protection fixes. Less objects are now
883 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
885 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
888 * Documentation/windows/zlily-profile.sh:
889 * Documentation/windows/post-lilypond.sh: Assume normal
890 prefix=/usr for lilypond.
892 * lily/musical-request.cc (length_mom): Display origin with error.
894 * input/test/duration-check.ly: New file.
896 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
899 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
900 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
903 * autogen.sh: Regenerate.
905 * Documentation/topdocs/INSTALL.texi:
907 * stepmake/configure.in:
908 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
909 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
910 ./configure once again requires autoconf == 2.13.
912 * stepmake/autogen.sh: Check for autoconf == 2.13.
914 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
916 * lily/parser.yy (open_request_parens): add input locations to
917 open and close parens.
919 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
921 * lily/tuplet-bracket.cc:
922 * lily/text-spanner.cc:
923 * lily/piano-pedal-engraver.cc:
924 * scm/grob-description.scm:
925 * scm/grob-property-description.scm: Changed the
926 edge-width property of brackets to edge-widen. Changed the sign of
927 the left element of edge-widen so a pair of equal numbers produces
928 a symmetrical bracket.
930 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
932 * ly/espanol.ly: added.
934 * lily/simple-spacer.cc (solve): remove assert.
936 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
938 * lily/forbid-break-engraver.cc (class
939 Forbid_line_break_engraver): new engraver: forbid linebreaks
942 * lily/spacing-spanner.cc (loose_column): add another check: don't
943 move around bar lines as loose columns.
945 * scm/basic-properties.scm (default-break-barline): add pre-break
948 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
950 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
951 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
953 * scripts/lilypond-book.py (environment): Bugfix: update to new
954 TEXMF scheme, from ly2dvi.
956 * lily/lookup.cc (slur): Invoke bezier-bow.
958 * scm/tex.scm (bezier-bow):
959 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
960 (Previously named bezier-sandwich).
962 * scm/tex.scm (bezier-sandwich):
963 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
965 * make/lilypond.mandrake.spec.in (post):
966 * make/lilypond.suse.spec.in (post):
967 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
969 * tex/lilyponddefs.tex: Uncomment feta character support.
971 * Documentation/user/refman.itely (Pitches): Add espanol.ly
974 * ly/catalan.ly: Add comment about (spanish) -s suffix.
976 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
979 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
981 * GNUmakefile.in (short-examples):
982 (long-examples): Bugfix for --srcdir build.
983 (top-web): Rewrite weblist find command.
985 * stepmake/bin/config.sub:
986 * stepmake/bin/config.guess: Update from latest autotools.
989 * autogen.sh: Regenerate.
992 * stepmake/configure.in:
993 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
994 requires autoconf >= 2.50.
996 * stepmake/autogen.sh: Check for autoconf >= 2.50.
998 * Documentation/user/refman.itely: Bugfix for tablature example.
1000 * Documentation/windows/compiling.texi: Update for new and
1003 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1005 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
1006 introduce base-shortest-duration
1008 * lily/parser.yy (music_output_def_body): don't crash when \tempo
1009 in unexpected \midi{} is found.
1011 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
1013 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
1014 the use of make/ly.make for use as an external makefile. Probably
1015 noone except for myself ever used this anyway.
1017 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
1018 to new $datadir convention (<package>/<version>).
1020 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
1022 * VERSION: 1.5.61 released
1024 * Document/user/refman.itely: tablature doc and code updates by
1025 Jean-Baptiste Lamy <jiba@tuxfamily.org>
1027 * input/template/piano-dynamics.ly: bugfixes.
1029 * lily/key-engraver.cc (try_music): read request only once. Don't
1030 overwrite lastKeySignature. Call create_key() only once. This
1031 fixes a bug with multiple equal key changes on polyphonic staffs.
1033 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1035 * scm/grob-description.scm: Add side-position-interface to TextSpanner
1037 * scm/grob-property-description.scm: Document the trill line type.
1039 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
1041 * stepmake/stepmake/generic-vars.make:
1042 * make/lilypond-vars.make:
1043 * GNUmakefile.in (builddir-setup): New setup for builddir run.
1044 Fixes LilyPond run from builddir for --srcdir builds.
1046 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
1049 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
1051 * scm/grob-description.scm (all-grob-descriptions): add
1052 font-family to RehearsalMark
1054 * scm/drums.scm: move over definitions from drum-pitch-init.ly
1056 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
1059 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
1061 * lilypond-mode.el: Propose saving before applying a command:
1062 for saved buffer set default command to LilyPond.
1064 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
1066 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
1069 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
1071 * Documentation/windows/lilypond-doc.hint: New file.
1073 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
1074 Bugfixes for --srcdir html-doc build.
1076 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
1077 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
1079 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
1081 * ly/script-init.ly (pralldown): add some scripts.
1083 * Documentation/user/refman.itely: many edits.
1085 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
1087 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
1088 direction, this breaks staffline avoidance of the bracket when
1091 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1093 * scripts/midi2ly.py: Fix handling of -o
1095 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
1097 * lily/molecule.cc (translate): set max distance to 100 cm.
1099 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1101 * VERSION: 1.5.60 released
1103 * lily/beam.cc: tremolo fix.
1105 * scripts/convert-ly.py: add tuplet-X-visibility rules.
1106 add VerticalExtent -> verticalExtent rules.
1108 * lily/axis-group-engraver.cc: consistent case for
1109 XxxxVerticalExtent properties.
1111 * Documentation/user/refman.itely (Tuplets): update
1112 tuplet-X-visibility properties.
1114 * input/test/defaultbars.ly: Corrected (thanks Mats)
1116 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1118 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
1120 * buildscripts/lilypond-profile.sh: override settings if
1121 LILYPONDPREFIX is set.
1123 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1125 * scripts/ly2dvi.py (non_path_environment): Fix typo
1127 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
1129 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
1131 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
1133 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
1135 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
1136 beam-engraver: use different engraver so we can mix normal and
1139 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
1141 * lily/beam.cc (shift_region_to_valid): Try to shift positions
1142 after slope-damping and concaveness check, so that short-stems are
1145 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
1147 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
1149 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
1151 * VERSION: 1.5.59 released
1153 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
1154 notice that missing features are exercise for user.
1156 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
1158 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
1159 (but alas, not partly precomputed) value for current_y when
1160 calculating stem length demerits.
1161 (calc_stem_y): Temporary precomputed factors fix.
1163 * lily/stem.cc (calc_stem_info): Take multiplicity into account
1166 * input/bugs/melisma-tie-rest.ly: New file.
1168 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
1170 * lily/stem.cc (calc_stem_info): remove min_y member, rename
1171 stuff. Remove kneeing stuff.
1173 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
1176 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
1182 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
1183 patch-level of version in minor-version string. Arg.
1185 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
1187 * ly/engraver-init.ly (TabStaffContext):
1188 enable TabStaff by default.
1190 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
1192 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
1194 * config.hh.in: Remove duplicate DIR_DATADIR entry.
1196 * aclocal.m4: Regenerate.
1198 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
1200 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
1202 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
1204 * lilypond-mode.el: Write notes with fewer keystrokes trough a
1205 "Quick notes"-interface.
1207 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
1209 * input/regression/non-empty-text.ly: Update example with outdated
1212 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
1214 * scripts/convert-ly.py: add textNonEmpty rule
1216 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
1218 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
1220 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
1221 using translate-robust add_molecule instead of add_at_edge.
1222 Bugfix for #(lines (finger "" "1")).
1224 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
1226 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
1229 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
1233 * Documentation/user/refman.itely: Bugfix: add node Repeats and
1234 MIDI. Regenerate menu. Fix @end example.
1236 * lily/accidental.cc: Add cautionary-style to interface.
1238 * mf/feta-beugel.mf (code): use autometric macros for braces.
1239 This fixes input/bugs/braces.
1241 * lily/afm.cc (count): return numOfChars, not size of array
1242 (always equals 256.)
1244 * lily/script.cc (before_line_breaking): postpone setting the
1245 X-parent of vertical scripts. This fixes the case of scripts on
1248 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
1250 * scm/grob-description.scm: fix alignment of barnumber: make sure
1251 it doesn't hit the G-clef.
1253 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
1254 startGraceMusic not startGraceContext).
1256 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
1258 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
1261 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
1263 * lily/accidental-engraver.cc: remove old accidental engraver,
1264 move new one to accidental-engraver.cc.
1266 * lily/local-key-item.cc: remove file
1268 * lily/include/local-key-item.hh: remove file
1270 * scripts/ly2dvi.py (make_preview): add --preview-resolution
1273 * lily/accidental.cc (brew_molecule): support for cautionary
1276 * lily/note-head.cc (internal_brew_molecule): warn if note head
1279 * lily/time-signature.cc (special_time_signature): remove warning
1280 about time signature.
1282 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
1283 reverse springs by limiting fixed-note space.
1285 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
1287 * stepmake/aclocal.m4: Bugfix: complain if program not found.
1289 * scripts/update-lily.py (next_version, prev_version, diff_name):
1290 New function. Patches now named name-prev-latest.diff.gz.
1291 Bugfix: import shutil.
1293 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1295 * input/tutorial/sammartini.ly: fix and document autochange
1298 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
1299 does produce .pdftex files.
1301 * lily/note-collision.cc (check_meshing_chords): move file from
1302 collision.cc, implement merged note heads (there you go, Drarn :-)
1304 * input/regression/collision-heads.ly: new file
1306 * VERSION: 1.5.57 released.
1308 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
1310 * mf/parmesan-heads.mf, scm/grob-description.scm,
1311 scm/grob-property-description.scm, scm/interface-description,
1312 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
1313 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
1314 lily/include/ligature-engraver.hh,
1315 lily/include/ligature-bracket.hh, lily/parser.yy,
1316 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
1317 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
1318 lily/ligature-head.cc, lily/ligature-engraver.cc,
1319 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
1320 implemented white mensural ligatures (still with a big list of
1324 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1326 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
1327 Documentation/user/internals.itely.
1329 * lily/function-documentation.cc: new file. Infrastructure for
1330 self documenting Scheme functions.
1332 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
1334 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
1336 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1338 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
1339 and * (as in "([^>]*)?")
1341 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
1343 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
1344 Add info about CVS. Stable/development are currently 1.4/1.5,
1345 both at lilypond.org.
1347 * autogen.sh: Generate.
1349 * stepmake/configure:
1350 * configure: Regenerate.
1352 * stepmake/stepmake/automatically-generated.sub.make: Keep
1353 original first line.
1355 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
1357 * stepmake/stepmake/generic-targets.make (configure): Generate
1360 * GNUmakefile.in (SCRIPTS):
1361 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
1363 * stepmake/autogen.sh: New file.
1365 * configure: Check for g++ >= 2.95.
1367 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
1368 c/c++ version checking.
1370 * flower/include/string.hh: Typo fix.
1372 * lily/include/midi-item.hh: Remove stray i.
1374 * Documentation/windows/GNUmakefile: Avoid collapsed directory
1377 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
1378 constructs '//' from arguments.
1380 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1382 * scm/lily.scm (ly-load): show SCM filenames if verbose.
1384 * lily/lily-guile.cc (init_functions): add ly-verbose function.
1386 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
1388 * flower/include/{pointer,tuple}*: removed.
1390 * VERSION: released 1.5.56
1392 * scm/music-functions.scm (check-start-chords): function to check
1393 for chords without \context. Apply automatically from parser.
1395 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1397 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
1400 * scm/output-lib.scm: fix ez notation stems.
1402 * lily/paper-outputter.cc: various fixes to speed up compilation.
1404 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1406 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
1408 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
1410 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
1411 determine latex input.
1413 * stepmake/bin/install-sh: Include latest from libtool.
1415 * stepmake/configure:
1416 * configure: Regenerate.
1418 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
1419 (USER_CFLAGS): Bugfix, include CPPFLAGS.
1421 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
1423 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
1424 REQUIRED programs and version. Try to continue configuring, list
1425 missing programs at the end, but don't generate a GNUmakefile if
1426 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
1427 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
1428 fancy for some older systems.
1430 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1432 * lily/score-engraver.cc (typeset_all): sanity check for items
1433 that are Y parent to spanner.
1435 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
1438 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1440 * lily/*.cc: remove as many iostream use as possible.
1442 * flower/ : remove text-db, text-stream, data-file.
1444 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
1446 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
1447 (completize_preamble): don't barf if no preamble present.
1448 (do_file): allow extensions on --output
1450 * scripts/ly2dvi.py (make_preview): make automatic preview of
1451 first system. Small cleanups.
1453 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1455 * scripts/lilypond-book.py (make_pixmap): output png directly.
1457 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
1460 * lily/parser.yy (My_lily_parser): comment out code. (Causes
1461 problems with recent bison releases).
1463 * make/lilypond.redhat.spec.in: add pfa fonts to X.
1465 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
1467 * lilypond-font-lock.el: Fixes the order of the note name list.
1469 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
1471 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
1472 capability, --verbose option, rlimit hack.
1474 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1476 * lily/piano-pedal-engraver.cc: cleanups.
1478 * lily/accidental.cc (after_line_breaking): add break tie
1481 * lily/text-engraver.cc (try_music): don't typeset fingerings
1483 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
1485 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
1487 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
1489 * lily/*.cc: change gh_str02scm() to ly_str02scm().
1491 * lily/spacing-spanner.cc (note_spacing): Bound
1492 shortest-playing-length by the distance to next note. This should
1493 fix chord tremolo spacing.
1495 * VERSION: 1.5.55 released
1497 * lily/stem.cc (off_callback): invisible stem over whole note is
1498 centered on note now.
1500 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
1501 stem-tremolo is stem now.
1503 * input/mozart-hrn*.ly: many corrections.
1505 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
1506 support for dynamic scripts.
1508 * lily/accidental-placement.cc (position_accidentals): check for
1509 collisions as well: should avoid those heads too.
1511 * lily/beam.cc (check_concave): allow undefined gap and
1512 threshold. Change the meaning of threshold/gap == 0.0.
1513 (check_concave): skip Stolba concaveness check if we have a knee
1516 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1518 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
1519 tremolos of dotted duration.
1521 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
1523 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
1524 downstroke again. Sigh.
1526 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
1527 script on note head.
1529 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
1531 * lily/slur.cc (add_column): allow slur over rest.
1533 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
1535 * lily/beam.cc: move scoring constants out of code
1537 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
1539 * mf/feta-nummer.mf: scalability fixes.
1541 * mf/feta-nummer-code.mf: fixes for 5, 8.
1543 * mf/feta-klef.mf: G clef fixes.
1545 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
1547 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
1549 * scripts/lilypond-book.py: %Newline, rather than glue macros
1550 after \end{verbatim}.
1552 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
1554 * Documentation/user/lilypond-book.itely:
1555 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
1558 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
1560 * scm/grob-property-description.scm (beam-space): Junk.
1562 * lily/beam.cc (space_function): New method.
1563 (get_interbeam): Call space-function.
1565 * scm/grob-description.scm (Beam): Initialize space-function with
1566 Beam::space_function.
1568 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
1569 Beam.space-function. Don't quantise grace beams.
1571 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1573 * VERSION: 1.5.54 released
1575 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
1578 * Documentation/index.texi: add PDF links.
1580 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
1582 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
1583 compare #'glyph as strings.
1585 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
1587 * scripts/ly2dvi.py (setup_environment): fix by Mats.
1589 * lily/stem.cc (head_count): Change function name. Change property
1590 to #'note-heads i.s.o. #'heads.
1591 (position_noteheads): Kern noteheads for invisible stems.
1592 (before_line_breaking): Do position_noteheads() for whole note
1595 * lily/accidental-placement.cc (position_accidentals): First
1596 determine refpoints, only then determine extents.
1598 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1600 * lily/accidental-placement.cc (position_accidentals): use all
1601 note heads for note head-skyline.
1603 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
1605 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
1607 * Documentation/windows/setup.hint (requires): Add gsview dependency.
1609 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
1611 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
1613 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
1615 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1617 * mf/feta-schrift.mf: lighter staccato.
1619 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
1621 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
1623 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
1625 * VERSION: 1.5.53 released
1627 * scm/lily.scm (ly-load): use primitive-load for loading.
1629 * lily/misc.cc: remove quantise_iv()
1631 * lily/*.cc: pass read-only arrays by reference.
1633 * lily/grob.cc (common_refpoint_of_array): new function. Try to
1634 use common_refpoint_of_{array, list} when possible.
1636 * lily/include/accidental-placement.hh: new file.
1638 * lily/accidental-placement.cc (alignment_callback): position
1639 accidentals in a better way.
1641 * lily/skyline.cc: new file. Compute distances for collections of
1644 * lily/include/skyline.hh: new file
1646 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
1648 * lily/accidental.cc (class Accidental_interface): grob for a
1651 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
1654 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
1655 together with new accidental-interface.
1657 * lily/include/*.hh: remove spurious set_interface() decls.
1659 * lily/key-signature-interface.cc (brew_molecule): add padding for
1660 natural signs. Make natural typesetting like the sharp.
1663 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
1664 is now slightly curved, not straight.
1667 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
1669 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
1671 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
1672 more strictly. Use more clever regular expressions. Commented regexps.
1674 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
1676 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
1678 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
1680 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
1681 to control width of staff symbol in ragged-right mode (by request
1684 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
1685 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
1686 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
1687 added support for ligature brackets (needed when transcribing
1690 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
1692 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
1693 Fontify notes more strictly.
1695 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
1697 * mf/feta-din-code.mf: dynamic z sign.
1699 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
1701 * lilypond-mode.el: Prevent recoloring strings and comments.
1703 * lilypond-font-lock.el: Handle block comments: block comments
1704 can have also ordinary comments inside.
1706 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
1708 * lily/stem.cc (get_default_dir): set direction to CENTER if
1709 invisible. Various other fixes to deal with invisible stems and
1710 stem-direction == CENTER.
1712 * lily/rest-collision.cc (do_shift): take direction from note if
1715 * input/regression/tie-grace.ly: new file.
1717 * lily/tie-engraver.cc (create_grobs): fix tied graces.
1719 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1720 knee correction. Fixes tight spacing for knees.
1722 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1724 * VERSION: 1.5.52 released
1726 * lily/*.cc: add some undocced properties.
1727 scm/grob-description.scm: idem.
1729 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1731 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1732 multi-measure rests like "R1 *4" and scheme (typically has '#'
1733 in the beginning). Small fixes. Add few reserved words.
1735 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1737 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1740 * Documentation/windows/installing.texi: Suggest gswin32c (console
1741 program) for getting the version. Layout fixes.
1743 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1745 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1746 windows viewing commands, remove silly comment about Yap.
1748 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1750 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1751 configure to find kpathsea on for example Slackware 8.0.
1753 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1755 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1756 by default: avoid "1" over single bar rests.
1758 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1759 and correct the handling of geometry options.
1761 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1763 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1764 implementation for Class::has_interface automatically. Junk all
1765 other implementations.
1767 * lily/grob.cc (internal_get_grob_property): also typecheck
1768 property reads. Catches even more undocced properties. Bugfixing
1769 left for the uninspired masses.
1771 * lily/beam.cc: remove end_after_line_breaking().
1773 * lily/grob.cc (calculate_dependencies): remove list support for
1776 * lily/font-size-engraver.cc: only do font-interface.
1778 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1780 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1783 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1785 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1786 brackets using arpeggio requests.
1788 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1789 molecule-callback to use for drawing the brackets.
1791 * Documentation/user/refman.itely:
1792 * input/test/chord-bracket.ly: Chord brackets documented
1794 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1796 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1798 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1800 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1802 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1803 direction tuplets on beams.
1805 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1807 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1809 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1811 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1812 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1813 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1814 submenu to "LilyPond"-menu.
1816 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1817 an interface to play midi.
1819 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1821 * input/regression/script-stack-order.ly: new file.
1823 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1825 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1827 * mf/feta-din-code.mf: kerning for dynamics.
1829 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1831 * input/regression/dynamics-glyphs.ly: new file
1833 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1835 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1836 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1838 * Documentation/windows/gs-profile.sh:
1839 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1840 moved to gs/gsview windows packages.
1842 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1844 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1845 finding out the duration. Fixes chord tremolo bug.
1847 * lily/completion-note-heads-engraver.cc (process_music): Set
1848 correct duration for all requests of the broken notes.
1850 * input/regression/completion-heads.ly: Added example of
1851 Completion_heads_engraver.
1853 * lilypond-mode.el: Added "2Midi" command
1855 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1857 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1858 edge-width, edge-height and shorten-pair properties for tuplet
1861 * lilypond-indent.el: Support for blinking of matching parentheses
1863 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1865 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1866 cleanups of piano pedal brackets.
1868 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1870 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1872 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1874 * mf/feta-new-code.mf: new dynamic f sign.
1877 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1879 * mf/feta-new-code.mf: new dynamic p sign.
1881 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1883 * lily/note-spacing.cc (stem_dir_correction): only do
1884 beam-correction if a beam is there.
1886 * lily/stem.cc (duration_log): change from flag_i (); better
1888 (get_default_stem_end_position): fix dot/flag collision code.
1890 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1892 * VERSION: release 1.5.50
1894 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1895 unit spring here. Reduces number of warning messages.
1897 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1899 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1901 * scm/generic-property.scm: remove generic-property, property-engraver
1903 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1905 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1907 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1909 * scm/*.scm: remove volta, hairpin and tuplet functions.
1911 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1912 note column for notes/stems/dots that already have parents. Fixes
1913 nested grace contexts.
1915 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1917 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1918 get too curved slurs.
1920 * scm/slur.scm (default-slur-extremity-offset-alist)
1921 (default-phrasing-slur-extremity-offset-alist): Move slur
1922 attachments further away from note-head, vertically. Also, leave
1923 a horizontal gap between slur and stem end.
1925 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1927 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1929 * input/regression/spacing-grace-duration.ly: new file
1931 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1932 for shortest durations.
1934 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1935 extent of the mm rest.
1937 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1940 * lily/tuplet-bracket.cc (make_bracket): new function
1941 (get_x_offset): new function; make tuplet brackets align on stems
1942 if stem has same direction.
1943 (parallel_beam): be anal about matching bracket to tuplet.
1945 * lily/lookup.cc (line): new function Lookup::line().
1947 * scm/tex.scm (dashed-line): change -line to -system in names.
1949 * lily/box.cc (add_point): new function.
1951 * flower/include/interval.hh: new function add_point ().
1952 new function widen()
1954 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1956 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1958 * scm/grob-property-description.scm (number-threshold): Add
1961 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1962 rest if #measures > number-threshold. Use padding (well, fake
1965 * scm/font.scm (make-style-sheet): New styles: mark-number,
1967 (paper20-style-sheet-alist): Add bigger bold fonts.
1969 * lily/mark-engraver.cc (process_music): Use style mark-number or
1972 * .cvsignore: Ignore all kinds of lilypond input and output.
1974 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1976 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1978 * lily/staff-symbol.cc (brew_molecule): make line thickness
1981 * lily/*.cc: replace stafflinethickness by linethickness.
1983 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1985 * input/regression/beam-concave.ly: Add to-be-considered-concave
1988 * lily/beam.cc (check_concave): Add check for large gap between an
1989 inner notehead and the line through outer noteheads.
1991 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1992 value 2.0 staff-space.
1994 * scm/grob-property-description.scm (concaveness-gap): Add
1997 * input/mozart-hrn3-allegro.ly: Fix typo.
1999 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
2001 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
2002 lily/note-head-engraver: improved implementation of roundfilledbox
2003 (according to Han-Wen's request)
2005 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
2006 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
2007 lily/simple-spacer.cc: ragged-right alignment
2009 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
2011 * input/regression/spacing-note-flags.ly: new file
2013 * input/regression/spacing-rest.ly: new file
2015 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
2017 * lily/spacing-spanner.cc (note_spacing): make note spacing after
2018 all grace notes tight (not only the column directly following a
2021 * scm/grob-description.scm (all-grob-descriptions): don't make
2022 mm-rests larger than normal.
2024 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
2025 curved. Remove white space at the right of flags.
2027 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
2029 * ports/ports.make: Bugfix: ignore CVS directories.
2031 * stepmake/.cvsignore: New file.
2033 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
2035 * lily/note-spacing.cc (stem_dir_correction): don't correct when
2036 there is a flag on the stem.
2038 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
2040 * scm/grob-property-description.scm (measure-length):
2041 measure-length grob property.
2043 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
2044 better spacing for breakable columns when they're juxtaposed: use
2045 measure length if applicable
2047 * lily/timing-engraver.cc (start_translation_timestep): store
2048 measure length in breakable column at start of measure.
2050 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
2052 * ROADMAP: Add description for ports dir, to check email upon
2055 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
2057 * VERSION: 1.5.48 released
2059 * lily/multi-measure-rest.cc (symbol_molecule): split off from
2061 (set_spacing_rods): Use symbol_molecule() to determine minimum
2063 (church_rest): split off from brew_molecule()
2064 (big_rest): split off from brew_molecule(). Construct using
2067 * mf/feta-eindelijk.mf: junk multi measure rest.
2069 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
2071 * lily/multi-measure-rest.cc (add_column): remove columns property.
2073 * lily/dynamic-engraver.cc (process_music): add more verbose warning
2075 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
2078 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
2080 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
2081 keywords covered, dropped some non-keywords, include R- and 128-notes
2083 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
2085 * Code clean-up: Junk multiple implementations of ledger line
2086 creation in note_head, custos, and porrectus. This is important
2087 since there soon will be some more applications of ledger lines to
2088 come (e.g. ambitus engraver).
2090 * Make thickness of ledger lines adjustable. This is essential
2091 for mensural notation.
2093 * Fix some bugs in the current ledger_line implementation, most
2094 notably that of the horizontal extent of ledger lines which equals
2095 at least the extent of the metafont ledger_line character, and
2096 which grows(!) if the desired extent shrinks below this limit.
2098 * roundfilledbox: variable blotdiameter
2100 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
2102 * VERSION: 1.5.47 released
2104 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
2106 * lily/porrectus.cc: change line-thickness to thickness, change
2107 stem-direction to direction.
2109 * scm/backend-documentation-lib.scm (check-dangling-properties):
2110 Automatically detect doc'ed properties that are not in an interface
2112 * scm/grob-property-description.scm: property cleanup. Remove many
2113 paper-column props that are non-existent.
2115 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
2116 the grob has a molecule-callback.
2118 * lily/*.cc: remove many set_interface() calls, and their
2121 * input/regression/spacing-knee.ly: new file
2123 * input/regression/spacing-clef-first-note.ly: new file
2125 * lily/staff-spacing.cc (get_spacing_params): different spacing
2126 for pref matter to note at start of line, halfway during line.
2128 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
2129 correction only if stems have same direction (i.e. not for
2130 stem-clef combination).
2131 (stem_dir_correction): maximal correction for knees.
2133 * lily/*.cc: many updates to interface descriptions.
2135 * lily/grob.cc (internal_set_grob_property): add interface check
2136 for every set_grob_property call
2138 * lily/*.cc: document interface stuff in C++
2140 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
2142 * lily/volta-bracket.cc: naming: change volta spanner to
2145 * input/bugs/*.ly: cleanup, remove lots of files.
2147 * buildscripts/mf-to-table.py (write_ps_encoding): generate
2148 .encoding file. WARNING: upgrade to pktrace 1.0.3
2150 * mf/feta-toevallig.mf: change PS name for parentheses.
2152 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2154 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
2157 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
2159 * lily/scope.cc: remove file .
2161 * lily/include/scope.hh: remove file. Remove Scope class
2165 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
2166 score_forbidden_quants): ): take out of SCM, pass parameters so
2167 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
2169 (calc_stem_y): robustness: take care of last_visible_stem == 0.
2172 * lily/lily-guile.cc (ly_unit): return internal unit.
2174 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
2176 * lily/paper-outputter.cc (output_version): output internal unit
2177 from Paper_outputter
2179 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2181 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2183 * scripts/ly2dvi.py: clean up old .*pk font caching code.
2185 * scm/ps.scm: Use uppercase postscript font names for the standard
2188 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
2189 Add all available TeX Type1 fonts, including Feta, to the
2190 Ghostscript font path.
2192 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
2193 version (affects the FontName) in lilypond.map.
2195 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
2196 documentation file to fetaNNlist.ly to avoid name collisions between
2197 lilypond generated .tex file and font .tex macros file.
2200 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
2202 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
2203 made mensural longa and (semi-)brevis leaner
2205 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
2207 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
2208 clean-up: moved bezier shape and slope from porrectus to lookup
2210 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
2211 and /usr/share/texmf/fonts
2213 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2215 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
2217 * lily/text-spanner.cc (brew_molecule): add #'thickness
2218 (brew_molecule): add corrections for thickness in molecule padding.
2220 * lily/line-spanner.cc (line_atom): make function private
2222 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
2223 discover bounding box. This solves the cropping problem.
2225 * lily/bar-check-iterator.cc (process): Only resynchronize bar
2226 check when it fails. This fixes the combination of grace notes
2229 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
2231 * lily/repeated-music.cc (minimum_start): new Scheme callable function
2232 (first_start): new Scheme callable. This will fix repeated music
2233 starting with grace notes.
2235 * lily/music.cc (start_mom): check start-moment-function grob property.
2237 * VERSION: 1.5.45 released
2239 * input/regression/system-extents.ly: new regression test. Test
2242 * lily/system.cc: rename LineOfScore into System
2244 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
2246 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
2247 (ly_get_extent): new Scheme function ly-get-extent
2249 * ps/lilyponddefs.ps: use output-scale for line-x
2252 * scm/ps.scm (font-load-command):
2255 2002-03-20 Rune Zedeler <rune@zedeler.dk>
2257 * lily/beaming-info.cc: Stupid typo fixed
2259 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2260 support for cross-context auto-accidentals.
2261 Now the engraver can stay in Staff-context and see other contexts
2263 Changed properties: autoAccidentals, autoCautionaries
2265 * lily/translator-group.cc (set_children_property):
2266 Function added recursively setting the same property (deep_copied)
2267 for all children of a Translator_group.
2269 * ly/property-init.ly: added commands
2270 \pianoAccidentals \voiceAccidentals
2271 \modernVoiceAccidentals \modernVoiceCautionaries
2273 * ly/engraver-init.ly: Correct initialization of new accidentals.
2275 * scm/translator-property-description.scm: Updated
2277 * input/regression/accidental-voice.ly: Added
2279 * Documentation/regression-test.tely: Added new test
2281 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2283 * VERSION: 1.5.44 released
2285 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
2287 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
2289 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
2292 * tex/feta*.tex: remove.
2294 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
2295 all software dealing with it.
2297 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
2299 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
2300 (this fixes pdf output). Drop awk dependency.
2302 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
2303 dimensions (linewidth) are in mm.
2305 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
2307 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
2309 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
2311 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
2313 * VERSION: 1.5.43 released
2315 * scm/beam.scm (beam-dir-majority-median): if majority is
2316 undecided, use median. Removes a forced dir in sarabande.
2318 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
2320 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
2322 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
2323 widths, heights and shortens are now customisable properties.
2325 * scm/grob-description.scm, scm/grob-property-description.scm: New
2326 properties added to PianoPedalBracket, unnecessary
2327 Y-offset-callbacks removed from *Pedal, undocumented properties
2330 * Documentation/user/refman.itely: Piano pedal updates.
2332 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
2334 * scm/grob-property-description.scm:
2335 * scm/interface-description.scm: Remove old stuff.
2337 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
2338 0.48 (previously 0.42).
2339 (Beam): Remove old stuff.
2342 * lily/stem-tremolo.cc:
2344 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
2345 (previously space-function).
2347 * stepmake/bin/add-html-footer.py: Website title fix.
2349 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2351 * scripts/ly2dvi.py (environment): use new font searching setup.
2353 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
2355 * lily/tfm.cc (dimensions): make code dimension independent
2357 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
2360 * tex/lily-ps-defs.tex: scaling for PS points and MM.
2362 * lily/include/dimensions.hh: try MM as internal unit.
2364 * scm/*.scm: remove invoke-dim1
2366 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2368 * GNUmakefile.in (fontpaths): add fontpaths target,
2370 * make/mutopia-targets.make: add PDF rules.
2372 * make/mutopia-rules.make: add pdf rule.
2374 * buildscripts/mutopia-index.py (list_item): add PDF.
2376 * buildscripts/lilypond-profile.sh (TEXMF): typo.
2378 * make/lilypond-vars.make: set TEXMF for the new font setup.
2380 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2382 * VERSION: 1.5.42 released
2384 * mf/feta-schrift.mf: endless twiddling of Tr.
2386 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
2387 endless twiddling with the bulb shape.
2389 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
2390 little smaller if there is an accidental.
2392 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2394 * buildscripts/lilypond-profile.sh:
2396 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
2397 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
2398 Implement new font installation strategy
2400 * Documentation/misc/fontinstallation (TEXMF): Documentation of
2401 the new font installation strategy.
2403 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
2406 * input/test/staff-size.ly: Simplified using StaffContainer
2408 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
2411 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
2413 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
2415 * lily/beam.cc (score_stem_lengths): new quanting stuff
2416 (score_forbidden_quants): Second and third beam quant stuff.
2418 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
2420 * lily/beam.cc (least_squares): Remember least-squares-dy for
2422 (quantise_interval): Don't quant to dy steeper that
2423 least-squares-dy. Return empty interval if no sane quants found.
2424 (quantise_position): Try quantise_interval until we have
2425 acceptable solution.
2427 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2429 * scm/interface-description.scm (beam-interface): Update.
2431 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2433 * VERSION: 1.5.41 released
2435 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
2436 optima serifs on top of t, bottom of r.
2438 * mf/feta-bolletjes.mf: make ledger line rounder.
2440 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
2442 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
2445 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
2447 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
2448 well as text pedal indications and a combination of both. All
2449 pedal indications are horizontally aligned on a line spanner.
2451 * lily/text-spanner.cc: Edge-width property added to use in
2452 bracketed piano pedals. Function setup_sustain_pedal added to set
2453 the dimensions of the brackets.
2455 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
2456 some of the *Pedal properties tweaked.
2458 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
2459 edge-width (TextSpanner) properties.
2461 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
2463 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
2464 fontified identifiers list.
2466 * input/test/pedal.ly: New pedal features added.
2468 * Documentation/user/refman.itely: New pedal features documented.
2471 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2473 * lily/include/new-beam.hh: Previously new-beam.hh
2474 * lily/beam.cc: Previously new-beam.cc
2475 (least_squares): Bugfix: don't barf on beams with less than two
2476 visible stems (tremolos).
2479 * scm/grob-description.scm (Beam): Junk old beam stuff.
2482 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2486 * mf/feta-eindelijk.mf: new 8th rest.
2488 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
2489 stick out of staffline
2491 * scripts/lilypond-book.py: fixes for texi regular expressions.
2493 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
2495 * lily/include/new-beam.hh:
2496 * lily/new-beam.cc: New file.
2498 * flower/include/interval.hh:
2499 * flower/include/interval.tcc (delta): New method.
2500 (swap): Now public (previously private).
2502 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
2503 1 staff-line-thickness. Sadly, this makes dy quanting problems
2504 (dy quants allowed should depend on actual left y) more visible.
2506 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
2508 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
2510 * scm/grob-property-description.scm (concaveness-threshold): Add
2511 typecheck and description.
2513 * scm/grob-description.scm (Beam): Remove obsolete properties, add
2514 concaveness-threshold (previously concaveness).
2516 * lily/beam.cc (check_concave): Remove choices and debugging
2517 stuff: use best concaveness calculation.
2518 (quantise_dy): Remove choice. Try to never make a slope steeper
2519 by quantising, but certainly never quantise a slope away.
2520 (check_stem_length_f): Remove choice. In case of lengthening
2521 alowed, always lengthen to ideal length.
2523 * Documentation/index.texi: Fix FAQ url.
2525 * Documentation/topdocs/INSTALL.texi: Add information about fink,
2526 compile fix and 1.4 specific fix that doesn't hurt 1.5.
2528 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
2530 * VERSION: 1.5.39 released
2532 * lily/simple-spacer.cc (add_rod): rods take precedence over
2533 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
2535 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
2537 * lily/note-spacing.cc (get_spacing): only insert space for
2538 accidentals if necessary.
2540 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
2542 * lily/spacing-spanner.cc (musical_column_spacing): new
2543 function. Have correct spacing from note to end-of-line as well.
2545 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
2547 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
2549 * darwin.patch: New file.
2551 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
2552 code. Shorten stems by fraction of stems to be shortened.
2554 * lily/stem.cc (get_default_stem_end_position): Shorten only half
2555 of shorten value for boundary cases.
2557 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
2558 (Beam): Set beamed-stem-shorten to (1.0 0.5).
2560 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
2562 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
2564 * scm/grob-description.scm (Beam): Add concaveness. Replace
2565 Beam::cancel_suspect_slope with Beam::check_concave.
2567 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
2568 set slope to horizontal if concaveness > Beam.concaveness. This
2569 handles cases that kludgy cancel_suspect_slope was meant to catch
2571 (cancel_suspect_slope): Remove.
2573 2002-03-12 Rune Zedeler <rune@zedeler.dk>
2575 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
2576 stemLeftBeamCount and stemRightBeamCount to equal 0.
2579 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
2581 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
2582 fixed spacing for pref matter, if the next column is musical, and
2585 * lily/note-spacing.cc (stem_dir_correction): Use correct
2586 discretionary for stem-bar spacing.
2588 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
2590 * VERSION: 1.5.38 released
2592 * lily/grob.cc (warning): Use cause tracking to give more
2593 meaningful errors from the backend.
2595 * lily/property-iterator.cc (check_grob): Warn if setting grob
2596 property in unknown grob.
2598 * mf/feta-toevallig.mf: brushed stems for natural sign.
2600 * lily/molecule.cc (align_to): don't translate empty molecule.
2601 (this triggers a very subtle bug in time-signature.)
2603 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
2605 * lily/spring.cc: remove file.
2607 * input/regression/spacing-stem-bar.ly: new file
2609 * lily/score.cc (run_translator): resurrect point-and-click
2611 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
2614 * lily/spacing-spanner.cc (find_shortest): Shortest note for
2615 spacing is now globally determined, using the most common shortest
2616 note. Notes that are shorter are spaced geometrically, and with
2617 expand hints. This makes spacing more even, and measures that have
2618 very short notes won't be that stretched out.
2620 * mf/feta-klef.mf: F-clef fixes, documentation on the
2621 shape. (WARNING: font changed.)
2623 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
2625 * lily/simple-spacer.cc (add_columns): support for infinitely
2628 * lily/staff-spacing.cc (get_spacing_params): space after
2629 prefatory matter is fixed.
2631 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
2633 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
2634 barline following an upstem.
2636 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
2637 function from next_notes_correction().
2638 (bar_y_positions): idem.
2640 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2642 * input/regression/break.ly (texidoc): bugfix: escape \ in
2645 * lily/staff-spacing.cc (next_notes_correction): Correct the
2646 spacing of a note following a barline.
2649 2002-03-04 Glen Prideaux
2651 * mf/feta-solfa.mf: Shaped note heads
2653 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
2655 * VERSION: 1.5.37 released
2657 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
2658 left-align molecule.
2660 * lily/break-align-interface.cc (do_alignment): completely
2661 rewritten. Now it does not use Align_interface anymore, but a
2662 separate routine. Like StaffSpacing, it reads space-alist from the
2663 breakable grobs. This allows you to set spacing using
2665 \property Staff.Clef \override #'space-alist = '(....stuff....)
2667 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
2668 to Bar_line. Move files around as well.
2670 * lily/time-signature.cc (time_signature): left align time signatures.
2672 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
2673 Corrections of the glyph shape C. Comments added.
2675 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2677 * lily/spacing-spanner.cc: move from third-try.cc; rename
2678 Third_spacing_spanner to Spacing_spanner.
2680 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
2681 spacing stuff. Much cleaner now, and we prepare for neat spacing
2682 tricks around bar lines and such.
2684 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
2685 variables with themselves. (Ouch.)
2687 * lily/span-bar.cc (brew_molecule): don't try to span bars that
2690 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2694 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2697 * lily/music.cc (ly_get_mus_property): typechecking
2698 (ly_set_mus_property): idem
2699 (ly_make_music): idem
2700 (ly_music_name): idem
2702 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2704 * lily/note-spacing.cc (stem_dir_correction): correction for
2705 same stem notes as well.
2707 * lily/pitch.cc (pitch_transpose): stricter typechecking
2709 * mf/parmesan*mf: magnification fixes.
2711 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2713 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2715 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2716 documenting the font. (Doesn't work for parmesan at the moment)
2718 * Documentation/user/appendices.itely (The Feta font): Add list of
2719 Feta font symbols with names.
2721 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2724 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2726 * lily/translator-group.cc (ly_set_trans_property): typechecking
2727 (ly_get_trans_property): typechecking.
2729 * lily/font-metric.cc (ly_text_dimension): typechecking
2730 (ly_find_glyph_by_name): idem.
2732 * scm/bass-figure.scm (brew-complete-figure): support for
2735 * lily/grob.cc (ly_get_paper_var): new function
2737 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2739 * VERSION (PATCH_LEVEL): 1.5.35 released.
2741 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2742 (bracket): New function.
2744 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2745 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2747 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2750 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2753 * lily/grob.cc (ly_get_grob_property): be anal about types.
2754 (ly_set_grob_property): idem
2756 * lily/figured-bass-engraver.cc (process_music): move molecule
2757 building completely to Scheme
2759 * lily/include/musical-request.hh (class Bass_figure_req): Add
2762 * lily/parser.yy (bass_figure): add support for space figure.
2764 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2766 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2768 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2769 (ly_align_to_x): new function ly-align-to!
2771 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2772 function ly-get-font
2774 * mf/feta-nummer.mf: include normal-space dimension.
2776 * lily/collision.cc (check_meshing_chords): don't merge collisions
2779 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2782 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2784 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2786 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2788 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2791 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2794 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2795 scm/grob-description.scm: added mensural fermata symbol
2797 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2799 * VERSION: 1.5.34 released.
2801 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2803 * lily/staff-symbol-referencer.cc (callback): assume that
2804 staff-position is unset in general.
2806 * input/regression/rest-pitch.ly: new file.
2808 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2811 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2813 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2814 as Scheme option. Run regression test by default with
2815 internal-type-checking.
2817 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2819 * lily/lily-guile.cc (type_check_assignment): changed functions.
2821 * scm/*description*.scm: be anal about typechecks. Some changes
2822 for internal variable names.
2824 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2826 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2828 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2830 * VERSION: 1.5.33 released.
2832 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2833 flare_path everywhere (c-clef, numbers).
2835 * lily/bar-number-engraver.cc (process_music): also print bar
2836 number if measure starts with grace note.
2838 * input/regression/grace-bar-number.ly: new test.
2840 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2842 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2845 * scm/music-functions.scm (voicify-music): split chords into
2846 different voices automatically.
2848 * lily/music.cc (ly_music_list_p): new function
2850 * lily/music-sequence.cc (do_relative_octave): robustification
2852 * scm/music-functions.scm: many utility functions
2854 * lily/music.cc (ly_set_mus_property): add type checks to the
2855 Scheme property assignment.
2857 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2860 * mf/lilypond.map: .map file from Mats' page.
2862 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2864 * Some more parmesan related fixes;
2866 * Custos: varying shape (in particular, stem length), depending on the
2867 vertical position of the custos (on staffline / between stafflines);
2869 * Custos: added grob property "neutral-direction" (same semantics as
2870 with stem); introduced new grob property "neutral-position";
2872 * Time-signature: print a warning when resorting to default layout.
2874 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2876 * lily/translator-group.cc (add_fresh_simple_translator): remove
2877 function; initialize() is called through
2878 Translator_group::initialize().
2880 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2881 for the neighbors of a loose column.
2883 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2884 position loose columns so that they don't collide.
2886 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2888 * VERSION: 1.5.32 released.
2890 * scm/font.scm: remove font-name symbol.
2892 * mf/GNUmakefile: use pktrace for making PFAs
2894 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2896 * lily/rest-collision.cc (do_shift): read direction field from
2897 rest-column in case of note-rest collision. This should fix some
2898 problems with rest collisions.
2900 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2902 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2905 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2906 property. Read pitch directly from #'cause.
2908 * mf/feta-puntje.mf: bugfix
2910 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2912 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2914 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2916 * Documentation/windows/compiling.texi: Update.
2918 * Documentation/index.texi: Add link to orphaned compiling for
2921 * Documentation/footer.html.in: Comment fix.
2923 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2925 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2927 * VERSION: 1.5.31 released
2929 * lily/new-spacing-spanner.cc: remove file.
2931 * lily/third-try.cc (do_measure): only take spacings into account
2932 if they pertain to the column pair under consideration. This fixes
2933 spacing bug when mixing eighths triplets and normal eighths.
2935 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2936 lines don't take up space anymore. Document why in note-head.cc
2939 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2941 * lily/font-interface.cc (get_font): reinstate
2942 #'font-magnification. See input/regression/font-magnification.ly
2943 (get_font): Change the definition of #'font-name grob property.
2945 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2946 that have a #'cause field.
2948 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2950 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2952 * mf/GNUmakefile: remove metapost stuff
2954 * stepmake/aclocal.m4: remove metapost detection stuff.
2956 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2958 * mf/GNUmakefile (FET_FILES):
2959 (FONT_FILES): Include parmesan.
2961 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2964 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2966 * Documentation/user/refman.itely (Paper size): Quote braces.
2968 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2970 * stepmake/aclocal.m4: fixed bison version check to be more
2973 * lily/stem.cc (position_noteheads): fix for cluster chords.
2975 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2977 * python 2.2 support.
2979 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2981 * VERSION: 1.5.30 released
2983 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2985 * Documentation/user/refman.itely (Dynamics): add a note about
2988 * scm/grob-description.scm: add a 'translator-type? object
2989 property, so that \property Foo.Bar =\turnOff doesn't cause
2992 * lily/translator-group.cc (add_fresh_group_translator): make
2993 new add-translator functions to make distinction between fresh and
2994 used group-translators. Fixes problem with scripts on auto-changing voice
2996 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2997 add to Score_performer. Fixes bar checks in MIDI
2999 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
3000 heads. Fixes many quirks with ties.
3002 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
3003 in the grob property #'cause, instead of using Grob_info.
3005 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
3006 staff context, fixing dot alignment on collisions.
3008 * lily/beam-engraver.cc (try_music): remove can't find beam start
3009 warning, so that skipTypesetting won't complain.
3011 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
3013 * Documentation/user/refman.itely (Paper size): Documentation fix,
3016 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
3018 * scm/grob-description.scm: \breathe: Use feta font comma by default
3020 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
3022 * input/template/piano-dynamics.ly (pedal): Simplified
3024 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
3026 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
3028 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
3030 * lilypond-mode.el (LilyPond-command-query): ignore case.
3032 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3034 * VERSION: 1.5.29 released
3036 * all files: change 2001 to 2002 in headers globally
3038 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
3039 cheese") font. WARNING: fonts changed.
3041 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
3043 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
3045 * mf/*.mf: Added some more vaticana/solesmes style font symbols
3047 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
3049 * mf/*.mf: Fixed a few typos in various .mf files
3051 2002-01-17 Rune Zedeler <rune@zedeler.dk>
3053 * mf/: added macro soft_penstroke
3055 softened some glyphs
3056 redrawn triangular noteheads
3058 added classical quarter rest
3060 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
3062 * lily/bar.cc: Bugfix: repeat dots when even number of staff
3063 lines and staff_space>=2
3065 * lily/rest.cc: Use default rests when current style glyphs not
3067 \property Staff.Rest \override #'style = #'classical
3069 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
3071 * input/bugs/first-tie.ly: New file.
3073 * input/bugs/spacing-clash.ly: New file.
3075 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
3079 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
3081 * lilypond-indent.el: New file providing indentation for
3082 parenthesised blocks of lilypond code in Emacs
3084 * lilypond-font-lock.el: Changes to the syntax table to facilitate
3085 indentation and handle block comments properly. Distinguish
3086 accents from close-brackets in fontification.
3088 * lilypond-mode.el: LilyPond-indent-command set appropriately.
3090 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
3092 * Documentation/windows/installing.texi:
3093 * Documentation/windows/compiling.texi: Include from 1.4.10.
3095 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
3097 * input/bugs/first-midi-tie.ly: New file.
3099 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
3101 * VERSION: 1.5.28 released
3103 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
3104 illicit beams on [c4 c4] etc.
3106 * lily/bar-check-iterator.cc (Bar_check_iterator): new
3107 file. Make separate iterator for Bar_checks. Bar_check now happen
3108 outside engravers, meaning that you can use them with
3109 skipTypesetting. Associated changes in other files.
3111 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
3114 * lily/spacing-spanner.cc (stem_dir_correction): removed function
3116 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
3118 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
3120 * lily/stem.cc (set_spacing_hints): removed function
3122 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
3123 correction for spacing; now take vertical extents of the stem into
3126 * lily/third-try.cc: More hacking to get spacing working.
3128 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
3129 sits at staff level and creates note spacing objects. Scrap it
3130 again, and document why.
3132 * lily/include/group-interface.hh: rename functions.
3134 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
3136 * stepmake/stepmake/c++-rules.make:
3137 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
3139 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
3141 * make/lilypond-vars.make:
3142 * scripts/ly2dvi.py (setup_environment):
3143 * scripts/lilypond-book.py (setup_environment): Also set tex
3146 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3148 * VERSION: 1.5.27 released.
3150 * Documentation/user/refman.itely (Bar numbers): added bar number
3153 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
3156 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
3158 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
3159 spread the last few lines all over the last page of a score.
3161 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
3163 * lily/third-try.cc: 3rd try at revising spacing
3164 engine. Not yet finished.
3166 * lily/paper-column.cc (brew_molecule): print debugging marks on a
3169 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
3170 collecting past note heads.
3172 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
3175 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
3176 class. Keep a queue of grobs that are still playing in busyGrobs.
3178 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
3179 function. Use busyGrobs to detect playing notes.
3181 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
3183 * Documentation/topdocs/INSTALL.texi: Added note about broken
3184 python-2.1. Updated note for Debian's broken (well, broken for
3185 our use anyway) tex configuration.
3187 * scripts/lilypond-book.py (re_dict): python2.2 fix.
3189 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
3190 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
3192 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
3193 (But left margin of png's still misses a few pixels. Arg.)
3195 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
3197 * lilypond-mode.el (LilyPond-command-next-midi): Make
3198 possible to kill midi-process (using "C-c C-m").
3200 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
3202 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
3203 Convert strings with dimensions to numbers.
3205 * lily/volta-engraver.cc: only make a bracket for the top staff,
3206 as found in stavesFound.
3208 * lily/bar-number-engraver.cc: remove staff administration.
3210 * lily/mark-engraver.cc (acknowledge_grob): remove staff
3211 administration. This breaks support for invisible-staff.
3213 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
3214 symbols into stavesFound.
3216 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
3217 grobs, and put them into columns.
3219 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
3220 Engraver_group_engraver as a potential candidate for ack'ing grobs.
3222 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
3224 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
3225 midi section in the Emacs-mode, so it is possible to play certain
3226 score in a multiscore lilypond-file.
3228 2001-12-09 Rune Zedeler <rune@zedeler.dk>
3229 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
3230 (FIXME: not accessible from guile)
3232 * lily/accidental-engraver.cc: rewrote accidental-routines to get
3233 better support for Kurt Stone's suggestions.
3234 Removed properties: noResetKey, forgetAccidentals, autoReminders,
3236 Changed property: localKeySignature.
3237 Added properties: extraNatural, autoAccidentals,
3240 (BUGFIX: broken-tie-support destroyed in 1.5.16)
3242 * ly/property-init.ly: added commands
3243 \defaultAccidentals \modernAccidentals \modernCautionaries
3244 \noResetKey \forgetAccidentals
3246 * ly/engraver-init.ly: Correct initialization of new accidentals.
3248 * scm/translator-property-description.scm: The new properties
3251 * input/: Some examples added, some changed.
3253 * Documentation/regression-test.tely: Added quick test of new
3256 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3258 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
3261 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3263 * lily/beam.cc (before_line_breaking): Make beams without stems
3264 or with only one stem disappear.
3266 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3268 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
3269 files to have standardised HTML bibliography output. Update build
3270 docs to reflect this.
3272 * lily/include/simple-spacer.hh (struct Simple_spacer): add
3273 active_count_, so that we don't have to look for active springs
3276 * scm/interface-description.scm,scm/grob-property-description.scm:
3279 * lily/simple-spacer.cc (solve): Handle forced line breaks
3280 here. Fixes problems when combining linebreaks with non-fitting
3283 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
3285 * 1.4.9.jcn3 forward ports.
3287 * Really included .cvsignore.
3289 * Included Han-Wen's uu1 windows fixes.
3291 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
3293 * Added Cygwin setup.hint
3295 * Removed tex, python wrappers and postinstalls to go with Cywgin's
3296 tetex/texmf, python installations.
3298 * Updated cygwin installer.
3300 * ly2dvi: Don't accept filenames with spaces (+ fix).
3302 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
3304 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
3306 * lily/translator-def.cc: Remove manual symbol caching.
3308 * lily/script-column.cc (before_line_breaking): robustness check:
3309 don't crash if no direction set.
3311 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
3313 * scripts/pmx2ly.py (Parser.parse_header): more generic header
3317 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
3319 * lily/note-head.cc (head_extent): added to compute width without
3320 ledger lines. By default, ledger lines take up width now.
3322 * input/regression/fingering.ly: demonstrate auto fingering.
3323 Horizontal placement is still buggy.
3325 * lily/fingering-engraver.cc (class Fingering_engraver):
3326 added. Provides support for horizontal fingering scripts
3328 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
3330 * lily/side-position-interface.cc (add_staff_support): add staff
3331 only for Y-axis side positions.
3333 * lily/parser.yy (request_chord): Fix mem leak.
3335 * lily/musical-request.cc (transpose): moved to Music::transpose()
3337 * lily/include/grob-info.hh: Change music pointer to SCM, so we
3338 can store grobs as grob-creation cause as well.
3340 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
3341 handle when adding. Use precomputed symbols throughout lily.
3343 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
3344 track of spacing issues.
3346 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
3347 to keep track of staff spacing
3349 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
3351 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
3352 code clean from conditionals and have a concentrated sets of
3353 compatibility fixes for old guile versions.
3355 * Fixes for guile 1.4, including embedded ps.
3357 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3359 * lily/stanza-number-engraver.cc (process_music): allow pairs as
3360 well for markup texts.
3362 * lily/musical-request.cc (length_mom): kludge for null pointer.
3364 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
3366 * scm/lily.scm (sign): bugfix
3368 * CHANGES: Change log instated.
3370 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.