1 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
3 * lily/multi-measure-rest.cc (symbol_molecule): split off from
5 (set_spacing_rods): Use symbol_molecule() to determine minimum
7 (church_rest): split off from brew_molecule()
8 (big_rest): split off from brew_molecule(). Construct using
11 * mf/feta-eindelijk.mf: junk multi measure rest.
13 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
15 * lily/multi-measure-rest.cc (add_column): remove columns property.
17 * lily/dynamic-engraver.cc (process_music): add more verbose warning
19 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
22 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
24 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
25 keywords covered, dropped some non-keywords, include R- and 128-notes
27 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
29 * Code clean-up: Junk multiple implementations of ledger line
30 creation in note_head, custos, and porrectus. This is important
31 since there soon will be some more applications of ledger lines to
32 come (e.g. ambitus engraver).
34 * Make thickness of ledger lines adjustable. This is essential
35 for mensural notation.
37 * Fix some bugs in the current ledger_line implementation, most
38 notably that of the horizontal extent of ledger lines which equals
39 at least the extent of the metafont ledger_line character, and
40 which grows(!) if the desired extent shrinks below this limit.
42 * roundfilledbox: variable blotdiameter
44 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
46 * VERSION: 1.5.47 released
48 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
50 * lily/porrectus.cc: change line-thickness to thickness, change
51 stem-direction to direction.
53 * scm/backend-documentation-lib.scm (check-dangling-properties):
54 Automatically detect doc'ed properties that are not in an interface
56 * scm/grob-property-description.scm: property cleanup. Remove many
57 paper-column props that are non-existent.
59 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
60 the grob has a molecule-callback.
62 * lily/*.cc: remove many set_interface() calls, and their
65 * input/regression/spacing-knee.ly: new file
67 * input/regression/spacing-clef-first-note.ly: new file
69 * lily/staff-spacing.cc (get_spacing_params): different spacing
70 for pref matter to note at start of line, halfway during line.
72 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
73 correction only if stems have same direction (i.e. not for
74 stem-clef combination).
75 (stem_dir_correction): maximal correction for knees.
77 * lily/*.cc: many updates to interface descriptions.
79 * lily/grob.cc (internal_set_grob_property): add interface check
80 for every set_grob_property call
82 * lily/*.cc: document interface stuff in C++
84 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
86 * lily/volta-bracket.cc: naming: change volta spanner to
89 * input/bugs/*.ly: cleanup, remove lots of files.
91 * buildscripts/mf-to-table.py (write_ps_encoding): generate
92 .encoding file. WARNING: upgrade to pktrace 1.0.3
94 * mf/feta-toevallig.mf: change PS name for parentheses.
96 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
98 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
101 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
103 * lily/scope.cc: remove file .
105 * lily/include/scope.hh: remove file. Remove Scope class
109 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
110 score_forbidden_quants): ): take out of SCM, pass parameters so
111 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
113 (calc_stem_y): robustness: take care of last_visible_stem == 0.
116 * lily/lily-guile.cc (ly_unit): return internal unit.
118 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
120 * lily/paper-outputter.cc (output_version): output internal unit
123 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
125 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
127 * scripts/ly2dvi.py: clean up old .*pk font caching code.
129 * scm/ps.scm: Use uppercase postscript font names for the standard
132 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
133 Add all available TeX Type1 fonts, including Feta, to the
134 Ghostscript font path.
136 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
137 version (affects the FontName) in lilypond.map.
139 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
140 documentation file to fetaNNlist.ly to avoid name collisions between
141 lilypond generated .tex file and font .tex macros file.
144 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
146 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
147 made mensural longa and (semi-)brevis leaner
149 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
151 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
152 clean-up: moved bezier shape and slope from porrectus to lookup
154 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
155 and /usr/share/texmf/fonts
157 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
159 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
161 * lily/text-spanner.cc (brew_molecule): add #'thickness
162 (brew_molecule): add corrections for thickness in molecule padding.
164 * lily/line-spanner.cc (line_atom): make function private
166 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
167 discover bounding box. This solves the cropping problem.
169 * lily/bar-check-iterator.cc (process): Only resynchronize bar
170 check when it fails. This fixes the combination of grace notes
173 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
175 * lily/repeated-music.cc (minimum_start): new Scheme callable function
176 (first_start): new Scheme callable. This will fix repeated music
177 starting with grace notes.
179 * lily/music.cc (start_mom): check start-moment-function grob property.
181 * VERSION: 1.5.45 released
183 * input/regression/system-extents.ly: new regression test. Test
186 * lily/system.cc: rename LineOfScore into System
188 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
190 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
191 (ly_get_extent): new Scheme function ly-get-extent
193 * ps/lilyponddefs.ps: use output-scale for line-x
196 * scm/ps.scm (font-load-command):
199 2002-03-20 Rune Zedeler <rune@zedeler.dk>
201 * lily/beaming-info.cc: Stupid typo fixed
203 * lily/accidental-engraver.cc: rewrote accidental-routines to get
204 support for cross-context auto-accidentals.
205 Now the engraver can stay in Staff-context and see other contexts
207 Changed properties: autoAccidentals, autoCautionaries
209 * lily/translator-group.cc (set_children_property):
210 Function added recursively setting the same property (deep_copied)
211 for all children of a Translator_group.
213 * ly/property-init.ly: added commands
214 \pianoAccidentals \voiceAccidentals
215 \modernVoiceAccidentals \modernVoiceCautionaries
217 * ly/engraver-init.ly: Correct initialization of new accidentals.
219 * scm/translator-property-description.scm: Updated
221 * input/regression/accidental-voice.ly: Added
223 * Documentation/regression-test.tely: Added new test
225 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
227 * VERSION: 1.5.44 released
229 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
231 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
233 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
236 * tex/feta*.tex: remove.
238 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
239 all software dealing with it.
241 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
243 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
244 (this fixes pdf output). Drop awk dependency.
246 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
247 dimensions (linewidth) are in mm.
249 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
251 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
253 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
255 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
257 * VERSION: 1.5.43 released
259 * scm/beam.scm (beam-dir-majority-median): if majority is
260 undecided, use median. Removes a forced dir in sarabande.
262 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
264 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
266 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
267 widths, heights and shortens are now customisable properties.
269 * scm/grob-description.scm, scm/grob-property-description.scm: New
270 properties added to PianoPedalBracket, unnecessary
271 Y-offset-callbacks removed from *Pedal, undocumented properties
274 * Documentation/user/refman.itely: Piano pedal updates.
276 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
278 * scm/grob-property-description.scm:
279 * scm/interface-description.scm: Remove old stuff.
281 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
282 0.48 (previously 0.42).
283 (Beam): Remove old stuff.
286 * lily/stem-tremolo.cc:
288 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
289 (previously space-function).
291 * stepmake/bin/add-html-footer.py: Website title fix.
293 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
295 * scripts/ly2dvi.py (environment): use new font searching setup.
297 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
299 * lily/tfm.cc (dimensions): make code dimension independent
301 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
304 * tex/lily-ps-defs.tex: scaling for PS points and MM.
306 * lily/include/dimensions.hh: try MM as internal unit.
308 * scm/*.scm: remove invoke-dim1
310 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
312 * GNUmakefile.in (fontpaths): add fontpaths target,
314 * make/mutopia-targets.make: add PDF rules.
316 * make/mutopia-rules.make: add pdf rule.
318 * buildscripts/mutopia-index.py (list_item): add PDF.
320 * buildscripts/lilypond-profile.sh (TEXMF): typo.
322 * make/lilypond-vars.make: set TEXMF for the new font setup.
324 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
326 * VERSION: 1.5.42 released
328 * mf/feta-schrift.mf: endless twiddling of Tr.
330 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
331 endless twiddling with the bulb shape.
333 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
334 little smaller if there is an accidental.
336 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
338 * buildscripts/lilypond-profile.sh:
340 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
341 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
342 Implement new font installation strategy
344 * Documentation/misc/fontinstallation (TEXMF): Documentation of
345 the new font installation strategy.
347 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
350 * input/test/staff-size.ly: Simplified using StaffContainer
352 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
355 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
357 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
359 * lily/beam.cc (score_stem_lengths): new quanting stuff
360 (score_forbidden_quants): Second and third beam quant stuff.
362 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
364 * lily/beam.cc (least_squares): Remember least-squares-dy for
366 (quantise_interval): Don't quant to dy steeper that
367 least-squares-dy. Return empty interval if no sane quants found.
368 (quantise_position): Try quantise_interval until we have
371 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
373 * scm/interface-description.scm (beam-interface): Update.
375 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
377 * VERSION: 1.5.41 released
379 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
380 optima serifs on top of t, bottom of r.
382 * mf/feta-bolletjes.mf: make ledger line rounder.
384 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
386 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
389 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
391 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
392 well as text pedal indications and a combination of both. All
393 pedal indications are horizontally aligned on a line spanner.
395 * lily/text-spanner.cc: Edge-width property added to use in
396 bracketed piano pedals. Function setup_sustain_pedal added to set
397 the dimensions of the brackets.
399 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
400 some of the *Pedal properties tweaked.
402 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
403 edge-width (TextSpanner) properties.
405 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
407 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
408 fontified identifiers list.
410 * input/test/pedal.ly: New pedal features added.
412 * Documentation/user/refman.itely: New pedal features documented.
415 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
417 * lily/include/new-beam.hh: Previously new-beam.hh
418 * lily/beam.cc: Previously new-beam.cc
419 (least_squares): Bugfix: don't barf on beams with less than two
420 visible stems (tremolos).
423 * scm/grob-description.scm (Beam): Junk old beam stuff.
426 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
430 * mf/feta-eindelijk.mf: new 8th rest.
432 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
433 stick out of staffline
435 * scripts/lilypond-book.py: fixes for texi regular expressions.
437 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
439 * lily/include/new-beam.hh:
440 * lily/new-beam.cc: New file.
442 * flower/include/interval.hh:
443 * flower/include/interval.tcc (delta): New method.
444 (swap): Now public (previously private).
446 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
447 1 staff-line-thickness. Sadly, this makes dy quanting problems
448 (dy quants allowed should depend on actual left y) more visible.
450 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
452 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
454 * scm/grob-property-description.scm (concaveness-threshold): Add
455 typecheck and description.
457 * scm/grob-description.scm (Beam): Remove obsolete properties, add
458 concaveness-threshold (previously concaveness).
460 * lily/beam.cc (check_concave): Remove choices and debugging
461 stuff: use best concaveness calculation.
462 (quantise_dy): Remove choice. Try to never make a slope steeper
463 by quantising, but certainly never quantise a slope away.
464 (check_stem_length_f): Remove choice. In case of lengthening
465 alowed, always lengthen to ideal length.
467 * Documentation/index.texi: Fix FAQ url.
469 * Documentation/topdocs/INSTALL.texi: Add information about fink,
470 compile fix and 1.4 specific fix that doesn't hurt 1.5.
472 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
474 * VERSION: 1.5.39 released
476 * lily/simple-spacer.cc (add_rod): rods take precedence over
477 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
479 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
481 * lily/note-spacing.cc (get_spacing): only insert space for
482 accidentals if necessary.
484 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
486 * lily/spacing-spanner.cc (musical_column_spacing): new
487 function. Have correct spacing from note to end-of-line as well.
489 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
491 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
493 * darwin.patch: New file.
495 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
496 code. Shorten stems by fraction of stems to be shortened.
498 * lily/stem.cc (get_default_stem_end_position): Shorten only half
499 of shorten value for boundary cases.
501 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
502 (Beam): Set beamed-stem-shorten to (1.0 0.5).
504 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
506 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
508 * scm/grob-description.scm (Beam): Add concaveness. Replace
509 Beam::cancel_suspect_slope with Beam::check_concave.
511 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
512 set slope to horizontal if concaveness > Beam.concaveness. This
513 handles cases that kludgy cancel_suspect_slope was meant to catch
515 (cancel_suspect_slope): Remove.
517 2002-03-12 Rune Zedeler <rune@zedeler.dk>
519 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc allow for
520 stemLeftBeamCount and stemRightBeamCount to equal 0.
523 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
525 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
526 fixed spacing for pref matter, if the next column is musical, and
529 * lily/note-spacing.cc (stem_dir_correction): Use correct
530 discretionary for stem-bar spacing.
532 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
534 * VERSION: 1.5.38 released
536 * lily/grob.cc (warning): Use cause tracking to give more
537 meaningful errors from the backend.
539 * lily/property-iterator.cc (check_grob): Warn if setting grob
540 property in unknown grob.
542 * mf/feta-toevallig.mf: brushed stems for natural sign.
544 * lily/molecule.cc (align_to): don't translate empty molecule.
545 (this triggers a very subtle bug in time-signature.)
547 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
549 * lily/spring.cc: remove file.
551 * input/regression/spacing-stem-bar.ly: new file
553 * lily/score.cc (run_translator): resurrect point-and-click
555 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
558 * lily/spacing-spanner.cc (find_shortest): Shortest note for
559 spacing is now globally determined, using the most common shortest
560 note. Notes that are shorter are spaced geometrically, and with
561 expand hints. This makes spacing more even, and measures that have
562 very short notes won't be that stretched out.
564 * mf/feta-klef.mf: F-clef fixes, documentation on the
565 shape. (WARNING: font changed.)
567 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
569 * lily/simple-spacer.cc (add_columns): support for infinitely
572 * lily/staff-spacing.cc (get_spacing_params): space after
573 prefatory matter is fixed.
575 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
577 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
578 barline following an upstem.
580 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
581 function from next_notes_correction().
582 (bar_y_positions): idem.
584 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
586 * input/regression/break.ly (texidoc): bugfix: escape \ in
589 * lily/staff-spacing.cc (next_notes_correction): Correct the
590 spacing of a note following a barline.
593 2002-03-04 Glen Prideaux
595 * mf/feta-solfa.mf: Shaped note heads
597 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
599 * VERSION: 1.5.37 released
601 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
604 * lily/break-align-interface.cc (do_alignment): completely
605 rewritten. Now it does not use Align_interface anymore, but a
606 separate routine. Like StaffSpacing, it reads space-alist from the
607 breakable grobs. This allows you to set spacing using
609 \property Staff.Clef \override #'space-alist = '(....stuff....)
611 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
612 to Bar_line. Move files around as well.
614 * lily/time-signature.cc (time_signature): left align time signatures.
616 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
617 Corrections of the glyph shape C. Comments added.
619 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
621 * lily/spacing-spanner.cc: move from third-try.cc; rename
622 Third_spacing_spanner to Spacing_spanner.
624 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
625 spacing stuff. Much cleaner now, and we prepare for neat spacing
626 tricks around bar lines and such.
628 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
629 variables with themselves. (Ouch.)
631 * lily/span-bar.cc (brew_molecule): don't try to span bars that
634 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
638 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
641 * lily/music.cc (ly_get_mus_property): typechecking
642 (ly_set_mus_property): idem
643 (ly_make_music): idem
644 (ly_music_name): idem
646 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
648 * lily/note-spacing.cc (stem_dir_correction): correction for
649 same stem notes as well.
651 * lily/pitch.cc (pitch_transpose): stricter typechecking
653 * mf/parmesan*mf: magnification fixes.
655 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
657 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
659 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
660 documenting the font. (Doesn't work for parmesan at the moment)
662 * Documentation/user/appendices.itely (The Feta font): Add list of
663 Feta font symbols with names.
665 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
668 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
670 * lily/translator-group.cc (ly_set_trans_property): typechecking
671 (ly_get_trans_property): typechecking.
673 * lily/font-metric.cc (ly_text_dimension): typechecking
674 (ly_find_glyph_by_name): idem.
676 * scm/bass-figure.scm (brew-complete-figure): support for
679 * lily/grob.cc (ly_get_paper_var): new function
681 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
683 * VERSION (PATCH_LEVEL): 1.5.35 released.
685 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
686 (bracket): New function.
688 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
689 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
691 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
694 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
697 * lily/grob.cc (ly_get_grob_property): be anal about types.
698 (ly_set_grob_property): idem
700 * lily/figured-bass-engraver.cc (process_music): move molecule
701 building completely to Scheme
703 * lily/include/musical-request.hh (class Bass_figure_req): Add
706 * lily/parser.yy (bass_figure): add support for space figure.
708 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
710 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
712 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
713 (ly_align_to_x): new function ly-align-to!
715 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
718 * mf/feta-nummer.mf: include normal-space dimension.
720 * lily/collision.cc (check_meshing_chords): don't merge collisions
723 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
726 2002-02-28 Mats Bengtsson <matsb@matsb@s3.kth.se>
728 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
730 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
732 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
735 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
738 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
739 scm/grob-description.scm: added mensural fermata symbol
741 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
743 * VERSION: 1.5.34 released.
745 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
747 * lily/staff-symbol-referencer.cc (callback): assume that
748 staff-position is unset in general.
750 * input/regression/rest-pitch.ly: new file.
752 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
755 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
757 * lily/scm-option.cc (set_lily_option): add internal-type-checks
758 as Scheme option. Run regression test by default with
759 internal-type-checking.
761 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
763 * lily/lily-guile.cc (type_check_assignment): changed functions.
765 * scm/*description*.scm: be anal about typechecks. Some changes
766 for internal variable names.
768 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
770 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
772 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
774 * VERSION: 1.5.33 released.
776 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
777 flare_path everywhere (c-clef, numbers).
779 * lily/bar-number-engraver.cc (process_music): also print bar
780 number if measure starts with grace note.
782 * input/regression/grace-bar-number.ly: new test.
784 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
786 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
789 * scm/music-functions.scm (voicify-music): split chords into
790 different voices automatically.
792 * lily/music.cc (ly_music_list_p): new function
794 * lily/music-sequence.cc (do_relative_octave): robustification
796 * scm/music-functions.scm: many utility functions
798 * lily/music.cc (ly_set_mus_property): add type checks to the
799 Scheme property assignment.
801 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
804 * mf/lilypond.map: .map file from Mats' page.
806 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
808 * Some more parmesan related fixes;
810 * Custos: varying shape (in particular, stem length), depending on the
811 vertical position of the custos (on staffline / between stafflines);
813 * Custos: added grob property "neutral-direction" (same semantics as
814 with stem); introduced new grob property "neutral-position";
816 * Time-signature: print a warning when resorting to default layout.
818 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
820 * lily/translator-group.cc (add_fresh_simple_translator): remove
821 function; initialize() is called through
822 Translator_group::initialize().
824 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
825 for the neighbors of a loose column.
827 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
828 position loose columns so that they don't collide.
830 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
832 * VERSION: 1.5.32 released.
834 * scm/font.scm: remove font-name symbol.
836 * mf/GNUmakefile: use pktrace for making PFAs
838 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
840 * lily/rest-collision.cc (do_shift): read direction field from
841 rest-column in case of note-rest collision. This should fix some
842 problems with rest collisions.
844 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
846 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
849 * lily/note-head.cc (brew_ez_molecule): Remove note-character
850 property. Read pitch directly from #'cause.
852 * mf/feta-puntje.mf: bugfix
854 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
856 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
858 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
860 * Documentation/windows/compiling.texi: Update.
862 * Documentation/index.texi: Add link to orphaned compiling for
865 * Documentation/footer.html.in: Comment fix.
867 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
869 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
871 * VERSION: 1.5.31 released
873 * lily/new-spacing-spanner.cc: remove file.
875 * lily/third-try.cc (do_measure): only take spacings into account
876 if they pertain to the column pair under consideration. This fixes
877 spacing bug when mixing eighths triplets and normal eighths.
879 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
880 lines don't take up space anymore. Document why in note-head.cc
883 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
885 * lily/font-interface.cc (get_font): reinstate
886 #'font-magnification. See input/regression/font-magnification.ly
887 (get_font): Change the definition of #'font-name grob property.
889 * lily/grob.cc (get_uncached_molecule): output origin for grobs
890 that have a #'cause field.
892 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
894 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
896 * mf/GNUmakefile: remove metapost stuff
898 * stepmake/aclocal.m4: remove metapost detection stuff.
900 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
902 * mf/GNUmakefile (FET_FILES):
903 (FONT_FILES): Include parmesan.
905 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
908 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
910 * Documentation/user/refman.itely (Paper size): Quote braces.
912 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
914 * stepmake/aclocal.m4: fixed bison version check to be more
917 * lily/stem.cc (position_noteheads): fix for cluster chords.
919 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
921 * python 2.2 support.
923 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
925 * VERSION: 1.5.30 released
927 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
929 * Documentation/user/refman.itely (Dynamics): add a note about
932 * scm/grob-description.scm: add a 'translator-type? object
933 property, so that \property Foo.Bar =\turnOff doesn't cause
936 * lily/translator-group.cc (add_fresh_group_translator): make
937 new add-translator functions to make distinction between fresh and
938 used group-translators. Fixes problem with scripts on auto-changing voice
940 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
941 add to Score_performer. Fixes bar checks in MIDI
943 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
944 heads. Fixes many quirks with ties.
946 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
947 in the grob property #'cause, instead of using Grob_info.
949 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
950 staff context, fixing dot alignment on collisions.
952 * lily/beam-engraver.cc (try_music): remove can't find beam start
953 warning, so that skipTypesetting won't complain.
955 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
957 * Documentation/user/refman.itely (Paper size): Documentation fix,
960 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
962 * scm/grob-description.scm: \breathe: Use feta font comma by default
964 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
966 * input/template/piano-dynamics.ly (pedal): Simplified
968 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
970 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
972 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
974 * lilypond-mode.el (LilyPond-command-query): ignore case.
976 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
978 * VERSION: 1.5.29 released
980 * all files: change 2001 to 2002 in headers globally
982 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
983 cheese") font. WARNING: fonts changed.
985 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
987 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
989 * mf/*.mf: Added some more vaticana/solesmes style font symbols
991 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
993 * mf/*.mf: Fixed a few typos in various .mf files
995 2002-01-17 Rune Zedeler <rune@zedeler.dk>
997 * mf/: added macro soft_penstroke
1000 redrawn triangular noteheads
1002 added classical quarter rest
1004 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1006 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1007 lines and staff_space>=2
1009 * lily/rest.cc: Use default rests when current style glyphs not
1011 \property Staff.Rest \override #'style = #'classical
1013 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1015 * input/bugs/first-tie.ly: New file.
1017 * input/bugs/spacing-clash.ly: New file.
1019 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1023 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1025 * lilypond-indent.el: New file providing indentation for
1026 parenthesised blocks of lilypond code in Emacs
1028 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1029 indentation and handle block comments properly. Distinguish
1030 accents from close-brackets in fontification.
1032 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1034 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1036 * Documentation/windows/installing.texi:
1037 * Documentation/windows/compiling.texi: Include from 1.4.10.
1039 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1041 * input/bugs/first-midi-tie.ly: New file.
1043 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1045 * VERSION: 1.5.28 released
1047 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1048 illicit beams on [c4 c4] etc.
1050 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1051 file. Make separate iterator for Bar_checks. Bar_check now happen
1052 outside engravers, meaning that you can use them with
1053 skipTypesetting. Associated changes in other files.
1055 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1058 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1060 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1062 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1064 * lily/stem.cc (set_spacing_hints): removed function
1066 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1067 correction for spacing; now take vertical extents of the stem into
1070 * lily/third-try.cc: More hacking to get spacing working.
1072 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1073 sits at staff level and creates note spacing objects. Scrap it
1074 again, and document why.
1076 * lily/include/group-interface.hh: rename functions.
1078 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1080 * stepmake/stepmake/c++-rules.make:
1081 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1083 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1085 * make/lilypond-vars.make:
1086 * scripts/ly2dvi.py (setup_environment):
1087 * scripts/lilypond-book.py (setup_environment): Also set tex
1090 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1092 * VERSION: 1.5.27 released.
1094 * Documentation/user/refman.itely (Bar numbers): added bar number
1097 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1100 2001-12-22 Mats Bengtsson <matsb@matsb@s3.kth.se>
1102 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1103 spread the last few lines all over the last page of a score.
1105 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1107 * lily/third-try.cc: 3rd try at revising spacing
1108 engine. Not yet finished.
1110 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1113 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1114 collecting past note heads.
1116 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1119 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1120 class. Keep a queue of grobs that are still playing in busyGrobs.
1122 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1123 function. Use busyGrobs to detect playing notes.
1125 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1127 * Documentation/topdocs/INSTALL.texi: Added note about broken
1128 python-2.1. Updated note for Debian's broken (well, broken for
1129 our use anyway) tex configuration.
1131 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1133 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1134 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1136 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1137 (But left margin of png's still misses a few pixels. Arg.)
1139 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1141 * lilypond-mode.el (LilyPond-command-next-midi): Make
1142 possible to kill midi-process (using "C-c C-m").
1144 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1146 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1147 Convert strings with dimensions to numbers.
1149 * lily/volta-engraver.cc: only make a bracket for the top staff,
1150 as found in stavesFound.
1152 * lily/bar-number-engraver.cc: remove staff administration.
1154 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1155 administration. This breaks support for invisible-staff.
1157 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1158 symbols into stavesFound.
1160 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1161 grobs, and put them into columns.
1163 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1164 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1166 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1168 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1169 midi section in the Emacs-mode, so it is possible to play certain
1170 score in a multiscore lilypond-file.
1172 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1173 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1174 (FIXME: not accessible from guile)
1176 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1177 better support for Kurt Stone's suggestions.
1178 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1180 Changed property: localKeySignature.
1181 Added properties: extraNatural, autoAccidentals,
1184 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1186 * ly/property-init.ly: added commands
1187 \defaultAccidentals \modernAccidentals \modernCautionaries
1188 \noResetKey \forgetAccidentals
1190 * ly/engraver-init.ly: Correct initialization of new accidentals.
1192 * scm/translator-property-description.scm: The new properties
1195 * input/: Some examples added, some changed.
1197 * Documentation/regression-test.tely: Added quick test of new
1200 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1202 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1205 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1207 * lily/beam.cc (before_line_breaking): Make beams without stems
1208 or with only one stem disappear.
1210 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1212 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1213 files to have standardised HTML bibliography output. Update build
1214 docs to reflect this.
1216 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1217 active_count_, so that we don't have to look for active springs
1220 * scm/interface-description.scm,scm/grob-property-description.scm:
1223 * lily/simple-spacer.cc (solve): Handle forced line breaks
1224 here. Fixes problems when combining linebreaks with non-fitting
1227 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1229 * 1.4.9.jcn3 forward ports.
1231 * Really included .cvsignore.
1233 * Included Han-Wen's uu1 windows fixes.
1235 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1237 * Added Cygwin setup.hint
1239 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1240 tetex/texmf, python installations.
1242 * Updated cygwin installer.
1244 * ly2dvi: Don't accept filenames with spaces (+ fix).
1246 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1248 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1250 * lily/translator-def.cc: Remove manual symbol caching.
1252 * lily/script-column.cc (before_line_breaking): robustness check:
1253 don't crash if no direction set.
1255 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1257 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1261 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1263 * lily/note-head.cc (head_extent): added to compute width without
1264 ledger lines. By default, ledger lines take up width now.
1266 * input/regression/fingering.ly: demonstrate auto fingering.
1267 Horizontal placement is still buggy.
1269 * lily/fingering-engraver.cc (class Fingering_engraver):
1270 added. Provides support for horizontal fingering scripts
1272 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1274 * lily/side-position-interface.cc (add_staff_support): add staff
1275 only for Y-axis side positions.
1277 * lily/parser.yy (request_chord): Fix mem leak.
1279 * lily/musical-request.cc (transpose): moved to Music::transpose()
1281 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1282 can store grobs as grob-creation cause as well.
1284 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1285 handle when adding. Use precomputed symbols throughout lily.
1287 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1288 track of spacing issues.
1290 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1291 to keep track of staff spacing
1293 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1295 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1296 code clean from conditionals and have a concentrated sets of
1297 compatitility fixes for old guile versions.
1299 * Fixes for guile 1.4, including embedded ps.
1301 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1303 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1304 well for markup texts.
1306 * lily/musical-request.cc (length_mom): kludge for null pointer.
1308 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1310 * scm/lily.scm (sign): bugfix
1312 * CHANGES: Change log instated.
1314 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.