1 2002-07-24 Jan Nieuwenhuizen <janneke@gnu.org>
3 * GNUmakefile.in: Junk intl.
5 * config.make.in (prefix): Prepend $(DESTDIR) to allow install
6 without overriding prefix.
8 * aclocal.m4: Regenerate.
10 * stepmake/aclocal.m4: Don't expand $prefix: fixes install with
19 * tex/GNUmakefile: use local_package_datadir iso datadir.
21 * make/substitute.make (ATVARIABLES): Add local_lilypond_datadir.
23 * aclocal.m4: Regenerate.
27 * stepmake/aclocal.m4: Cleanups and more conventional naming for
28 datadir ($prefix/share), package_datadir ($prefix/$package), and
29 local_package_datadir ($prefix/$package/$version).
31 * make/lilypond-vars.make:
33 * scripts/lilypond-book.py:
35 * scripts/midi2ly.py: use local_package_datadir iso datadir.
37 * GNUmakefile.in: build_datadir without version.
39 * lily/main.cc: Datadir cleanup.
41 * lily/text-item.cc (lookup_text):
42 * lily/music-output-def.cc (print_smob):
43 * lily/mensural-ligature.cc (brew_molecule):
44 * lily/beam-quanting.cc (score_slopes_dy, score_forbidden_quants):
47 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
49 * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: Warn when not
50 using 6 systems, like the original.
52 * input/test/count-systems.ly: New file.
54 * lily/spanner.cc (get_broken_into):
55 * lily/grob.cc (original_scm, line_scm): New function.
57 * lily/include/grob.hh (ly_scm2grob_array): Moved from
58 group-interface.hh and renamed.
59 (ly_grob_array2scm): New function.
61 2002-07-23 Juergen Reuter <reuter@ipd.uka.de>
63 * lily/ambitus-engraver.cc: bugfix: create ambitus grob during
66 2002-07-23 Han-Wen <hanwen@cs.uu.nl>
68 * lily/separation-item.cc (width): cache extent in extent-X
70 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
71 only add extent for non-musical column.
73 * lily/accidental-placement.cc (split_accidentals): new function
74 (get_relevant_accidental_extent): new function
76 * lily/staff-spacing.cc (next_note_correction): idem
78 * lily/separating-group-spanner.cc (find_rods): use conditional_width().
80 * scm/sketch.scm: fix roundfilledbox definition
82 * lily/lily-guile.cc (robust_list_ref): be sensible with negative
83 argument. This fixes too-long stems on half and quarter notes.
85 2002-07-23 Jan Nieuwenhuizen <janneke@gnu.org>
87 * Documentation/index.texi: Add, fix, change some links and names,
88 including dump of wiki wiki.
90 * Documentation/GNUmakefile (local-WWW): Slurp wiki.
92 * buildscripts/wiki-slurp.py: New file. Accept multiple pattern.
93 (unwiki): Replace local urls with <img src> too.
95 * Documentation/GNUmakefile (wiki-dump): New target.
97 * Documentation/header.html.in: Link to Documentation/index
98 renamed to Index (was other...).
100 * Documentation/regression-test.tely: Remove.
102 * make/lysdoc-targets.make (local-WWW): Add default targets .ps.gz
105 2002-07-22 Han-Wen <hanwen@cs.uu.nl>
107 * VERSION: 1.5.69 released
109 * lily/accidental-placement.cc (position_accidentals): document
112 * lily/skyline.cc (skyline_meshing_distance): bugfixes.
114 2002-07-22 Jan Nieuwenhuizen <janneke@gnu.org>
116 * input/regression/abe.ly:
117 * input/test/transposing.ly: Remove mention of mudela.
119 * scripts/lilypond-book.py (make_pixmap): Don't use quiet_system,
120 ie, don't redirect PNG output to /dev/null. Fixes lys-to-tely
123 * input/test/mark.ly:
124 * Documentation/user/refman.itely: Re-enable \mark #'() example.
126 * lily/parser.yy: Revert to MARK scalar.
128 2002-07-21 Han-Wen <hanwen@cs.uu.nl>
130 * lily/accidental.cc (accurate_boxes): add function to represent
131 flat with 2 boxes. Improves flat-flat accidental spacing.
133 * lily/accidental-placement.cc (stagger_apes): try to arrange accs
134 in a C form, with the top accidental closet to the chord.
136 * lily/stem.cc (get_default_stem_end_position): don't crash if
138 (get_default_stem_end_position): idem for stem-shorten.
140 * mf/feta-toevallig.mf: enlarge flat bbox.
142 * input/regression/lyrics-extender.ly: new file.
144 * lily/lyric-extender.cc (brew_molecule): don't add
145 right-trim-amount if extender is broken.
147 * scripts/ly2dvi.py (global_latex_preamble): bugfix (thanks Werner).
149 2002-07-21 Jan Nieuwenhuizen <janneke@gnu.org>
151 * Documentation/index.texi: Add pointers to new regression and
154 * Documentation/user/converters.itely:
155 Documentation/user/invoking.itexi: Some small fixes for uniform
158 * input/allfontsize.ly, size*.ly: New files, moved from
161 * input/font20.ly, font-body.ly: New files, moved from input/test.
163 * input/font*.ly: New files, moved from input/test.
165 * input/test/*.ly: Remove empty files, fix broken ones.
167 * input/test/different-time-signatures.ly: Add FIXME marker;
168 comment-out broken code.
170 * Documentation/regression-test.tely: Comment-out, add
171 obsolete-marker and url to regression-test-dir.
173 * input/test/GNUmakefile:
174 * input/regression/GNUmakefile: Add rule for lys-to-tely.py.
176 * input/regression/+.ly:
177 * input/test/+.ly: New file.
179 * input/test/cue-notes.ly: better example
181 * Documentation/user/refman.itely (Font selection): font size doco
183 * input/mutopia/F.Schubert/standchen.ly: note bugfix
185 * lily/stem.cc: rewrite of scoring to give sane results on knee
188 * lily/beam.cc (set_stem_lengths): extend stems for gapped tremolo
190 (connect_beams): chop off beaming outside the beam. Fixes problem
193 * lily/score-engraver.cc (initialize): error if feta20.afm
195 2002-07-19 Han-Wen <hanwen@cs.uu.nl>
197 * scm/engraver-documentation-lib.scm
198 (document-property-operation): add properties to context
201 * scm/documentation-lib.scm (pad-string-to): align info menus.
203 2002-07-18 Jan Nieuwenhuizen <janneke@gnu.org>
205 * debian/GNUmakefile: Remove lilypond.links.
207 * debian/: Debian patch (Anthony Fok).
209 * debian/lilypond.links: Remove, as per Anthony's request.
211 * aclocal.m4: Regenerate.
213 * stepmake/aclocal.m4: Add --with-kpathsea-include,
214 --with-kpathsea-lib options.
216 * scripts/mup2ly.py: Cut-n-paste include missing lilylib.
218 * stepmake/stepmake/compile-vars.make:
219 * stepmake/stepmake/executable-rules.make:
220 * stepmake/stepmake/python-module-rules.make:
221 * stepmake/stepmake/shared-library-rules.make: Use ALL_LDFLAGS, to
222 guard agains user override of LDFLAGS.
224 * Documentation/user/refman.itely: Compile fix for \mark #'(music ...).
226 * Documentation/user/internals.itely: Use ly-set-mus-property!.
228 * cygwin/mknetrel: New file.
230 * cygwin: New directory. Moved Cygwin stuff from
231 Documentation/windows.
233 * Documentation/windows/fix-suffixes.sh:
234 * buildscripts/walk.sh: Junk.
236 * aclocal.m4: Regenerate.
238 * buildscripts/walk.sh: Remove.
240 * stepmake/stepmake/topdocs-targets.make:
241 * stepmake/stepmake/help2man-rules.make:
242 * stepmake/stepmake/generic-vars.make:
243 * stepmake/make/stepmake.make:
244 * Documentation/user/GNUmakefile:
245 * make/stepmake.make:
246 * make/lilypond-vars.make:
248 * stepmake/aclocal.m4: Remove builddir cruftyness.
250 * stepmake/stepmake/c++-rules.make: Use ALL_CXXFLAGS, to guard
251 agains user override of CXXFLAGS.
253 * stepmake/stepmake/c++-vars.make (ALL_CXXFLAGS): Include CXXFLAGS.
255 * stepmake/stepmake/c-rules.make: Use ALL_CFLAGS, to guard
256 against user override of CFLAGS.
258 * stepmake/stepmake/c-vars.make (ALL_CFLAGS): Include CFLAGS.
260 2002-07-17 Han-Wen <hanwen@cs.uu.nl>
262 * GNUmakefile.in: distribute lexer-gcc-3.1.sh as well
264 * lily/music.cc (LY_DEFINE): change ly-set-mus-property to
267 * lily/grob.cc (LY_DEFINE): change ly-set-grob-property to ly-set-grob-property!
269 * lily/parser.yy (Repeated_music): shift duration log for tremolo
270 repeats, instead of klutzing around.
272 * lily/chord-tremolo-engraver.cc (acknowledge_grob): set X parent
273 of stem tremolo grobs.
275 * scm/music-functions.scm (shift-duration-log): new function, add
276 to duration log of all notes.
278 * lily/duration.cc: add compression factor arguments to
280 compression-factor, dot-count, duration-log: add scheme functions.
282 * lily/mark-engraver.cc (process_music): allow \mark to take a
283 number as argument as well.
285 2002-07-16 Han-Wen <hanwen@cs.uu.nl>
287 * lily/rest.cc (after_line_breaking): only translate the whole
288 rest if we have more than 1 staff line
290 2002-07-16 Han-Wen Nienhuys <hanwen@cs.uu.nl>
292 * VERSION: release 1.5.68
294 * scripts/lilypond-book.py: fixes by Tom Cato Amundsen.
296 2002-07-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
298 * lily/beam-quanting.cc (score_forbidden_quants): split beam
299 quanting functionality.
300 (quanting): argh. Forgot how linear interpolation works. Bugfix.
302 * Documentation/index.texi (Top): add whole-big-page documentation.
304 * lily/side-position-interface.cc (general_side_position):
305 Subtract parent offset iso. adding it. (Huh? How could this have
308 * lily/clef-engraver.cc (stop_translation_timestep): add staff to
309 OctavateEight support.
311 * scripts/lilypond-book.py: add smallverbatim option.
313 * lily/beam.cc (quanting): bugfix. Behave sanely when no visible
316 * lily/accidental-placement.cc (position_accidentals): add padding
317 property. Increase default setting to 0.2.
319 2002-07-15 Han-Wen <hanwen@cs.uu.nl>
321 * lily/paper-column.cc (before_line_breaking): urg. bugfix.
323 * lily/separating-line-group-engraver.cc (finalize): don't replace
324 right-items, but add to list. This fixes a bug when a staff ends
325 with cross-staff voice switching away.
327 2002-07-14 Han-Wen <hanwen@cs.uu.nl>
329 * input/mutopia/GNUmakefile: move mutopia/ to input/mutopia/
331 * lily/beam.cc (quanting): add explicit support for cross-staff
332 beaming: make slope penalty larger.
334 * lily/beam.cc: use common refpoints throughout. This fixes many
337 * lily/paper-column.cc (before_line_breaking): bug fix.
339 * lily/volta-engraver.cc (process_music): do something sensible if
342 * scripts/lilypond-book.py (make_pixmap): opps. Do png conversion
345 * Documentation/user/refman.itely (Global layout): made section on
346 global layout, added spacing documentation.
348 * lily/staff-symbol.cc (brew_molecule): change ragged right for
349 staff symbols. See comments.
351 2002-07-14 Jan Nieuwenhuizen <janneke@gnu.org>
353 * lily/voice-devnull-engraver.cc (acknowledge_grob): Use proper
354 spelling for always. In solo a due mode, kill spanners when the
355 other thread has solo.
357 * lily/thread-devnull-engraver.cc (acknowledge_grob): In solo a
358 due mode, kill everything when the other thread has solo.
360 * lily/a2-engraver.cc (acknowledge_grob): In solo a due mode, do
361 not set directions when we have solo.
363 * lily/part-combine-music-iterator.cc (process): Set property
364 "othersolo" if the other thread has solo.
366 2002-07-13 Han-Wen <hanwen@cs.uu.nl>
368 * VERSION: 1.5.67 released.
370 * lily/beam.cc (calc_stem_y): fix beams on quarter notes.
372 * lily/stem-tremolo.cc (brew_molecule): add code for stem tremolos.
374 * lily/auto-beam-engraver.cc (create_beam_p): remember Beam
375 settings at the start of a potential auto beam.
377 * lily/include/sequential-iterator.hh (class Sequential_iterator):
378 bugfix: protect music list from GC.
380 * Documentation/user/introduction.itely: misc fixes.
382 * scripts/ly2dvi.py (run_latex): show latex error log. Ask for
383 bugreport if lilypond is killed by a signal.
385 * input/regression/beam-funky.ly: new file
387 * lily/input-smob.cc (make_input): GUILE 1.7 compatibility fixes.
389 * lily/beam.cc: complete rewrite of multiplicity. This fixes 16th
391 (quanting): add french beaming support (property french-beaming)
392 (stem_beams): removed.
394 i2002-07-12 Mats Bengtsson <matsb@s3.kth.se>
396 * lily/beam.cc (after_line_breaking): Set correct stem lengths
397 also when beam positions are set manually.
398 (consider_auto_knees): Do not use automatic knees if the directions
399 are set manually by the user.
401 2002-07-12 Han-Wen <hanwen@cs.uu.nl>
403 * input/regression/grace-auto-beam.ly: new file
405 * input/regression/grace-unfold-repeat.ly: new file
407 * lily/auto-beam-engraver.cc (test_moment): never start on grace moments.
409 * lily/forbid-break-engraver.cc (start_translation_timestep): skip
410 grace notes for break-forbidding. Breaks during grace notes are
411 handled by Bar_engraver.
413 * lily/unfolded-repeat-iterator.cc: Reimplement
414 Unfolded_repeat_iterator, Volta_repeat_iterator using
415 Sequential_iterator. All grace functionality from {} carries over
418 * lily/sequential-iterator.cc: new file: form baseclass for
419 sequential music iterator and unfolded/volta repeat iterator.
421 2002-07-11 Han-Wen Nienhuys <hanwen@cs.uu.nl>
423 * lily/include/debug.hh: deprecate.
425 * lily/spacing-spanner.cc (set_springs): add support for
426 common-shortest-duration field.
428 * lily/parser.yy (translator_spec_body): allow \set in \translator
429 {} block. This is the same as \override, here.
431 * lily/score-engraver.cc (one_time_step): don't warn about columns
432 when skipTypesetting == #t.
434 * lily/spacing-spanner.cc (musical_column_spacing): change
435 ragged right function to produce natural spacing.
437 2002-07-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
439 * lily/paper-column.cc (before_line_breaking): update
440 #'bounded-by-me field for suicided items. This fixes crazy
441 spacing in \partcombine scores.
443 2002-07-10 Jan Nieuwenhuizen <janneke@gnu.org>
445 * config.hh.in: Add HAVE_SSTREAM.
447 * configure.in: Add check for sstream header.
449 2002-07-09 Mats Bengtsson <matsb@s3.kth.se>
451 * flower/source-file.cc: Fix compatibility with older g++.
453 2002-07-09 Jan Nieuwenhuizen <janneke@gnu.org>
455 * input/twinkle.ly: Bugfix: no automaticMelismata.
457 2002-07-08 Han-Wen <hanwen@cs.uu.nl>
459 * mutopia/J.S.Bach/Cembalo-Partitas/: remove
461 * ly/engraver-init.ly (ScoreContext): turn on automaticMelismata
464 * lily/voice-devnull-engraver.cc (try_music):
465 lily/thread-devnull-engraver.cc: use proper spelling for #'always.
467 * lily/unfolded-repeat-iterator.cc (Unfolded_repeat_iterator):
468 copy here_mom_ too. This fixes an obscure bug with combining
469 partcombine and repeat
471 * lily/chord-tremolo-iterator.cc (Chord_tremolo_iterator): copy
474 2002-07-07 Han-Wen <hanwen@cs.uu.nl>
476 * mutopia/J.S.Bach/pa.ly: remove
477 * mutopia/J.S.Bach/Duette/: remove
479 * scm/font.scm (change-rhs-size): add support for "paper19.ly"
481 * VERSION: 1.5.66 released
483 * scm/grob-description.scm (all-grob-descriptions): add
484 item-interface where necessary
486 * lily/score-engraver.cc (one_time_step): warn for grobs created
487 during stop_translation_timestep().
489 * lily/a2-engraver.cc: restrict acknowledged grob types.
491 * lily/chord-name-engraver.cc: remove acknowledge_grob().
493 * Documentation/user/tutorial.itely: doc carnage.
495 2002-07-06 Rune Zedeler <rune@zedeler.dk>
497 * Documentation/user/refman.itely: Documented accidentals
498 (incl. bugs), subdivideBeams and drum/percussion notation.
500 * lily/translator-group.cc, lily/include/translator-group.hh
501 (Translator_group::set_children_property): removed.
503 * lily/accidental-engraver.cc: don't use
504 Translator_group::set_children_property.
506 * lily/new-accidental-engraver.cc: Added. More correct
507 accidentals, but wrong spacing.
509 * lily/beam-enagraver.cc, lily/auto-beam-engraver.cc: Small
510 subdivideBeams-fixes.
512 * scm/drums.scm: Small changes/fixes in instruments and maps
514 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
516 * lexer-gcc-3.1.sh: Fixes and more comments.
518 * Documentation/topdocs/INSTALL.texi: Add comment about gcc-3.0.4
521 * lily/include/stream.hh:
522 * lily/include/moment.hh:
523 * lily/include/midi-stream.hh:
525 * lily/scm-option.cc:
527 * lily/my-lily-lexer.cc:
529 * lily/midi-stream.cc:
532 * lily/includable-lexer.cc:
533 * flower/include/source-file.hh:
534 * flower/include/parray.hh:
535 * flower/include/dictionary.hh:
536 * flower/include/array.icc:
538 * flower/source-file.cc:
539 * flower/getopt-long.cc: gcc-3.1 fixes.
541 * stepmake/stepmake/generic-targets.make: Add comment about warning.
543 * lexer-gcc-3.0.patch: Add comment, and a fix for installations
544 that have an unpatched flex and gcc-3.1.x.
546 * Documentation/topdocs/INSTALL.texi: Add comments and
547 instructions on gcc-3.1.x.
549 * lexer-gcc-3.1.sh: New file.
551 * aclocal.m4: regenerate.
553 * stepmake/aclocal.m4: Version compare fix.
555 2002-07-05 Han-Wen <hanwen@cs.uu.nl>
557 * ly/engraver-init.ly (RhythmicStaffContext): stems up by default.
559 * lily-guile.hh: remove guile 1.3 compatibility, add 1.4
560 compatibility functions.
562 2002-07-05 Jan Nieuwenhuizen <janneke@gnu.org>
564 * Documentation/windows/lilypond.hint (requires): Add libintl2.
566 2002-07-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
568 * VERSION: 1.5.65 released.
570 * scripts/lilypond-book.py: patches by Tom Cato Amundsen. Adds
571 support for the columnsep when using the geometry package.
573 2002-07-04 Jan Nieuwenhuizen <janneke@gnu.org>
575 * scm/grob-property-description.scm (minimum-space-pair): Remove.
577 * Documentation/windows/README:
578 * Documentation/windows/guile-1.5.6-1.5.6.jcn2.patch:
579 * Documentation/windows/changelog: New file.
581 * Documentation/windows/lilypond.hint (requires): libguile14 (was:
584 2002-07-03 Han-Wen <hanwen@cs.uu.nl>
586 * lily/grob-property.cc (HASHING_FOR_MUTABLE_PROPS): experiment:
587 try hash tables for mutable properties.
589 * lily/align-interface.cc: remove aligned-interface and props
590 minimum-space-pair extra-space
592 * lily/grob-property.cc: new file move grob prop handling here.
594 * lily/lily-guile.cc (ly_deep_copy): add vector support
596 * lily/break-substitution.cc (do_break_substitution): add vector
599 * lily/spanner.cc: remove extend_spanner_over_* funcs.
601 2002-07-02 Jan Nieuwenhuizen <janneke@gnu.org>
603 * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Workaround for
604 broken Debian gcc version string: 'gcc (GCC) 3.1.1 20020606
607 2002-07-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
609 * lily/bar-check-iterator.cc (process): change
610 barbarCheckNoSynchronize to barCheckSynchronize
612 * Documentation/user/bugs.itexi: move to introduction, remove.
614 * Documentation/user/*.itexi: general carnage/cleanage.
616 * Documentation/user/internals.itely: split most of file into
617 internal documentation (.scm and .cc)
619 * buildscripts/make-font-dir.py: put designsize in to X font
622 * make/lilypond.redhat.spec.in: postinstall bugfix
624 2002-07-02 Juergen Reuter <reuter@ipd.uka.de>
626 * lily/ambitus-engraver.cc, lily/ambitus.cc: Various bugfixes:
627 avoid segfault on undefined ambitus pitch; avoid wasteful creation
628 of pitch smobs; defer computation of centralCPosition beyond first
629 timestep to catch also clefs outside of the current voice context.
631 2002-07-02 Han-Wen <hanwen@cs.uu.nl>
633 * input/template/satb.ly: new file
635 2002-07-01 Jan Nieuwenhuizen <janneke@gnu.org>
637 * Documentation/user/glossary.tely: Precautions for lilypond-book:
638 don't use spaces after @lilypond options.
640 * Documentation/topdocs/INSTALL.texi (Top): Remove generic Guile
643 2002-07-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
645 * VERSION (MAJOR_VERSION): 1.5.64
647 2002-06-30 Jan Nieuwenhuizen <janneke@gnu.org>
649 * lily/grob.cc (mark_smob): don't mark parents, explain why.
651 * tex/lilyponddefs.tex: Define outputscale only once.
653 2002-06-29 Jan Nieuwenhuizen <janneke@gnu.org>
655 * configure.in: Require guile 1.4 or newer (was 1.3.4?).
657 2002-06-29 Han-Wen <hanwen@cs.uu.nl>
659 * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
661 * lily/separating-line-group-engraver.cc (acknowledge_grob):
662 ignore grobs with no-spacing-rods set.
664 * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
666 * scm/grob-description.scm (all-grob-descriptions): sort list
668 2002-06-27 Jan Nieuwenhuizen <janneke@gnu.org>
670 * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
673 * Documentation/topdocs/FAQ.texi (Installation): Add
674 lilypond-devel list. Add faq about font removal. Fix faq about
675 generating and running ./configure.
677 2002-06-26 Jan Nieuwenhuizen <janneke@gnu.org>
679 * scm/chord-name.scm (chord::name->text): Workaround: clean markup
682 * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
684 * input/test/ambitus.ly:
685 * lily/ambitus-engraver.cc:
687 * lily/include/ambitus.hh: New file.
689 * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
691 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
693 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
694 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
695 scm/basic-properties.scm, scm/grob-description.scm,
696 scm/grob-property-description.scm: Add support for ambitus.
698 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
700 * lily/text-spanner.cc: add some props to interface (patch
703 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
705 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
706 dereference valid Grob.
708 * configure.in: Quoting fixes.
710 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
712 * VERSION: 1.5.63 released
714 * lily/grob-scheme.cc: new file
716 * lily/break-substitution.cc: split up break substitution
717 functionality, and make a special constant stack-space version for
718 lists of grobs. This should fix the problems of lily in
719 combination with pthreads/qthreads.
721 * lily/grob.cc (mark_smob): bugfix: mark other parent too.
723 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
725 * lily/text-spanner.cc (setup_pedal_bracket):
726 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
727 Fix the lengths of mixed-style piano pedal brackets.
729 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
731 * Documentation/user/tutorial.itely (First steps): Add missing
734 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
735 about guile --with-threads. Hopefully this issue can be resolved
736 rsn, but maybe we should even add warnings for the standard Debian
737 and Red Hat packages?
739 * configure.in: Warn if guile is configured to use threads. Maybe
740 we should make this an error (ie, add to REQUIRED list?)
742 * config.make.in (PACKAGE_NAME):
743 (PACKAGE, package): Don't hardcode.
745 * VERSION (PACKAGE_NAME): Typo fix.
747 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
749 * input/tutorial/brahms-*.ly: new tutorial files.
751 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
753 * scm/script.scm (default-script-alist): fermata is up.
755 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
756 dynamic line spanner when there is no crescendo to connect.
758 * lily/tie.cc (get_control_points): add test to avoid flat ties.
760 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
762 * lily/note-collision.cc (check_meshing_chords): don't crash if no
765 * scm/music-functions.scm (toplevel-music-functions): new
766 definition. Functions to apply automatically. Removes the need for
767 explicitly doing \apply #voicify-music
769 * lily/grob.cc (do_break_substitution): rename function, use
770 global var for criterion argument. Reduces stack usage a little.
772 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
774 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
775 visibility-lambda to break-visibility
777 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
779 * input/bugs/part-combiner.ly: New file.
781 * lily/include/spacing-interface.hh: New file.
783 * lily/include/spaceable-element.hh: Remove.
785 * input/test/script-priority.ly: New file.
787 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
789 * lily/system.cc (output_lines): kill grobs that are only for spacing.
791 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
793 * lily/fingering-engraver.cc (make_script):
794 * lily/script-engraver.cc (process_music):
795 * lily/text-engraver.cc:
796 (process_acknowledged_grobs): Remove hard coded script-priority.
798 * flower/warn.cc: Cleanup.
800 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
803 * aclocal.m4: Regenerate.
805 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
807 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
808 * lily/include/lily-guile.hh: Only include config.h if necessary.
810 * Changelog: cvs changes ml archive test #8.
812 * lily/slur-engraver.cc: Layout fix.
814 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
816 * ly/engraver-init.ly (RhythmicStaffContext): add
817 Dot_column_engraver, resurrect barlines
819 * VERSION: 1.5.62 released.
821 * lily/engraver-group-engraver.cc (do_announces): rename
822 create_grobs () to process_acknowledged_grobs().
824 * lily/grob.cc (programming_error): add programming_error with
827 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
828 fail if a beam doesn't have stems.
830 * lily/engraver-group-engraver.cc (do_announces): scary change in
831 calling convention of create_grobs(): no create_grobs() call
832 before acknowledge_grobs().
834 * lily/sequential-music-iterator.cc (skip): add support for grace
837 * lily/music.cc (Music): fix very subtle and nasty memory
838 corruption bug. Typical symptom: "programming_error: Rhythmic_req
841 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
843 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
845 * ly/engraver-init.ly (RhythmicStaffContext): add
849 * lily/parser.yy: various protection fixes. Less objects are now
852 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
854 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
857 * Documentation/windows/zlily-profile.sh:
858 * Documentation/windows/post-lilypond.sh: Assume normal
859 prefix=/usr for lilypond.
861 * lily/musical-request.cc (length_mom): Display origin with error.
863 * input/test/duration-check.ly: New file.
865 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
868 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
869 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
872 * autogen.sh: Regenerate.
874 * Documentation/topdocs/INSTALL.texi:
876 * stepmake/configure.in:
877 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
878 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
879 ./configure once again requires autoconf == 2.13.
881 * stepmake/autogen.sh: Check for autoconf == 2.13.
883 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
885 * lily/parser.yy (open_request_parens): add input locations to
886 open and close parens.
888 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
890 * lily/tuplet-bracket.cc:
891 * lily/text-spanner.cc:
892 * lily/piano-pedal-engraver.cc:
893 * scm/grob-description.scm:
894 * scm/grob-property-description.scm: Changed the
895 edge-width property of brackets to edge-widen. Changed the sign of
896 the left element of edge-widen so a pair of equal numbers produces
897 a symmetrical bracket.
899 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
901 * ly/espanol.ly: added.
903 * lily/simple-spacer.cc (solve): remove assert.
905 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
907 * lily/forbid-break-engraver.cc (class
908 Forbid_line_break_engraver): new engraver: forbid linebreaks
911 * lily/spacing-spanner.cc (loose_column): add another check: don't
912 move around bar lines as loose columns.
914 * scm/basic-properties.scm (default-break-barline): add pre-break
917 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
919 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
920 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
922 * scripts/lilypond-book.py (environment): Bugfix: update to new
923 TEXMF scheme, from ly2dvi.
925 * lily/lookup.cc (slur): Invoke bezier-bow.
927 * scm/tex.scm (bezier-bow):
928 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
929 (Previously named bezier-sandwich).
931 * scm/tex.scm (bezier-sandwich):
932 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
934 * make/lilypond.mandrake.spec.in (post):
935 * make/lilypond.suse.spec.in (post):
936 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
938 * tex/lilyponddefs.tex: Uncomment feta character support.
940 * Documentation/user/refman.itely (Pitches): Add espanol.ly
943 * ly/catalan.ly: Add comment about (spanish) -s suffix.
945 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
948 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
950 * GNUmakefile.in (short-examples):
951 (long-examples): Bugfix for --srcdir build.
952 (top-web): Rewrite weblist find command.
954 * stepmake/bin/config.sub:
955 * stepmake/bin/config.guess: Update from latest autotools.
958 * autogen.sh: Regenerate.
961 * stepmake/configure.in:
962 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
963 requires autoconf >= 2.50.
965 * stepmake/autogen.sh: Check for autoconf >= 2.50.
967 * Documentation/user/refman.itely: Bugfix for tablature example.
969 * Documentation/windows/compiling.texi: Update for new and
972 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
974 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
975 introduce base-shortest-duration
977 * lily/parser.yy (music_output_def_body): don't crash when \tempo
978 in unexpected \midi{} is found.
980 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
982 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
983 the use of make/ly.make for use as an external makefile. Probably
984 noone except for myself ever used this anyway.
986 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
987 to new $datadir convention (<package>/<version>).
989 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
991 * VERSION: 1.5.61 released
993 * Document/user/refman.itely: tablature doc and code updates by
994 Jean-Baptiste Lamy <jiba@tuxfamily.org>
996 * input/template/piano-dynamics.ly: bugfixes.
998 * lily/key-engraver.cc (try_music): read request only once. Don't
999 overwrite lastKeySignature. Call create_key() only once. This
1000 fixes a bug with multiple equal key changes on polyphonic staffs.
1002 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1004 * scm/grob-description.scm: Add side-position-interface to TextSpanner
1006 * scm/grob-property-description.scm: Document the trill line type.
1008 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
1010 * stepmake/stepmake/generic-vars.make:
1011 * make/lilypond-vars.make:
1012 * GNUmakefile.in (builddir-setup): New setup for builddir run.
1013 Fixes LilyPond run from builddir for --srcdir builds.
1015 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
1018 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
1020 * scm/grob-description.scm (all-grob-descriptions): add
1021 font-family to RehearsalMark
1023 * scm/drums.scm: move over definitions from drum-pitch-init.ly
1025 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
1028 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
1030 * lilypond-mode.el: Propose saving before applying a command:
1031 for saved buffer set default command to LilyPond.
1033 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
1035 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
1038 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
1040 * Documentation/windows/lilypond-doc.hint: New file.
1042 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
1043 Bugfixes for --srcdir html-doc build.
1045 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
1046 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
1048 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
1050 * ly/script-init.ly (pralldown): add some scripts.
1052 * Documentation/user/refman.itely: many edits.
1054 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
1056 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
1057 direction, this breaks staffline avoidance of the bracket when
1060 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1062 * scripts/midi2ly.py: Fix handling of -o
1064 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
1066 * lily/molecule.cc (translate): set max distance to 100 cm.
1068 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1070 * VERSION: 1.5.60 released
1072 * lily/beam.cc: tremolo fix.
1074 * scripts/convert-ly.py: add tuplet-X-visibility rules.
1075 add VerticalExtent -> verticalExtent rules.
1077 * lily/axis-group-engraver.cc: consistent case for
1078 XxxxVerticalExtent properties.
1080 * Documentation/user/refman.itely (Tuplets): update
1081 tuplet-X-visibility properties.
1083 * input/test/defaultbars.ly: Corrected (thanks Mats)
1085 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1087 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
1089 * buildscripts/lilypond-profile.sh: override settings if
1090 LILYPONDPREFIX is set.
1092 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1094 * scripts/ly2dvi.py (non_path_environment): Fix typo
1096 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
1098 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
1100 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
1102 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
1104 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
1105 beam-engraver: use different engraver so we can mix normal and
1108 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
1110 * lily/beam.cc (shift_region_to_valid): Try to shift positions
1111 after slope-damping and concaveness check, so that short-stems are
1114 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
1116 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
1118 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
1120 * VERSION: 1.5.59 released
1122 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
1123 notice that missing features are exercise for user.
1125 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
1127 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
1128 (but alas, not partly precomputed) value for current_y when
1129 calculating stem length demerits.
1130 (calc_stem_y): Temporary precomputed factors fix.
1132 * lily/stem.cc (calc_stem_info): Take multiplicity into account
1135 * input/bugs/melisma-tie-rest.ly: New file.
1137 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
1139 * lily/stem.cc (calc_stem_info): remove min_y member, rename
1140 stuff. Remove kneeing stuff.
1142 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
1145 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
1151 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
1152 patch-level of version in minor-version string. Arg.
1154 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
1156 * ly/engraver-init.ly (TabStaffContext):
1157 enable TabStaff by default.
1159 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
1161 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
1163 * config.hh.in: Remove duplicate DIR_DATADIR entry.
1165 * aclocal.m4: Regenerate.
1167 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
1169 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
1171 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
1173 * lilypond-mode.el: Write notes with fewer keystrokes trough a
1174 "Quick notes"-interface.
1176 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
1178 * input/regression/non-empty-text.ly: Update example with outdated
1181 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
1183 * scripts/convert-ly.py: add textNonEmpty rule
1185 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
1187 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
1189 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
1190 using translate-robust add_molecule instead of add_at_edge.
1191 Bugfix for #(lines (finger "" "1")).
1193 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
1195 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
1198 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
1202 * Documentation/user/refman.itely: Bugfix: add node Repeats and
1203 MIDI. Regenerate menu. Fix @end example.
1205 * lily/accidental.cc: Add cautionary-style to interface.
1207 * mf/feta-beugel.mf (code): use autometric macros for braces.
1208 This fixes input/bugs/braces.
1210 * lily/afm.cc (count): return numOfChars, not size of array
1211 (always equals 256.)
1213 * lily/script.cc (before_line_breaking): postpone setting the
1214 X-parent of vertical scripts. This fixes the case of scripts on
1217 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
1219 * scm/grob-description.scm: fix alignment of barnumber: make sure
1220 it doesn't hit the G-clef.
1222 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
1223 startGraceMusic not startGraceContext).
1225 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
1227 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
1230 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
1232 * lily/accidental-engraver.cc: remove old accidental engraver,
1233 move new one to accidental-engraver.cc.
1235 * lily/local-key-item.cc: remove file
1237 * lily/include/local-key-item.hh: remove file
1239 * scripts/ly2dvi.py (make_preview): add --preview-resolution
1242 * lily/accidental.cc (brew_molecule): support for cautionary
1245 * lily/note-head.cc (internal_brew_molecule): warn if note head
1248 * lily/time-signature.cc (special_time_signature): remove warning
1249 about time signature.
1251 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
1252 reverse springs by limiting fixed-note space.
1254 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
1256 * stepmake/aclocal.m4: Bugfix: complain if program not found.
1258 * scripts/update-lily.py (next_version, prev_version, diff_name):
1259 New function. Patches now named name-prev-latest.diff.gz.
1260 Bugfix: import shutil.
1262 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1264 * input/tutorial/sammartini.ly: fix and document autochange
1267 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
1268 does produce .pdftex files.
1270 * lily/note-collision.cc (check_meshing_chords): move file from
1271 collision.cc, implement merged note heads (there you go, Drarn :-)
1273 * input/regression/collision-heads.ly: new file
1275 * VERSION: 1.5.57 released.
1277 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
1279 * mf/parmesan-heads.mf, scm/grob-description.scm,
1280 scm/grob-property-description.scm, scm/interface-description,
1281 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
1282 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
1283 lily/include/ligature-engraver.hh,
1284 lily/include/ligature-bracket.hh, lily/parser.yy,
1285 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
1286 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
1287 lily/ligature-head.cc, lily/ligature-engraver.cc,
1288 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
1289 implemented white mensural ligatures (still with a big list of
1293 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
1295 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
1296 Documentation/user/internals.itely.
1298 * lily/function-documentation.cc: new file. Infrastructure for
1299 self documenting Scheme functions.
1301 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
1303 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
1305 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1307 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
1308 and * (as in "([^>]*)?")
1310 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
1312 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
1313 Add info about CVS. Stable/development are currently 1.4/1.5,
1314 both at lilypond.org.
1316 * autogen.sh: Generate.
1318 * stepmake/configure:
1319 * configure: Regenerate.
1321 * stepmake/stepmake/automatically-generated.sub.make: Keep
1322 original first line.
1324 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
1326 * stepmake/stepmake/generic-targets.make (configure): Generate
1329 * GNUmakefile.in (SCRIPTS):
1330 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
1332 * stepmake/autogen.sh: New file.
1334 * configure: Check for g++ >= 2.95.
1336 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
1337 c/c++ version checking.
1339 * flower/include/string.hh: Typo fix.
1341 * lily/include/midi-item.hh: Remove stray i.
1343 * Documentation/windows/GNUmakefile: Avoid collapsed directory
1346 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
1347 constructs '//' from arguments.
1349 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
1351 * scm/lily.scm (ly-load): show SCM filenames if verbose.
1353 * lily/lily-guile.cc (init_functions): add ly-verbose function.
1355 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
1357 * flower/include/{pointer,tuple}*: removed.
1359 * VERSION: released 1.5.56
1361 * scm/music-functions.scm (check-start-chords): function to check
1362 for chords without \context. Apply automatically from parser.
1364 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1366 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
1369 * scm/output-lib.scm: fix ez notation stems.
1371 * lily/paper-outputter.cc: various fixes to speed up compilation.
1373 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1375 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
1377 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
1379 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
1380 determine latex input.
1382 * stepmake/bin/install-sh: Include latest from libtool.
1384 * stepmake/configure:
1385 * configure: Regenerate.
1387 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
1388 (USER_CFLAGS): Bugfix, include CPPFLAGS.
1390 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
1392 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
1393 REQUIRED programs and version. Try to continue configuring, list
1394 missing programs at the end, but don't generate a GNUmakefile if
1395 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
1396 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
1397 fancy for some older systems.
1399 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
1401 * lily/score-engraver.cc (typeset_all): sanity check for items
1402 that are Y parent to spanner.
1404 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
1407 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1409 * lily/*.cc: remove as many iostream use as possible.
1411 * flower/ : remove text-db, text-stream, data-file.
1413 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
1415 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
1416 (completize_preamble): don't barf if no preamble present.
1417 (do_file): allow extensions on --output
1419 * scripts/ly2dvi.py (make_preview): make automatic preview of
1420 first system. Small cleanups.
1422 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1424 * scripts/lilypond-book.py (make_pixmap): output png directly.
1426 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
1429 * lily/parser.yy (My_lily_parser): comment out code. (Causes
1430 problems with recent bison releases).
1432 * make/lilypond.redhat.spec.in: add pfa fonts to X.
1434 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
1436 * lilypond-font-lock.el: Fixes the order of the note name list.
1438 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
1440 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
1441 capability, --verbose option, rlimit hack.
1443 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1445 * lily/piano-pedal-engraver.cc: cleanups.
1447 * lily/accidental.cc (after_line_breaking): add break tie
1450 * lily/text-engraver.cc (try_music): don't typeset fingerings
1452 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
1454 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
1456 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
1458 * lily/*.cc: change gh_str02scm() to ly_str02scm().
1460 * lily/spacing-spanner.cc (note_spacing): Bound
1461 shortest-playing-length by the distance to next note. This should
1462 fix chord tremolo spacing.
1464 * VERSION: 1.5.55 released
1466 * lily/stem.cc (off_callback): invisible stem over whole note is
1467 centered on note now.
1469 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
1470 stem-tremolo is stem now.
1472 * input/mozart-hrn*.ly: many corrections.
1474 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
1475 support for dynamic scripts.
1477 * lily/accidental-placement.cc (position_accidentals): check for
1478 collisions as well: should avoid those heads too.
1480 * lily/beam.cc (check_concave): allow undefined gap and
1481 threshold. Change the meaning of threshold/gap == 0.0.
1482 (check_concave): skip Stolba concaveness check if we have a knee
1485 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1487 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
1488 tremolos of dotted duration.
1490 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
1492 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
1493 downstroke again. Sigh.
1495 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
1496 script on note head.
1498 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
1500 * lily/slur.cc (add_column): allow slur over rest.
1502 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
1504 * lily/beam.cc: move scoring constants out of code
1506 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
1508 * mf/feta-nummer.mf: scalability fixes.
1510 * mf/feta-nummer-code.mf: fixes for 5, 8.
1512 * mf/feta-klef.mf: G clef fixes.
1514 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
1516 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
1518 * scripts/lilypond-book.py: %Newline, rather than glue macros
1519 after \end{verbatim}.
1521 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
1523 * Documentation/user/lilypond-book.itely:
1524 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
1527 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
1529 * scm/grob-property-description.scm (beam-space): Junk.
1531 * lily/beam.cc (space_function): New method.
1532 (get_interbeam): Call space-function.
1534 * scm/grob-description.scm (Beam): Initialize space-function with
1535 Beam::space_function.
1537 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
1538 Beam.space-function. Don't quantise grace beams.
1540 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1542 * VERSION: 1.5.54 released
1544 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
1547 * Documentation/index.texi: add PDF links.
1549 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
1551 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
1552 compare #'glyph as strings.
1554 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
1556 * scripts/ly2dvi.py (setup_environment): fix by Mats.
1558 * lily/stem.cc (head_count): Change function name. Change property
1559 to #'note-heads i.s.o. #'heads.
1560 (position_noteheads): Kern noteheads for invisible stems.
1561 (before_line_breaking): Do position_noteheads() for whole note
1564 * lily/accidental-placement.cc (position_accidentals): First
1565 determine refpoints, only then determine extents.
1567 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1569 * lily/accidental-placement.cc (position_accidentals): use all
1570 note heads for note head-skyline.
1572 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
1574 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
1576 * Documentation/windows/setup.hint (requires): Add gsview dependency.
1578 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
1580 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
1582 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
1584 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1586 * mf/feta-schrift.mf: lighter staccato.
1588 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
1590 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
1592 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
1594 * VERSION: 1.5.53 released
1596 * scm/lily.scm (ly-load): use primitive-load for loading.
1598 * lily/misc.cc: remove quantise_iv()
1600 * lily/*.cc: pass read-only arrays by reference.
1602 * lily/grob.cc (common_refpoint_of_array): new function. Try to
1603 use common_refpoint_of_{array, list} when possible.
1605 * lily/include/accidental-placement.hh: new file.
1607 * lily/accidental-placement.cc (alignment_callback): position
1608 accidentals in a better way.
1610 * lily/skyline.cc: new file. Compute distances for collections of
1613 * lily/include/skyline.hh: new file
1615 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
1617 * lily/accidental.cc (class Accidental_interface): grob for a
1620 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
1623 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
1624 together with new accidental-interface.
1626 * lily/include/*.hh: remove spurious set_interface() decls.
1628 * lily/key-signature-interface.cc (brew_molecule): add padding for
1629 natural signs. Make natural typesetting like the sharp.
1632 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
1633 is now slightly curved, not straight.
1636 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
1638 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
1640 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
1641 more strictly. Use more clever regular expressions. Commented regexps.
1643 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
1645 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
1647 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
1649 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
1650 to control width of staff symbol in ragged-right mode (by request
1653 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
1654 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
1655 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
1656 added support for ligature brackets (needed when transcribing
1659 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
1661 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
1662 Fontify notes more strictly.
1664 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
1666 * mf/feta-din-code.mf: dynamic z sign.
1668 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
1670 * lilypond-mode.el: Prevent recoloring strings and comments.
1672 * lilypond-font-lock.el: Handle block comments: block comments
1673 can have also ordinary comments inside.
1675 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
1677 * lily/stem.cc (get_default_dir): set direction to CENTER if
1678 invisible. Various other fixes to deal with invisible stems and
1679 stem-direction == CENTER.
1681 * lily/rest-collision.cc (do_shift): take direction from note if
1684 * input/regression/tie-grace.ly: new file.
1686 * lily/tie-engraver.cc (create_grobs): fix tied graces.
1688 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1689 knee correction. Fixes tight spacing for knees.
1691 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1693 * VERSION: 1.5.52 released
1695 * lily/*.cc: add some undocced properties.
1696 scm/grob-description.scm: idem.
1698 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1700 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1701 multi-measure rests like "R1 *4" and scheme (typically has '#'
1702 in the beginning). Small fixes. Add few reserved words.
1704 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1706 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1709 * Documentation/windows/installing.texi: Suggest gswin32c (console
1710 program) for getting the version. Layout fixes.
1712 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1714 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1715 windows viewing commands, remove silly comment about Yap.
1717 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1719 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1720 configure to find kpathsea on for example Slackware 8.0.
1722 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1724 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1725 by default: avoid "1" over single bar rests.
1727 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1728 and correct the handling of geometry options.
1730 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1732 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1733 implementation for Class::has_interface automatically. Junk all
1734 other implementations.
1736 * lily/grob.cc (internal_get_grob_property): also typecheck
1737 property reads. Catches even more undocced properties. Bugfixing
1738 left for the uninspired masses.
1740 * lily/beam.cc: remove end_after_line_breaking().
1742 * lily/grob.cc (calculate_dependencies): remove list support for
1745 * lily/font-size-engraver.cc: only do font-interface.
1747 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1749 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1752 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1754 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1755 brackets using arpeggio requests.
1757 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1758 molecule-callback to use for drawing the brackets.
1760 * Documentation/user/refman.itely:
1761 * input/test/chord-bracket.ly: Chord brackets documented
1763 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1765 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1767 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1769 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1771 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1772 direction tuplets on beams.
1774 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1776 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1778 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1780 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1781 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1782 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1783 submenu to "LilyPond"-menu.
1785 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1786 an interface to play midi.
1788 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1790 * input/regression/script-stack-order.ly: new file.
1792 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1794 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1796 * mf/feta-din-code.mf: kerning for dynamics.
1798 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1800 * input/regression/dynamics-glyphs.ly: new file
1802 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1804 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1805 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1807 * Documentation/windows/gs-profile.sh:
1808 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1809 moved to gs/gsview windows packages.
1811 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1813 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1814 finding out the duration. Fixes chord tremolo bug.
1816 * lily/completion-note-heads-engraver.cc (process_music): Set
1817 correct duration for all requests of the broken notes.
1819 * input/regression/completion-heads.ly: Added example of
1820 Completion_heads_engraver.
1822 * lilypond-mode.el: Added "2Midi" command
1824 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1826 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1827 edge-width, edge-height and shorten-pair properties for tuplet
1830 * lilypond-indent.el: Support for blinking of matching parentheses
1832 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1834 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1835 cleanups of piano pedal brackets.
1837 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1839 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1841 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1843 * mf/feta-new-code.mf: new dynamic f sign.
1846 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1848 * mf/feta-new-code.mf: new dynamic p sign.
1850 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1852 * lily/note-spacing.cc (stem_dir_correction): only do
1853 beam-correction if a beam is there.
1855 * lily/stem.cc (duration_log): change from flag_i (); better
1857 (get_default_stem_end_position): fix dot/flag collision code.
1859 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1861 * VERSION: release 1.5.50
1863 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1864 unit spring here. Reduces number of warning messages.
1866 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1868 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1870 * scm/generic-property.scm: remove generic-property, property-engraver
1872 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1874 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1876 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1878 * scm/*.scm: remove volta, hairpin and tuplet functions.
1880 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1881 note column for notes/stems/dots that already have parents. Fixes
1882 nested grace contexts.
1884 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1886 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1887 get too curved slurs.
1889 * scm/slur.scm (default-slur-extremity-offset-alist)
1890 (default-phrasing-slur-extremity-offset-alist): Move slur
1891 attachments further away from note-head, vertically. Also, leave
1892 a horizontal gap between slur and stem end.
1894 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1896 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1898 * input/regression/spacing-grace-duration.ly: new file
1900 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1901 for shortest durations.
1903 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1904 extent of the mm rest.
1906 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1909 * lily/tuplet-bracket.cc (make_bracket): new function
1910 (get_x_offset): new function; make tuplet brackets align on stems
1911 if stem has same direction.
1912 (parallel_beam): be anal about matching bracket to tuplet.
1914 * lily/lookup.cc (line): new function Lookup::line().
1916 * scm/tex.scm (dashed-line): change -line to -system in names.
1918 * lily/box.cc (add_point): new function.
1920 * flower/include/interval.hh: new function add_point ().
1921 new function widen()
1923 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1925 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1927 * scm/grob-property-description.scm (number-threshold): Add
1930 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1931 rest if #measures > number-threshold. Use padding (well, fake
1934 * scm/font.scm (make-style-sheet): New styles: mark-number,
1936 (paper20-style-sheet-alist): Add bigger bold fonts.
1938 * lily/mark-engraver.cc (process_music): Use style mark-number or
1941 * .cvsignore: Ignore all kinds of lilypond input and output.
1943 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1945 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1947 * lily/staff-symbol.cc (brew_molecule): make line thickness
1950 * lily/*.cc: replace stafflinethickness by linethickness.
1952 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1954 * input/regression/beam-concave.ly: Add to-be-considered-concave
1957 * lily/beam.cc (check_concave): Add check for large gap between an
1958 inner notehead and the line through outer noteheads.
1960 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1961 value 2.0 staff-space.
1963 * scm/grob-property-description.scm (concaveness-gap): Add
1966 * input/mozart-hrn3-allegro.ly: Fix typo.
1968 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1970 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1971 lily/note-head-engraver: improved implementation of roundfilledbox
1972 (according to Han-Wen's request)
1974 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1975 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1976 lily/simple-spacer.cc: ragged-right alignment
1978 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1980 * input/regression/spacing-note-flags.ly: new file
1982 * input/regression/spacing-rest.ly: new file
1984 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1986 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1987 all grace notes tight (not only the column directly following a
1990 * scm/grob-description.scm (all-grob-descriptions): don't make
1991 mm-rests larger than normal.
1993 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1994 curved. Remove white space at the right of flags.
1996 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1998 * ports/ports.make: Bugfix: ignore CVS directories.
2000 * stepmake/.cvsignore: New file.
2002 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
2004 * lily/note-spacing.cc (stem_dir_correction): don't correct when
2005 there is a flag on the stem.
2007 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
2009 * scm/grob-property-description.scm (measure-length):
2010 measure-length grob property.
2012 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
2013 better spacing for breakable columns when they're juxtaposed: use
2014 measure length if applicable
2016 * lily/timing-engraver.cc (start_translation_timestep): store
2017 measure length in breakable column at start of measure.
2019 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
2021 * ROADMAP: Add description for ports dir, to check email upon
2024 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
2026 * VERSION: 1.5.48 released
2028 * lily/multi-measure-rest.cc (symbol_molecule): split off from
2030 (set_spacing_rods): Use symbol_molecule() to determine minimum
2032 (church_rest): split off from brew_molecule()
2033 (big_rest): split off from brew_molecule(). Construct using
2036 * mf/feta-eindelijk.mf: junk multi measure rest.
2038 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
2040 * lily/multi-measure-rest.cc (add_column): remove columns property.
2042 * lily/dynamic-engraver.cc (process_music): add more verbose warning
2044 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
2047 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
2049 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
2050 keywords covered, dropped some non-keywords, include R- and 128-notes
2052 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
2054 * Code clean-up: Junk multiple implementations of ledger line
2055 creation in note_head, custos, and porrectus. This is important
2056 since there soon will be some more applications of ledger lines to
2057 come (e.g. ambitus engraver).
2059 * Make thickness of ledger lines adjustable. This is essential
2060 for mensural notation.
2062 * Fix some bugs in the current ledger_line implementation, most
2063 notably that of the horizontal extent of ledger lines which equals
2064 at least the extent of the metafont ledger_line character, and
2065 which grows(!) if the desired extent shrinks below this limit.
2067 * roundfilledbox: variable blotdiameter
2069 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
2071 * VERSION: 1.5.47 released
2073 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
2075 * lily/porrectus.cc: change line-thickness to thickness, change
2076 stem-direction to direction.
2078 * scm/backend-documentation-lib.scm (check-dangling-properties):
2079 Automatically detect doc'ed properties that are not in an interface
2081 * scm/grob-property-description.scm: property cleanup. Remove many
2082 paper-column props that are non-existent.
2084 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
2085 the grob has a molecule-callback.
2087 * lily/*.cc: remove many set_interface() calls, and their
2090 * input/regression/spacing-knee.ly: new file
2092 * input/regression/spacing-clef-first-note.ly: new file
2094 * lily/staff-spacing.cc (get_spacing_params): different spacing
2095 for pref matter to note at start of line, halfway during line.
2097 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
2098 correction only if stems have same direction (i.e. not for
2099 stem-clef combination).
2100 (stem_dir_correction): maximal correction for knees.
2102 * lily/*.cc: many updates to interface descriptions.
2104 * lily/grob.cc (internal_set_grob_property): add interface check
2105 for every set_grob_property call
2107 * lily/*.cc: document interface stuff in C++
2109 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
2111 * lily/volta-bracket.cc: naming: change volta spanner to
2114 * input/bugs/*.ly: cleanup, remove lots of files.
2116 * buildscripts/mf-to-table.py (write_ps_encoding): generate
2117 .encoding file. WARNING: upgrade to pktrace 1.0.3
2119 * mf/feta-toevallig.mf: change PS name for parentheses.
2121 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2123 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
2126 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
2128 * lily/scope.cc: remove file .
2130 * lily/include/scope.hh: remove file. Remove Scope class
2134 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
2135 score_forbidden_quants): ): take out of SCM, pass parameters so
2136 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
2138 (calc_stem_y): robustness: take care of last_visible_stem == 0.
2141 * lily/lily-guile.cc (ly_unit): return internal unit.
2143 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
2145 * lily/paper-outputter.cc (output_version): output internal unit
2146 from Paper_outputter
2148 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2150 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2152 * scripts/ly2dvi.py: clean up old .*pk font caching code.
2154 * scm/ps.scm: Use uppercase postscript font names for the standard
2157 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
2158 Add all available TeX Type1 fonts, including Feta, to the
2159 Ghostscript font path.
2161 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
2162 version (affects the FontName) in lilypond.map.
2164 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
2165 documentation file to fetaNNlist.ly to avoid name collisions between
2166 lilypond generated .tex file and font .tex macros file.
2169 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
2171 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
2172 made mensural longa and (semi-)brevis leaner
2174 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
2176 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
2177 clean-up: moved bezier shape and slope from porrectus to lookup
2179 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
2180 and /usr/share/texmf/fonts
2182 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
2184 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
2186 * lily/text-spanner.cc (brew_molecule): add #'thickness
2187 (brew_molecule): add corrections for thickness in molecule padding.
2189 * lily/line-spanner.cc (line_atom): make function private
2191 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
2192 discover bounding box. This solves the cropping problem.
2194 * lily/bar-check-iterator.cc (process): Only resynchronize bar
2195 check when it fails. This fixes the combination of grace notes
2198 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
2200 * lily/repeated-music.cc (minimum_start): new Scheme callable function
2201 (first_start): new Scheme callable. This will fix repeated music
2202 starting with grace notes.
2204 * lily/music.cc (start_mom): check start-moment-function grob property.
2206 * VERSION: 1.5.45 released
2208 * input/regression/system-extents.ly: new regression test. Test
2211 * lily/system.cc: rename LineOfScore into System
2213 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
2215 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
2216 (ly_get_extent): new Scheme function ly-get-extent
2218 * ps/lilyponddefs.ps: use output-scale for line-x
2221 * scm/ps.scm (font-load-command):
2224 2002-03-20 Rune Zedeler <rune@zedeler.dk>
2226 * lily/beaming-info.cc: Stupid typo fixed
2228 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2229 support for cross-context auto-accidentals.
2230 Now the engraver can stay in Staff-context and see other contexts
2232 Changed properties: autoAccidentals, autoCautionaries
2234 * lily/translator-group.cc (set_children_property):
2235 Function added recursively setting the same property (deep_copied)
2236 for all children of a Translator_group.
2238 * ly/property-init.ly: added commands
2239 \pianoAccidentals \voiceAccidentals
2240 \modernVoiceAccidentals \modernVoiceCautionaries
2242 * ly/engraver-init.ly: Correct initialization of new accidentals.
2244 * scm/translator-property-description.scm: Updated
2246 * input/regression/accidental-voice.ly: Added
2248 * Documentation/regression-test.tely: Added new test
2250 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2252 * VERSION: 1.5.44 released
2254 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
2256 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
2258 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
2261 * tex/feta*.tex: remove.
2263 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
2264 all software dealing with it.
2266 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
2268 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
2269 (this fixes pdf output). Drop awk dependency.
2271 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
2272 dimensions (linewidth) are in mm.
2274 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
2276 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
2278 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
2280 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
2282 * VERSION: 1.5.43 released
2284 * scm/beam.scm (beam-dir-majority-median): if majority is
2285 undecided, use median. Removes a forced dir in sarabande.
2287 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
2289 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
2291 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
2292 widths, heights and shortens are now customisable properties.
2294 * scm/grob-description.scm, scm/grob-property-description.scm: New
2295 properties added to PianoPedalBracket, unnecessary
2296 Y-offset-callbacks removed from *Pedal, undocumented properties
2299 * Documentation/user/refman.itely: Piano pedal updates.
2301 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
2303 * scm/grob-property-description.scm:
2304 * scm/interface-description.scm: Remove old stuff.
2306 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
2307 0.48 (previously 0.42).
2308 (Beam): Remove old stuff.
2311 * lily/stem-tremolo.cc:
2313 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
2314 (previously space-function).
2316 * stepmake/bin/add-html-footer.py: Website title fix.
2318 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2320 * scripts/ly2dvi.py (environment): use new font searching setup.
2322 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
2324 * lily/tfm.cc (dimensions): make code dimension independent
2326 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
2329 * tex/lily-ps-defs.tex: scaling for PS points and MM.
2331 * lily/include/dimensions.hh: try MM as internal unit.
2333 * scm/*.scm: remove invoke-dim1
2335 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2337 * GNUmakefile.in (fontpaths): add fontpaths target,
2339 * make/mutopia-targets.make: add PDF rules.
2341 * make/mutopia-rules.make: add pdf rule.
2343 * buildscripts/mutopia-index.py (list_item): add PDF.
2345 * buildscripts/lilypond-profile.sh (TEXMF): typo.
2347 * make/lilypond-vars.make: set TEXMF for the new font setup.
2349 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
2351 * VERSION: 1.5.42 released
2353 * mf/feta-schrift.mf: endless twiddling of Tr.
2355 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
2356 endless twiddling with the bulb shape.
2358 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
2359 little smaller if there is an accidental.
2361 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2363 * buildscripts/lilypond-profile.sh:
2365 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
2366 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
2367 Implement new font installation strategy
2369 * Documentation/misc/fontinstallation (TEXMF): Documentation of
2370 the new font installation strategy.
2372 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
2375 * input/test/staff-size.ly: Simplified using StaffContainer
2377 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
2380 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
2382 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
2384 * lily/beam.cc (score_stem_lengths): new quanting stuff
2385 (score_forbidden_quants): Second and third beam quant stuff.
2387 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
2389 * lily/beam.cc (least_squares): Remember least-squares-dy for
2391 (quantise_interval): Don't quant to dy steeper that
2392 least-squares-dy. Return empty interval if no sane quants found.
2393 (quantise_position): Try quantise_interval until we have
2394 acceptable solution.
2396 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2398 * scm/interface-description.scm (beam-interface): Update.
2400 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2402 * VERSION: 1.5.41 released
2404 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
2405 optima serifs on top of t, bottom of r.
2407 * mf/feta-bolletjes.mf: make ledger line rounder.
2409 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
2411 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
2414 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
2416 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
2417 well as text pedal indications and a combination of both. All
2418 pedal indications are horizontally aligned on a line spanner.
2420 * lily/text-spanner.cc: Edge-width property added to use in
2421 bracketed piano pedals. Function setup_sustain_pedal added to set
2422 the dimensions of the brackets.
2424 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
2425 some of the *Pedal properties tweaked.
2427 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
2428 edge-width (TextSpanner) properties.
2430 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
2432 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
2433 fontified identifiers list.
2435 * input/test/pedal.ly: New pedal features added.
2437 * Documentation/user/refman.itely: New pedal features documented.
2440 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
2442 * lily/include/new-beam.hh: Previously new-beam.hh
2443 * lily/beam.cc: Previously new-beam.cc
2444 (least_squares): Bugfix: don't barf on beams with less than two
2445 visible stems (tremolos).
2448 * scm/grob-description.scm (Beam): Junk old beam stuff.
2451 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2455 * mf/feta-eindelijk.mf: new 8th rest.
2457 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
2458 stick out of staffline
2460 * scripts/lilypond-book.py: fixes for texi regular expressions.
2462 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
2464 * lily/include/new-beam.hh:
2465 * lily/new-beam.cc: New file.
2467 * flower/include/interval.hh:
2468 * flower/include/interval.tcc (delta): New method.
2469 (swap): Now public (previously private).
2471 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
2472 1 staff-line-thickness. Sadly, this makes dy quanting problems
2473 (dy quants allowed should depend on actual left y) more visible.
2475 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
2477 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
2479 * scm/grob-property-description.scm (concaveness-threshold): Add
2480 typecheck and description.
2482 * scm/grob-description.scm (Beam): Remove obsolete properties, add
2483 concaveness-threshold (previously concaveness).
2485 * lily/beam.cc (check_concave): Remove choices and debugging
2486 stuff: use best concaveness calculation.
2487 (quantise_dy): Remove choice. Try to never make a slope steeper
2488 by quantising, but certainly never quantise a slope away.
2489 (check_stem_length_f): Remove choice. In case of lengthening
2490 alowed, always lengthen to ideal length.
2492 * Documentation/index.texi: Fix FAQ url.
2494 * Documentation/topdocs/INSTALL.texi: Add information about fink,
2495 compile fix and 1.4 specific fix that doesn't hurt 1.5.
2497 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
2499 * VERSION: 1.5.39 released
2501 * lily/simple-spacer.cc (add_rod): rods take precedence over
2502 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
2504 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
2506 * lily/note-spacing.cc (get_spacing): only insert space for
2507 accidentals if necessary.
2509 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
2511 * lily/spacing-spanner.cc (musical_column_spacing): new
2512 function. Have correct spacing from note to end-of-line as well.
2514 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
2516 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
2518 * darwin.patch: New file.
2520 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
2521 code. Shorten stems by fraction of stems to be shortened.
2523 * lily/stem.cc (get_default_stem_end_position): Shorten only half
2524 of shorten value for boundary cases.
2526 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
2527 (Beam): Set beamed-stem-shorten to (1.0 0.5).
2529 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
2531 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
2533 * scm/grob-description.scm (Beam): Add concaveness. Replace
2534 Beam::cancel_suspect_slope with Beam::check_concave.
2536 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
2537 set slope to horizontal if concaveness > Beam.concaveness. This
2538 handles cases that kludgy cancel_suspect_slope was meant to catch
2540 (cancel_suspect_slope): Remove.
2542 2002-03-12 Rune Zedeler <rune@zedeler.dk>
2544 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
2545 stemLeftBeamCount and stemRightBeamCount to equal 0.
2548 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
2550 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
2551 fixed spacing for pref matter, if the next column is musical, and
2554 * lily/note-spacing.cc (stem_dir_correction): Use correct
2555 discretionary for stem-bar spacing.
2557 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
2559 * VERSION: 1.5.38 released
2561 * lily/grob.cc (warning): Use cause tracking to give more
2562 meaningful errors from the backend.
2564 * lily/property-iterator.cc (check_grob): Warn if setting grob
2565 property in unknown grob.
2567 * mf/feta-toevallig.mf: brushed stems for natural sign.
2569 * lily/molecule.cc (align_to): don't translate empty molecule.
2570 (this triggers a very subtle bug in time-signature.)
2572 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
2574 * lily/spring.cc: remove file.
2576 * input/regression/spacing-stem-bar.ly: new file
2578 * lily/score.cc (run_translator): resurrect point-and-click
2580 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
2583 * lily/spacing-spanner.cc (find_shortest): Shortest note for
2584 spacing is now globally determined, using the most common shortest
2585 note. Notes that are shorter are spaced geometrically, and with
2586 expand hints. This makes spacing more even, and measures that have
2587 very short notes won't be that stretched out.
2589 * mf/feta-klef.mf: F-clef fixes, documentation on the
2590 shape. (WARNING: font changed.)
2592 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
2594 * lily/simple-spacer.cc (add_columns): support for infinitely
2597 * lily/staff-spacing.cc (get_spacing_params): space after
2598 prefatory matter is fixed.
2600 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
2602 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
2603 barline following an upstem.
2605 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
2606 function from next_notes_correction().
2607 (bar_y_positions): idem.
2609 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2611 * input/regression/break.ly (texidoc): bugfix: escape \ in
2614 * lily/staff-spacing.cc (next_notes_correction): Correct the
2615 spacing of a note following a barline.
2618 2002-03-04 Glen Prideaux
2620 * mf/feta-solfa.mf: Shaped note heads
2622 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
2624 * VERSION: 1.5.37 released
2626 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
2627 left-align molecule.
2629 * lily/break-align-interface.cc (do_alignment): completely
2630 rewritten. Now it does not use Align_interface anymore, but a
2631 separate routine. Like StaffSpacing, it reads space-alist from the
2632 breakable grobs. This allows you to set spacing using
2634 \property Staff.Clef \override #'space-alist = '(....stuff....)
2636 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
2637 to Bar_line. Move files around as well.
2639 * lily/time-signature.cc (time_signature): left align time signatures.
2641 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
2642 Corrections of the glyph shape C. Comments added.
2644 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2646 * lily/spacing-spanner.cc: move from third-try.cc; rename
2647 Third_spacing_spanner to Spacing_spanner.
2649 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
2650 spacing stuff. Much cleaner now, and we prepare for neat spacing
2651 tricks around bar lines and such.
2653 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
2654 variables with themselves. (Ouch.)
2656 * lily/span-bar.cc (brew_molecule): don't try to span bars that
2659 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
2663 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2666 * lily/music.cc (ly_get_mus_property): typechecking
2667 (ly_set_mus_property): idem
2668 (ly_make_music): idem
2669 (ly_music_name): idem
2671 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2673 * lily/note-spacing.cc (stem_dir_correction): correction for
2674 same stem notes as well.
2676 * lily/pitch.cc (pitch_transpose): stricter typechecking
2678 * mf/parmesan*mf: magnification fixes.
2680 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2682 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2684 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2685 documenting the font. (Doesn't work for parmesan at the moment)
2687 * Documentation/user/appendices.itely (The Feta font): Add list of
2688 Feta font symbols with names.
2690 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2693 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2695 * lily/translator-group.cc (ly_set_trans_property): typechecking
2696 (ly_get_trans_property): typechecking.
2698 * lily/font-metric.cc (ly_text_dimension): typechecking
2699 (ly_find_glyph_by_name): idem.
2701 * scm/bass-figure.scm (brew-complete-figure): support for
2704 * lily/grob.cc (ly_get_paper_var): new function
2706 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2708 * VERSION (PATCH_LEVEL): 1.5.35 released.
2710 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2711 (bracket): New function.
2713 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2714 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2716 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2719 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2722 * lily/grob.cc (ly_get_grob_property): be anal about types.
2723 (ly_set_grob_property): idem
2725 * lily/figured-bass-engraver.cc (process_music): move molecule
2726 building completely to Scheme
2728 * lily/include/musical-request.hh (class Bass_figure_req): Add
2731 * lily/parser.yy (bass_figure): add support for space figure.
2733 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2735 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2737 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2738 (ly_align_to_x): new function ly-align-to!
2740 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2741 function ly-get-font
2743 * mf/feta-nummer.mf: include normal-space dimension.
2745 * lily/collision.cc (check_meshing_chords): don't merge collisions
2748 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2751 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2753 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2755 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2757 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2760 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2763 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2764 scm/grob-description.scm: added mensural fermata symbol
2766 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2768 * VERSION: 1.5.34 released.
2770 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2772 * lily/staff-symbol-referencer.cc (callback): assume that
2773 staff-position is unset in general.
2775 * input/regression/rest-pitch.ly: new file.
2777 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2780 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2782 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2783 as Scheme option. Run regression test by default with
2784 internal-type-checking.
2786 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2788 * lily/lily-guile.cc (type_check_assignment): changed functions.
2790 * scm/*description*.scm: be anal about typechecks. Some changes
2791 for internal variable names.
2793 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2795 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2797 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2799 * VERSION: 1.5.33 released.
2801 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2802 flare_path everywhere (c-clef, numbers).
2804 * lily/bar-number-engraver.cc (process_music): also print bar
2805 number if measure starts with grace note.
2807 * input/regression/grace-bar-number.ly: new test.
2809 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2811 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2814 * scm/music-functions.scm (voicify-music): split chords into
2815 different voices automatically.
2817 * lily/music.cc (ly_music_list_p): new function
2819 * lily/music-sequence.cc (do_relative_octave): robustification
2821 * scm/music-functions.scm: many utility functions
2823 * lily/music.cc (ly_set_mus_property): add type checks to the
2824 Scheme property assignment.
2826 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2829 * mf/lilypond.map: .map file from Mats' page.
2831 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2833 * Some more parmesan related fixes;
2835 * Custos: varying shape (in particular, stem length), depending on the
2836 vertical position of the custos (on staffline / between stafflines);
2838 * Custos: added grob property "neutral-direction" (same semantics as
2839 with stem); introduced new grob property "neutral-position";
2841 * Time-signature: print a warning when resorting to default layout.
2843 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2845 * lily/translator-group.cc (add_fresh_simple_translator): remove
2846 function; initialize() is called through
2847 Translator_group::initialize().
2849 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2850 for the neighbors of a loose column.
2852 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2853 position loose columns so that they don't collide.
2855 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2857 * VERSION: 1.5.32 released.
2859 * scm/font.scm: remove font-name symbol.
2861 * mf/GNUmakefile: use pktrace for making PFAs
2863 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2865 * lily/rest-collision.cc (do_shift): read direction field from
2866 rest-column in case of note-rest collision. This should fix some
2867 problems with rest collisions.
2869 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2871 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2874 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2875 property. Read pitch directly from #'cause.
2877 * mf/feta-puntje.mf: bugfix
2879 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2881 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2883 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2885 * Documentation/windows/compiling.texi: Update.
2887 * Documentation/index.texi: Add link to orphaned compiling for
2890 * Documentation/footer.html.in: Comment fix.
2892 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2894 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2896 * VERSION: 1.5.31 released
2898 * lily/new-spacing-spanner.cc: remove file.
2900 * lily/third-try.cc (do_measure): only take spacings into account
2901 if they pertain to the column pair under consideration. This fixes
2902 spacing bug when mixing eighths triplets and normal eighths.
2904 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2905 lines don't take up space anymore. Document why in note-head.cc
2908 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2910 * lily/font-interface.cc (get_font): reinstate
2911 #'font-magnification. See input/regression/font-magnification.ly
2912 (get_font): Change the definition of #'font-name grob property.
2914 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2915 that have a #'cause field.
2917 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2919 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2921 * mf/GNUmakefile: remove metapost stuff
2923 * stepmake/aclocal.m4: remove metapost detection stuff.
2925 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2927 * mf/GNUmakefile (FET_FILES):
2928 (FONT_FILES): Include parmesan.
2930 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2933 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2935 * Documentation/user/refman.itely (Paper size): Quote braces.
2937 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2939 * stepmake/aclocal.m4: fixed bison version check to be more
2942 * lily/stem.cc (position_noteheads): fix for cluster chords.
2944 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2946 * python 2.2 support.
2948 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2950 * VERSION: 1.5.30 released
2952 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2954 * Documentation/user/refman.itely (Dynamics): add a note about
2957 * scm/grob-description.scm: add a 'translator-type? object
2958 property, so that \property Foo.Bar =\turnOff doesn't cause
2961 * lily/translator-group.cc (add_fresh_group_translator): make
2962 new add-translator functions to make distinction between fresh and
2963 used group-translators. Fixes problem with scripts on auto-changing voice
2965 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2966 add to Score_performer. Fixes bar checks in MIDI
2968 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2969 heads. Fixes many quirks with ties.
2971 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2972 in the grob property #'cause, instead of using Grob_info.
2974 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2975 staff context, fixing dot alignment on collisions.
2977 * lily/beam-engraver.cc (try_music): remove can't find beam start
2978 warning, so that skipTypesetting won't complain.
2980 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2982 * Documentation/user/refman.itely (Paper size): Documentation fix,
2985 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2987 * scm/grob-description.scm: \breathe: Use feta font comma by default
2989 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2991 * input/template/piano-dynamics.ly (pedal): Simplified
2993 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2995 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2997 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2999 * lilypond-mode.el (LilyPond-command-query): ignore case.
3001 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3003 * VERSION: 1.5.29 released
3005 * all files: change 2001 to 2002 in headers globally
3007 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
3008 cheese") font. WARNING: fonts changed.
3010 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
3012 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
3014 * mf/*.mf: Added some more vaticana/solesmes style font symbols
3016 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
3018 * mf/*.mf: Fixed a few typos in various .mf files
3020 2002-01-17 Rune Zedeler <rune@zedeler.dk>
3022 * mf/: added macro soft_penstroke
3024 softened some glyphs
3025 redrawn triangular noteheads
3027 added classical quarter rest
3029 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
3031 * lily/bar.cc: Bugfix: repeat dots when even number of staff
3032 lines and staff_space>=2
3034 * lily/rest.cc: Use default rests when current style glyphs not
3036 \property Staff.Rest \override #'style = #'classical
3038 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
3040 * input/bugs/first-tie.ly: New file.
3042 * input/bugs/spacing-clash.ly: New file.
3044 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
3048 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
3050 * lilypond-indent.el: New file providing indentation for
3051 parenthesised blocks of lilypond code in Emacs
3053 * lilypond-font-lock.el: Changes to the syntax table to facilitate
3054 indentation and handle block comments properly. Distinguish
3055 accents from close-brackets in fontification.
3057 * lilypond-mode.el: LilyPond-indent-command set appropriately.
3059 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
3061 * Documentation/windows/installing.texi:
3062 * Documentation/windows/compiling.texi: Include from 1.4.10.
3064 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
3066 * input/bugs/first-midi-tie.ly: New file.
3068 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
3070 * VERSION: 1.5.28 released
3072 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
3073 illicit beams on [c4 c4] etc.
3075 * lily/bar-check-iterator.cc (Bar_check_iterator): new
3076 file. Make separate iterator for Bar_checks. Bar_check now happen
3077 outside engravers, meaning that you can use them with
3078 skipTypesetting. Associated changes in other files.
3080 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
3083 * lily/spacing-spanner.cc (stem_dir_correction): removed function
3085 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
3087 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
3089 * lily/stem.cc (set_spacing_hints): removed function
3091 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
3092 correction for spacing; now take vertical extents of the stem into
3095 * lily/third-try.cc: More hacking to get spacing working.
3097 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
3098 sits at staff level and creates note spacing objects. Scrap it
3099 again, and document why.
3101 * lily/include/group-interface.hh: rename functions.
3103 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
3105 * stepmake/stepmake/c++-rules.make:
3106 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
3108 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
3110 * make/lilypond-vars.make:
3111 * scripts/ly2dvi.py (setup_environment):
3112 * scripts/lilypond-book.py (setup_environment): Also set tex
3115 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3117 * VERSION: 1.5.27 released.
3119 * Documentation/user/refman.itely (Bar numbers): added bar number
3122 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
3125 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
3127 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
3128 spread the last few lines all over the last page of a score.
3130 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
3132 * lily/third-try.cc: 3rd try at revising spacing
3133 engine. Not yet finished.
3135 * lily/paper-column.cc (brew_molecule): print debugging marks on a
3138 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
3139 collecting past note heads.
3141 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
3144 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
3145 class. Keep a queue of grobs that are still playing in busyGrobs.
3147 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
3148 function. Use busyGrobs to detect playing notes.
3150 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
3152 * Documentation/topdocs/INSTALL.texi: Added note about broken
3153 python-2.1. Updated note for Debian's broken (well, broken for
3154 our use anyway) tex configuration.
3156 * scripts/lilypond-book.py (re_dict): python2.2 fix.
3158 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
3159 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
3161 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
3162 (But left margin of png's still misses a few pixels. Arg.)
3164 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
3166 * lilypond-mode.el (LilyPond-command-next-midi): Make
3167 possible to kill midi-process (using "C-c C-m").
3169 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
3171 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
3172 Convert strings with dimensions to numbers.
3174 * lily/volta-engraver.cc: only make a bracket for the top staff,
3175 as found in stavesFound.
3177 * lily/bar-number-engraver.cc: remove staff administration.
3179 * lily/mark-engraver.cc (acknowledge_grob): remove staff
3180 administration. This breaks support for invisible-staff.
3182 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
3183 symbols into stavesFound.
3185 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
3186 grobs, and put them into columns.
3188 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
3189 Engraver_group_engraver as a potential candidate for ack'ing grobs.
3191 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
3193 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
3194 midi section in the Emacs-mode, so it is possible to play certain
3195 score in a multiscore lilypond-file.
3197 2001-12-09 Rune Zedeler <rune@zedeler.dk>
3198 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
3199 (FIXME: not accessible from guile)
3201 * lily/accidental-engraver.cc: rewrote accidental-routines to get
3202 better support for Kurt Stone's suggestions.
3203 Removed properties: noResetKey, forgetAccidentals, autoReminders,
3205 Changed property: localKeySignature.
3206 Added properties: extraNatural, autoAccidentals,
3209 (BUGFIX: broken-tie-support destroyed in 1.5.16)
3211 * ly/property-init.ly: added commands
3212 \defaultAccidentals \modernAccidentals \modernCautionaries
3213 \noResetKey \forgetAccidentals
3215 * ly/engraver-init.ly: Correct initialization of new accidentals.
3217 * scm/translator-property-description.scm: The new properties
3220 * input/: Some examples added, some changed.
3222 * Documentation/regression-test.tely: Added quick test of new
3225 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3227 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
3230 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3232 * lily/beam.cc (before_line_breaking): Make beams without stems
3233 or with only one stem disappear.
3235 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3237 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
3238 files to have standardised HTML bibliography output. Update build
3239 docs to reflect this.
3241 * lily/include/simple-spacer.hh (struct Simple_spacer): add
3242 active_count_, so that we don't have to look for active springs
3245 * scm/interface-description.scm,scm/grob-property-description.scm:
3248 * lily/simple-spacer.cc (solve): Handle forced line breaks
3249 here. Fixes problems when combining linebreaks with non-fitting
3252 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
3254 * 1.4.9.jcn3 forward ports.
3256 * Really included .cvsignore.
3258 * Included Han-Wen's uu1 windows fixes.
3260 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
3262 * Added Cygwin setup.hint
3264 * Removed tex, python wrappers and postinstalls to go with Cywgin's
3265 tetex/texmf, python installations.
3267 * Updated cygwin installer.
3269 * ly2dvi: Don't accept filenames with spaces (+ fix).
3271 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
3273 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
3275 * lily/translator-def.cc: Remove manual symbol caching.
3277 * lily/script-column.cc (before_line_breaking): robustness check:
3278 don't crash if no direction set.
3280 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
3282 * scripts/pmx2ly.py (Parser.parse_header): more generic header
3286 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
3288 * lily/note-head.cc (head_extent): added to compute width without
3289 ledger lines. By default, ledger lines take up width now.
3291 * input/regression/fingering.ly: demonstrate auto fingering.
3292 Horizontal placement is still buggy.
3294 * lily/fingering-engraver.cc (class Fingering_engraver):
3295 added. Provides support for horizontal fingering scripts
3297 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
3299 * lily/side-position-interface.cc (add_staff_support): add staff
3300 only for Y-axis side positions.
3302 * lily/parser.yy (request_chord): Fix mem leak.
3304 * lily/musical-request.cc (transpose): moved to Music::transpose()
3306 * lily/include/grob-info.hh: Change music pointer to SCM, so we
3307 can store grobs as grob-creation cause as well.
3309 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
3310 handle when adding. Use precomputed symbols throughout lily.
3312 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
3313 track of spacing issues.
3315 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
3316 to keep track of staff spacing
3318 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
3320 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
3321 code clean from conditionals and have a concentrated sets of
3322 compatibility fixes for old guile versions.
3324 * Fixes for guile 1.4, including embedded ps.
3326 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3328 * lily/stanza-number-engraver.cc (process_music): allow pairs as
3329 well for markup texts.
3331 * lily/musical-request.cc (length_mom): kludge for null pointer.
3333 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
3335 * scm/lily.scm (sign): bugfix
3337 * CHANGES: Change log instated.
3339 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.