1 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
3 * VERSION: 1.5.47 released
5 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
7 * lily/porrectus.cc: change line-thickness to thickness, change
8 stem-direction to direction.
10 * scm/backend-documentation-lib.scm (check-dangling-properties):
11 Automatically detect doc'ed properties that are not in an interface
13 * scm/grob-property-description.scm: property cleanup. Remove many
14 paper-column props that are non-existent.
16 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
17 the grob has a molecule-callback.
19 * lily/*.cc: remove many set_interface() calls, and their
22 * input/regression/spacing-knee.ly: new file
24 * input/regression/spacing-clef-first-note.ly: new file
26 * lily/staff-spacing.cc (get_spacing_params): different spacing
27 for pref matter to note at start of line, halfway during line.
29 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
30 correction only if stems have same direction (i.e. not for
31 stem-clef combination).
32 (stem_dir_correction): maximal correction for knees.
34 * lily/*.cc: many updates to interface descriptions.
36 * lily/grob.cc (internal_set_grob_property): add interface check
37 for every set_grob_property call
39 * lily/*.cc: document interface stuff in C++
41 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
43 * lily/volta-bracket.cc: naming: change volta spanner to
46 * input/bugs/*.ly: cleanup, remove lots of files.
48 * buildscripts/mf-to-table.py (write_ps_encoding): generate
49 .encoding file. WARNING: upgrade to pktrace 1.0.3
51 * mf/feta-toevallig.mf: change PS name for parentheses.
53 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
55 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
58 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
60 * lily/scope.cc: remove file .
62 * lily/include/scope.hh: remove file. Remove Scope class
66 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
67 score_forbidden_quants): ): take out of SCM, pass parameters so
68 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
70 (calc_stem_y): robustness: take care of last_visible_stem == 0.
73 * lily/lily-guile.cc (ly_unit): return internal unit.
75 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
77 * lily/paper-outputter.cc (output_version): output internal unit
80 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
82 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
84 * scripts/ly2dvi.py: clean up old .*pk font caching code.
86 * scm/ps.scm: Use uppercase postscript font names for the standard
89 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
90 Add all available TeX Type1 fonts, including Feta, to the
91 Ghostscript font path.
93 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
94 version (affects the FontName) in lilypond.map.
96 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
97 documentation file to fetaNNlist.ly to avoid name collisions between
98 lilypond generated .tex file and font .tex macros file.
101 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
103 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
104 made mensural longa and (semi-)brevis leaner
106 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
108 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
109 clean-up: moved bezier shape and slope from porrectus to lookup
111 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
112 and /usr/share/texmf/fonts
114 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
116 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
118 * lily/text-spanner.cc (brew_molecule): add #'thickness
119 (brew_molecule): add corrections for thickness in molecule padding.
121 * lily/line-spanner.cc (line_atom): make function private
123 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
124 discover bounding box. This solves the cropping problem.
126 * lily/bar-check-iterator.cc (process): Only resynchronize bar
127 check when it fails. This fixes the combination of grace notes
130 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
132 * lily/repeated-music.cc (minimum_start): new Scheme callable function
133 (first_start): new Scheme callable. This will fix repeated music
134 starting with grace notes.
136 * lily/music.cc (start_mom): check start-moment-function grob property.
138 * VERSION: 1.5.45 released
140 * input/regression/system-extents.ly: new regression test. Test
143 * lily/system.cc: rename LineOfScore into System
145 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
147 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
148 (ly_get_extent): new Scheme function ly-get-extent
150 * ps/lilyponddefs.ps: use output-scale for line-x
153 * scm/ps.scm (font-load-command):
156 2002-03-20 Rune Zedeler <rune@zedeler.dk>
158 * lily/beaming-info.cc: Stupid typo fixed
160 * lily/accidental-engraver.cc: rewrote accidental-routines to get
161 support for cross-context auto-accidentals.
162 Now the engraver can stay in Staff-context and see other contexts
164 Changed properties: autoAccidentals, autoCautionaries
166 * lily/translator-group.cc (set_children_property):
167 Function added recursively setting the same property (deep_copied)
168 for all children of a Translator_group.
170 * ly/property-init.ly: added commands
171 \pianoAccidentals \voiceAccidentals
172 \modernVoiceAccidentals \modernVoiceCautionaries
174 * ly/engraver-init.ly: Correct initialization of new accidentals.
176 * scm/translator-property-description.scm: Updated
178 * input/regression/accidental-voice.ly: Added
180 * Documentation/regression-test.tely: Added new test
182 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
184 * VERSION: 1.5.44 released
186 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
188 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
190 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
193 * tex/feta*.tex: remove.
195 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
196 all software dealing with it.
198 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
200 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
201 (this fixes pdf output). Drop awk dependency.
203 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
204 dimensions (linewidth) are in mm.
206 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
208 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
210 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
212 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
214 * VERSION: 1.5.43 released
216 * scm/beam.scm (beam-dir-majority-median): if majority is
217 undecided, use median. Removes a forced dir in sarabande.
219 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
221 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
223 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
224 widths, heights and shortens are now customisable properties.
226 * scm/grob-description.scm, scm/grob-property-description.scm: New
227 properties added to PianoPedalBracket, unnecessary
228 Y-offset-callbacks removed from *Pedal, undocumented properties
231 * Documentation/user/refman.itely: Piano pedal updates.
233 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
235 * scm/grob-property-description.scm:
236 * scm/interface-description.scm: Remove old stuff.
238 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
239 0.48 (previously 0.42).
240 (Beam): Remove old stuff.
243 * lily/stem-tremolo.cc:
245 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
246 (previously space-function).
248 * stepmake/bin/add-html-footer.py: Website title fix.
250 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
252 * scripts/ly2dvi.py (environment): use new font searching setup.
254 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
256 * lily/tfm.cc (dimensions): make code dimension independent
258 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
261 * tex/lily-ps-defs.tex: scaling for PS points and MM.
263 * lily/include/dimensions.hh: try MM as internal unit.
265 * scm/*.scm: remove invoke-dim1
267 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
269 * GNUmakefile.in (fontpaths): add fontpaths target,
271 * make/mutopia-targets.make: add PDF rules.
273 * make/mutopia-rules.make: add pdf rule.
275 * buildscripts/mutopia-index.py (list_item): add PDF.
277 * buildscripts/lilypond-profile.sh (TEXMF): typo.
279 * make/lilypond-vars.make: set TEXMF for the new font setup.
281 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
283 * VERSION: 1.5.42 released
285 * mf/feta-schrift.mf: endless twiddling of Tr.
287 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
288 endless twiddling with the bulb shape.
290 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
291 little smaller if there is an accidental.
293 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
295 * buildscripts/lilypond-profile.sh:
297 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
298 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
299 Implement new font installation strategy
301 * Documentation/misc/fontinstallation (TEXMF): Documentation of
302 the new font installation strategy.
304 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
307 * input/test/staff-size.ly: Simplified using StaffContainer
309 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
312 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
314 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
316 * lily/beam.cc (score_stem_lengths): new quanting stuff
317 (score_forbidden_quants): Second and third beam quant stuff.
319 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
321 * lily/beam.cc (least_squares): Remember least-squares-dy for
323 (quantise_interval): Don't quant to dy steeper that
324 least-squares-dy. Return empty interval if no sane quants found.
325 (quantise_position): Try quantise_interval until we have
328 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
330 * scm/interface-description.scm (beam-interface): Update.
332 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
334 * VERSION: 1.5.41 released
336 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
337 optima serifs on top of t, bottom of r.
339 * mf/feta-bolletjes.mf: make ledger line rounder.
341 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
343 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
346 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
348 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
349 well as text pedal indications and a combination of both. All
350 pedal indications are horizontally aligned on a line spanner.
352 * lily/text-spanner.cc: Edge-width property added to use in
353 bracketed piano pedals. Function setup_sustain_pedal added to set
354 the dimensions of the brackets.
356 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
357 some of the *Pedal properties tweaked.
359 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
360 edge-width (TextSpanner) properties.
362 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
364 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
365 fontified identifiers list.
367 * input/test/pedal.ly: New pedal features added.
369 * Documentation/user/refman.itely: New pedal features documented.
372 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
374 * lily/include/new-beam.hh: Previously new-beam.hh
375 * lily/beam.cc: Previously new-beam.cc
376 (least_squares): Bugfix: don't barf on beams with less than two
377 visible stems (tremolos).
380 * scm/grob-description.scm (Beam): Junk old beam stuff.
383 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
387 * mf/feta-eindelijk.mf: new 8th rest.
389 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
390 stick out of staffline
392 * scripts/lilypond-book.py: fixes for texi regular expressions.
394 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
396 * lily/include/new-beam.hh:
397 * lily/new-beam.cc: New file.
399 * flower/include/interval.hh:
400 * flower/include/interval.tcc (delta): New method.
401 (swap): Now public (previously private).
403 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
404 1 staff-line-thickness. Sadly, this makes dy quanting problems
405 (dy quants allowed should depend on actual left y) more visible.
407 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
409 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
411 * scm/grob-property-description.scm (concaveness-threshold): Add
412 typecheck and description.
414 * scm/grob-description.scm (Beam): Remove obsolete properties, add
415 concaveness-threshold (previously concaveness).
417 * lily/beam.cc (check_concave): Remove choices and debugging
418 stuff: use best concaveness calculation.
419 (quantise_dy): Remove choice. Try to never make a slope steeper
420 by quantising, but certainly never quantise a slope away.
421 (check_stem_length_f): Remove choice. In case of lengthening
422 alowed, always lengthen to ideal length.
424 * Documentation/index.texi: Fix FAQ url.
426 * Documentation/topdocs/INSTALL.texi: Add information about fink,
427 compile fix and 1.4 specific fix that doesn't hurt 1.5.
429 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
431 * VERSION: 1.5.39 released
433 * lily/simple-spacer.cc (add_rod): rods take precedence over
434 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
436 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
438 * lily/note-spacing.cc (get_spacing): only insert space for
439 accidentals if necessary.
441 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
443 * lily/spacing-spanner.cc (musical_column_spacing): new
444 function. Have correct spacing from note to end-of-line as well.
446 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
448 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
450 * darwin.patch: New file.
452 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
453 code. Shorten stems by fraction of stems to be shortened.
455 * lily/stem.cc (get_default_stem_end_position): Shorten only half
456 of shorten value for boundary cases.
458 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
459 (Beam): Set beamed-stem-shorten to (1.0 0.5).
461 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
463 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
465 * scm/grob-description.scm (Beam): Add concaveness. Replace
466 Beam::cancel_suspect_slope with Beam::check_concave.
468 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
469 set slope to horizontal if concaveness > Beam.concaveness. This
470 handles cases that kludgy cancel_suspect_slope was meant to catch
472 (cancel_suspect_slope): Remove.
474 2002-03-12 Rune Zedeler <rune@zedeler.dk>
476 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc allow for
477 stemLeftBeamCount and stemRightBeamCount to equal 0.
480 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
482 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
483 fixed spacing for pref matter, if the next column is musical, and
486 * lily/note-spacing.cc (stem_dir_correction): Use correct
487 discretionary for stem-bar spacing.
489 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
491 * VERSION: 1.5.38 released
493 * lily/grob.cc (warning): Use cause tracking to give more
494 meaningful errors from the backend.
496 * lily/property-iterator.cc (check_grob): Warn if setting grob
497 property in unknown grob.
499 * mf/feta-toevallig.mf: brushed stems for natural sign.
501 * lily/molecule.cc (align_to): don't translate empty molecule.
502 (this triggers a very subtle bug in time-signature.)
504 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
506 * lily/spring.cc: remove file.
508 * input/regression/spacing-stem-bar.ly: new file
510 * lily/score.cc (run_translator): resurrect point-and-click
512 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
515 * lily/spacing-spanner.cc (find_shortest): Shortest note for
516 spacing is now globally determined, using the most common shortest
517 note. Notes that are shorter are spaced geometrically, and with
518 expand hints. This makes spacing more even, and measures that have
519 very short notes won't be that stretched out.
521 * mf/feta-klef.mf: F-clef fixes, documentation on the
522 shape. (WARNING: font changed.)
524 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
526 * lily/simple-spacer.cc (add_columns): support for infinitely
529 * lily/staff-spacing.cc (get_spacing_params): space after
530 prefatory matter is fixed.
532 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
534 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
535 barline following an upstem.
537 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
538 function from next_notes_correction().
539 (bar_y_positions): idem.
541 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
543 * input/regression/break.ly (texidoc): bugfix: escape \ in
546 * lily/staff-spacing.cc (next_notes_correction): Correct the
547 spacing of a note following a barline.
550 2002-03-04 Glen Prideaux
552 * mf/feta-solfa.mf: Shaped note heads
554 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
556 * VERSION: 1.5.37 released
558 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
561 * lily/break-align-interface.cc (do_alignment): completely
562 rewritten. Now it does not use Align_interface anymore, but a
563 separate routine. Like StaffSpacing, it reads space-alist from the
564 breakable grobs. This allows you to set spacing using
566 \property Staff.Clef \override #'space-alist = '(....stuff....)
568 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
569 to Bar_line. Move files around as well.
571 * lily/time-signature.cc (time_signature): left align time signatures.
573 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
574 Corrections of the glyph shape C. Comments added.
576 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
578 * lily/spacing-spanner.cc: move from third-try.cc; rename
579 Third_spacing_spanner to Spacing_spanner.
581 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
582 spacing stuff. Much cleaner now, and we prepare for neat spacing
583 tricks around bar lines and such.
585 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
586 variables with themselves. (Ouch.)
588 * lily/span-bar.cc (brew_molecule): don't try to span bars that
591 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
595 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
598 * lily/music.cc (ly_get_mus_property): typechecking
599 (ly_set_mus_property): idem
600 (ly_make_music): idem
601 (ly_music_name): idem
603 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
605 * lily/note-spacing.cc (stem_dir_correction): correction for
606 same stem notes as well.
608 * lily/pitch.cc (pitch_transpose): stricter typechecking
610 * mf/parmesan*mf: magnification fixes.
612 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
614 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
616 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
617 documenting the font. (Doesn't work for parmesan at the moment)
619 * Documentation/user/appendices.itely (The Feta font): Add list of
620 Feta font symbols with names.
622 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
625 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
627 * lily/translator-group.cc (ly_set_trans_property): typechecking
628 (ly_get_trans_property): typechecking.
630 * lily/font-metric.cc (ly_text_dimension): typechecking
631 (ly_find_glyph_by_name): idem.
633 * scm/bass-figure.scm (brew-complete-figure): support for
636 * lily/grob.cc (ly_get_paper_var): new function
638 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
640 * VERSION (PATCH_LEVEL): 1.5.35 released.
642 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
643 (bracket): New function.
645 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
646 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
648 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
651 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
654 * lily/grob.cc (ly_get_grob_property): be anal about types.
655 (ly_set_grob_property): idem
657 * lily/figured-bass-engraver.cc (process_music): move molecule
658 building completely to Scheme
660 * lily/include/musical-request.hh (class Bass_figure_req): Add
663 * lily/parser.yy (bass_figure): add support for space figure.
665 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
667 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
669 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
670 (ly_align_to_x): new function ly-align-to!
672 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
675 * mf/feta-nummer.mf: include normal-space dimension.
677 * lily/collision.cc (check_meshing_chords): don't merge collisions
680 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
683 2002-02-28 Mats Bengtsson <matsb@matsb@s3.kth.se>
685 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
687 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
689 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
692 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
695 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
696 scm/grob-description.scm: added mensural fermata symbol
698 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
700 * VERSION: 1.5.34 released.
702 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
704 * lily/staff-symbol-referencer.cc (callback): assume that
705 staff-position is unset in general.
707 * input/regression/rest-pitch.ly: new file.
709 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
712 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
714 * lily/scm-option.cc (set_lily_option): add internal-type-checks
715 as Scheme option. Run regression test by default with
716 internal-type-checking.
718 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
720 * lily/lily-guile.cc (type_check_assignment): changed functions.
722 * scm/*description*.scm: be anal about typechecks. Some changes
723 for internal variable names.
725 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
727 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
729 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
731 * VERSION: 1.5.33 released.
733 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
734 flare_path everywhere (c-clef, numbers).
736 * lily/bar-number-engraver.cc (process_music): also print bar
737 number if measure starts with grace note.
739 * input/regression/grace-bar-number.ly: new test.
741 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
743 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
746 * scm/music-functions.scm (voicify-music): split chords into
747 different voices automatically.
749 * lily/music.cc (ly_music_list_p): new function
751 * lily/music-sequence.cc (do_relative_octave): robustification
753 * scm/music-functions.scm: many utility functions
755 * lily/music.cc (ly_set_mus_property): add type checks to the
756 Scheme property assignment.
758 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
761 * mf/lilypond.map: .map file from Mats' page.
763 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
765 * Some more parmesan related fixes;
767 * Custos: varying shape (in particular, stem length), depending on the
768 vertical position of the custos (on staffline / between stafflines);
770 * Custos: added grob property "neutral-direction" (same semantics as
771 with stem); introduced new grob property "neutral-position";
773 * Time-signature: print a warning when resorting to default layout.
775 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
777 * lily/translator-group.cc (add_fresh_simple_translator): remove
778 function; initialize() is called through
779 Translator_group::initialize().
781 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
782 for the neighbors of a loose column.
784 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
785 position loose columns so that they don't collide.
787 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
789 * VERSION: 1.5.32 released.
791 * scm/font.scm: remove font-name symbol.
793 * mf/GNUmakefile: use pktrace for making PFAs
795 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
797 * lily/rest-collision.cc (do_shift): read direction field from
798 rest-column in case of note-rest collision. This should fix some
799 problems with rest collisions.
801 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
803 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
806 * lily/note-head.cc (brew_ez_molecule): Remove note-character
807 property. Read pitch directly from #'cause.
809 * mf/feta-puntje.mf: bugfix
811 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
813 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
815 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
817 * Documentation/windows/compiling.texi: Update.
819 * Documentation/index.texi: Add link to orphaned compiling for
822 * Documentation/footer.html.in: Comment fix.
824 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
826 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
828 * VERSION: 1.5.31 released
830 * lily/new-spacing-spanner.cc: remove file.
832 * lily/third-try.cc (do_measure): only take spacings into account
833 if they pertain to the column pair under consideration. This fixes
834 spacing bug when mixing eighths triplets and normal eighths.
836 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
837 lines don't take up space anymore. Document why in note-head.cc
840 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
842 * lily/font-interface.cc (get_font): reinstate
843 #'font-magnification. See input/regression/font-magnification.ly
844 (get_font): Change the definition of #'font-name grob property.
846 * lily/grob.cc (get_uncached_molecule): output origin for grobs
847 that have a #'cause field.
849 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
851 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
853 * mf/GNUmakefile: remove metapost stuff
855 * stepmake/aclocal.m4: remove metapost detection stuff.
857 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
859 * mf/GNUmakefile (FET_FILES):
860 (FONT_FILES): Include parmesan.
862 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
865 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
867 * Documentation/user/refman.itely (Paper size): Quote braces.
869 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
871 * stepmake/aclocal.m4: fixed bison version check to be more
874 * lily/stem.cc (position_noteheads): fix for cluster chords.
876 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
878 * python 2.2 support.
880 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
882 * VERSION: 1.5.30 released
884 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
886 * Documentation/user/refman.itely (Dynamics): add a note about
889 * scm/grob-description.scm: add a 'translator-type? object
890 property, so that \property Foo.Bar =\turnOff doesn't cause
893 * lily/translator-group.cc (add_fresh_group_translator): make
894 new add-translator functions to make distinction between fresh and
895 used group-translators. Fixes problem with scripts on auto-changing voice
897 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
898 add to Score_performer. Fixes bar checks in MIDI
900 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
901 heads. Fixes many quirks with ties.
903 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
904 in the grob property #'cause, instead of using Grob_info.
906 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
907 staff context, fixing dot alignment on collisions.
909 * lily/beam-engraver.cc (try_music): remove can't find beam start
910 warning, so that skipTypesetting won't complain.
912 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
914 * Documentation/user/refman.itely (Paper size): Documentation fix,
917 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
919 * scm/grob-description.scm: \breathe: Use feta font comma by default
921 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
923 * input/template/piano-dynamics.ly (pedal): Simplified
925 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
927 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
929 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
931 * lilypond-mode.el (LilyPond-command-query): ignore case.
933 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
935 * VERSION: 1.5.29 released
937 * all files: change 2001 to 2002 in headers globally
939 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
940 cheese") font. WARNING: fonts changed.
942 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
944 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
946 * mf/*.mf: Added some more vaticana/solesmes style font symbols
948 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
950 * mf/*.mf: Fixed a few typos in various .mf files
952 2002-01-17 Rune Zedeler <rune@zedeler.dk>
954 * mf/: added macro soft_penstroke
957 redrawn triangular noteheads
959 added classical quarter rest
961 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
963 * lily/bar.cc: Bugfix: repeat dots when even number of staff
964 lines and staff_space>=2
966 * lily/rest.cc: Use default rests when current style glyphs not
968 \property Staff.Rest \override #'style = #'classical
970 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
972 * input/bugs/first-tie.ly: New file.
974 * input/bugs/spacing-clash.ly: New file.
976 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
980 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
982 * lilypond-indent.el: New file providing indentation for
983 parenthesised blocks of lilypond code in Emacs
985 * lilypond-font-lock.el: Changes to the syntax table to facilitate
986 indentation and handle block comments properly. Distinguish
987 accents from close-brackets in fontification.
989 * lilypond-mode.el: LilyPond-indent-command set appropriately.
991 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
993 * Documentation/windows/installing.texi:
994 * Documentation/windows/compiling.texi: Include from 1.4.10.
996 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
998 * input/bugs/first-midi-tie.ly: New file.
1000 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1002 * VERSION: 1.5.28 released
1004 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1005 illicit beams on [c4 c4] etc.
1007 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1008 file. Make separate iterator for Bar_checks. Bar_check now happen
1009 outside engravers, meaning that you can use them with
1010 skipTypesetting. Associated changes in other files.
1012 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1015 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1017 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1019 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1021 * lily/stem.cc (set_spacing_hints): removed function
1023 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1024 correction for spacing; now take vertical extents of the stem into
1027 * lily/third-try.cc: More hacking to get spacing working.
1029 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1030 sits at staff level and creates note spacing objects. Scrap it
1031 again, and document why.
1033 * lily/include/group-interface.hh: rename functions.
1035 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1037 * stepmake/stepmake/c++-rules.make:
1038 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1040 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1042 * make/lilypond-vars.make:
1043 * scripts/ly2dvi.py (setup_environment):
1044 * scripts/lilypond-book.py (setup_environment): Also set tex
1047 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1049 * VERSION: 1.5.27 released.
1051 * Documentation/user/refman.itely (Bar numbers): added bar number
1054 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1057 2001-12-22 Mats Bengtsson <matsb@matsb@s3.kth.se>
1059 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1060 spread the last few lines all over the last page of a score.
1062 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1064 * lily/third-try.cc: 3rd try at revising spacing
1065 engine. Not yet finished.
1067 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1070 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1071 collecting past note heads.
1073 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1076 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1077 class. Keep a queue of grobs that are still playing in busyGrobs.
1079 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1080 function. Use busyGrobs to detect playing notes.
1082 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1084 * Documentation/topdocs/INSTALL.texi: Added note about broken
1085 python-2.1. Updated note for Debian's broken (well, broken for
1086 our use anyway) tex configuration.
1088 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1090 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1091 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1093 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1094 (But left margin of png's still misses a few pixels. Arg.)
1096 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1098 * lilypond-mode.el (LilyPond-command-next-midi): Make
1099 possible to kill midi-process (using "C-c C-m").
1101 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1103 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1104 Convert strings with dimensions to numbers.
1106 * lily/volta-engraver.cc: only make a bracket for the top staff,
1107 as found in stavesFound.
1109 * lily/bar-number-engraver.cc: remove staff administration.
1111 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1112 administration. This breaks support for invisible-staff.
1114 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1115 symbols into stavesFound.
1117 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1118 grobs, and put them into columns.
1120 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1121 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1123 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1125 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1126 midi section in the Emacs-mode, so it is possible to play certain
1127 score in a multiscore lilypond-file.
1129 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1130 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1131 (FIXME: not accessible from guile)
1133 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1134 better support for Kurt Stone's suggestions.
1135 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1137 Changed property: localKeySignature.
1138 Added properties: extraNatural, autoAccidentals,
1141 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1143 * ly/property-init.ly: added commands
1144 \defaultAccidentals \modernAccidentals \modernCautionaries
1145 \noResetKey \forgetAccidentals
1147 * ly/engraver-init.ly: Correct initialization of new accidentals.
1149 * scm/translator-property-description.scm: The new properties
1152 * input/: Some examples added, some changed.
1154 * Documentation/regression-test.tely: Added quick test of new
1157 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1159 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1162 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1164 * lily/beam.cc (before_line_breaking): Make beams without stems
1165 or with only one stem disappear.
1167 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1169 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1170 files to have standardised HTML bibliography output. Update build
1171 docs to reflect this.
1173 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1174 active_count_, so that we don't have to look for active springs
1177 * scm/interface-description.scm,scm/grob-property-description.scm:
1180 * lily/simple-spacer.cc (solve): Handle forced line breaks
1181 here. Fixes problems when combining linebreaks with non-fitting
1184 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1186 * 1.4.9.jcn3 forward ports.
1188 * Really included .cvsignore.
1190 * Included Han-Wen's uu1 windows fixes.
1192 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1194 * Added Cygwin setup.hint
1196 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1197 tetex/texmf, python installations.
1199 * Updated cygwin installer.
1201 * ly2dvi: Don't accept filenames with spaces (+ fix).
1203 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1205 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1207 * lily/translator-def.cc: Remove manual symbol caching.
1209 * lily/script-column.cc (before_line_breaking): robustness check:
1210 don't crash if no direction set.
1212 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1214 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1218 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1220 * lily/note-head.cc (head_extent): added to compute width without
1221 ledger lines. By default, ledger lines take up width now.
1223 * input/regression/fingering.ly: demonstrate auto fingering.
1224 Horizontal placement is still buggy.
1226 * lily/fingering-engraver.cc (class Fingering_engraver):
1227 added. Provides support for horizontal fingering scripts
1229 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1231 * lily/side-position-interface.cc (add_staff_support): add staff
1232 only for Y-axis side positions.
1234 * lily/parser.yy (request_chord): Fix mem leak.
1236 * lily/musical-request.cc (transpose): moved to Music::transpose()
1238 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1239 can store grobs as grob-creation cause as well.
1241 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1242 handle when adding. Use precomputed symbols throughout lily.
1244 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1245 track of spacing issues.
1247 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1248 to keep track of staff spacing
1250 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1252 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1253 code clean from conditionals and have a concentrated sets of
1254 compatitility fixes for old guile versions.
1256 * Fixes for guile 1.4, including embedded ps.
1258 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1260 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1261 well for markup texts.
1263 * lily/musical-request.cc (length_mom): kludge for null pointer.
1265 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1267 * scm/lily.scm (sign): bugfix
1269 * CHANGES: Change log instated.
1271 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.