1 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
3 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
4 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
5 scm/basic-properties.scm, scm/grob-description.scm,
6 scm/grob-property-description.scm: added support for ambitus
8 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 * lily/text-spanner.cc: add some props to interface (patch
13 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
15 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
16 dereference valid Grob.
18 * configure.in: Quoting fixes.
20 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
22 * lily/grob-scheme.cc: new file
24 * lily/break-substitution.cc: split up break substitution
25 functionality, and make a special constant stack-space version for
26 lists of grobs. This should fix the problems of lily in
27 combination with pthreads/qthreads.
29 * lily/grob.cc (mark_smob): bugfix: mark X parent too.
31 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
33 * lily/text-spanner.cc (setup_pedal_bracket):
34 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
35 Fix the lengths of mixed-style piano pedal brackets.
37 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
39 * Documentation/user/tutorial.itely (First steps): Add missing
42 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
43 about guile --with-threads. Hopefully this issue can be resolved
44 rsn, but maybe we should even add warnings for the standard Debian
47 * configure.in: Warn if guile is configured to use threads. Maybe
48 we should make this an error (ie, add to REQUIRED list?)
50 * config.make.in (PACKAGE_NAME):
51 (PACKAGE, package): Don't hardcode.
53 * VERSION (PACKAGE_NAME): Typo fix.
55 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
57 * input/tutorial/brahms-*.ly: new tutorial files.
59 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
61 * scm/script.scm (default-script-alist): fermata is up.
63 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
64 dynamic line spanner when there is no crescendo to connect.
66 * lily/tie.cc (get_control_points): add test to avoid flat ties.
68 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
70 * lily/note-collision.cc (check_meshing_chords): don't crash if no
73 * scm/music-functions.scm (toplevel-music-functions): new
74 definition. Functions to apply automatically. Removes the need for
75 explicitly doing \apply #voicify-music
77 * lily/grob.cc (do_break_substitution): rename function, use
78 global var for criterion argument. Reduces stack usage a little.
80 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
82 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
83 visibility-lambda to break-visibility
85 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
87 * input/bugs/part-combiner.ly: New file.
89 * lily/include/spacing-interface.hh: New file.
91 * lily/include/spaceable-element.hh: Remove.
93 * input/test/script-priority.ly: New file.
95 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
97 * lily/system.cc (output_lines): kill grobs that are only for spacing.
99 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
101 * lily/fingering-engraver.cc (make_script):
102 * lily/script-engraver.cc (process_music):
103 * lily/text-engraver.cc:
104 (process_acknowledged_grobs): Remove hard coded script-priority.
106 * flower/warn.cc: Cleanup.
108 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
111 * aclocal.m4: Regenerate.
113 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
115 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
116 * lily/include/lily-guile.hh: Only include config.h if necessary.
118 * Changelog: cvs changes ml archive test #8.
120 * lily/slur-engraver.cc: Layout fix.
122 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
124 * ly/engraver-init.ly (RhythmicStaffContext): add
125 Dot_column_engraver, resurrect barlines
127 * VERSION: 1.5.62 released.
129 * lily/engraver-group-engraver.cc (do_announces): rename
130 create_grobs () to process_acknowledged_grobs().
132 * lily/grob.cc (programming_error): add programming_error with
135 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
136 fail if a beam doesn't have stems.
138 * lily/engraver-group-engraver.cc (do_announces): scary change in
139 calling convention of create_grobs(): no create_grobs() call
140 before acknowledge_grobs().
142 * lily/sequential-music-iterator.cc (skip): add support for grace
145 * lily/music.cc (Music): fix very subtle and nasty memory
146 corruption bug. Typical symptom: "programming_error: Rhythmic_req
149 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
151 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
153 * ly/engraver-init.ly (RhythmicStaffContext): add
157 * lily/parser.yy: various protection fixes. Less objects are now
160 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
162 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
165 * Documentation/windows/zlily-profile.sh:
166 * Documentation/windows/post-lilypond.sh: Assume normal
167 prefix=/usr for lilypond.
169 * lily/musical-request.cc (length_mom): Display origin with error.
171 * input/test/duration-check.ly: New file.
173 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
176 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
177 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
180 * autogen.sh: Regenerate.
182 * Documentation/topdocs/INSTALL.texi:
184 * stepmake/configure.in:
185 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
186 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
187 ./configure once again requires autoconf == 2.13.
189 * stepmake/autogen.sh: Check for autoconf == 2.13.
191 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
193 * lily/parser.yy (open_request_parens): add input locations to
194 open and close parens.
196 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
198 * lily/tuplet-bracket.cc:
199 * lily/text-spanner.cc:
200 * lily/piano-pedal-engraver.cc:
201 * scm/grob-description.scm:
202 * scm/grob-property-description.scm: Changed the
203 edge-width property of brackets to edge-widen. Changed the sign of
204 the left element of edge-widen so a pair of equal numbers produces
205 a symmetrical bracket.
207 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
209 * ly/espanol.ly: added.
211 * lily/simple-spacer.cc (solve): remove assert.
213 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
215 * lily/forbid-break-engraver.cc (class
216 Forbid_line_break_engraver): new engraver: forbid linebreaks
219 * lily/spacing-spanner.cc (loose_column): add another check: don't
220 move around bar lines as loose columns.
222 * scm/basic-properties.scm (default-break-barline): add pre-break
225 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
227 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
228 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
230 * scripts/lilypond-book.py (environment): Bugfix: update to new
231 TEXMF scheme, from ly2dvi.
233 * lily/lookup.cc (slur): Invoke bezier-bow.
235 * scm/tex.scm (bezier-bow):
236 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
237 (Previously named bezier-sandwich).
239 * scm/tex.scm (bezier-sandwich):
240 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
242 * make/lilypond.mandrake.spec.in (post):
243 * make/lilypond.suse.spec.in (post):
244 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
246 * tex/lilyponddefs.tex: Uncomment feta character support.
248 * Documentation/user/refman.itely (Pitches): Add espanol.ly
251 * ly/catalan.ly: Add comment about (spanish) -s suffix.
253 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
256 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
258 * GNUmakefile.in (short-examples):
259 (long-examples): Bugfix for --srcdir build.
260 (top-web): Rewrite weblist find command.
262 * stepmake/bin/config.sub:
263 * stepmake/bin/config.guess: Update from latest autotools.
266 * autogen.sh: Regenerate.
269 * stepmake/configure.in:
270 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
271 requires autoconf >= 2.50.
273 * stepmake/autogen.sh: Check for autoconf >= 2.50.
275 * Documentation/user/refman.itely: Bugfix for tablature example.
277 * Documentation/windows/compiling.texi: Update for new and
280 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
282 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
283 introduce base-shortest-duration
285 * lily/parser.yy (music_output_def_body): don't crash when \tempo
286 in unexpected \midi{} is found.
288 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
290 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
291 the use of make/ly.make for use as an external makefile. Probably
292 noone except for myself ever used this anyway.
294 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
295 to new $datadir convention (<package>/<version>).
297 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
299 * VERSION: 1.5.61 released
301 * Document/user/refman.itely: tablature doc and code updates by
302 Jean-Baptiste Lamy <jiba@tuxfamily.org>
304 * input/template/piano-dynamics.ly: bugfixes.
306 * lily/key-engraver.cc (try_music): read request only once. Don't
307 overwrite lastKeySignature. Call create_key() only once. This
308 fixes a bug with multiple equal key changes on polyphonic staffs.
310 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
312 * scm/grob-description.scm: Add side-position-interface to TextSpanner
314 * scm/grob-property-description.scm: Document the trill line type.
316 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
318 * stepmake/stepmake/generic-vars.make:
319 * make/lilypond-vars.make:
320 * GNUmakefile.in (builddir-setup): New setup for builddir run.
321 Fixes LilyPond run from builddir for --srcdir builds.
323 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
326 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
328 * scm/grob-description.scm (all-grob-descriptions): add
329 font-family to RehearsalMark
331 * scm/drums.scm: move over definitions from drum-pitch-init.ly
333 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
336 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
338 * lilypond-mode.el: Propose saving before applying a command:
339 for saved buffer set default command to LilyPond.
341 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
343 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
346 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
348 * Documentation/windows/lilypond-doc.hint: New file.
350 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
351 Bugfixes for --srcdir html-doc build.
353 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
354 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
356 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
358 * ly/script-init.ly (pralldown): add some scripts.
360 * Documentation/user/refman.itely: many edits.
362 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
364 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
365 direction, this breaks staffline avoidance of the bracket when
368 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
370 * scripts/midi2ly.py: Fix handling of -o
372 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
374 * lily/molecule.cc (translate): set max distance to 100 cm.
376 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
378 * VERSION: 1.5.60 released
380 * lily/beam.cc: tremolo fix.
382 * scripts/convert-ly.py: add tuplet-X-visibility rules.
383 add VerticalExtent -> verticalExtent rules.
385 * lily/axis-group-engraver.cc: consistent case for
386 XxxxVerticalExtent properties.
388 * Documentation/user/refman.itely (Tuplets): update
389 tuplet-X-visibility properties.
391 * input/test/defaultbars.ly: Corrected (thanks Mats)
393 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
395 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
397 * buildscripts/lilypond-profile.sh: override settings if
398 LILYPONDPREFIX is set.
400 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
402 * scripts/ly2dvi.py (non_path_environment): Fix typo
404 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
406 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
408 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
410 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
412 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
413 beam-engraver: use different engraver so we can mix normal and
416 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
418 * lily/beam.cc (shift_region_to_valid): Try to shift positions
419 after slope-damping and concaveness check, so that short-stems are
422 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
424 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
426 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
428 * VERSION: 1.5.59 released
430 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
431 notice that missing features are exercise for user.
433 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
435 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
436 (but alas, not partly precomputed) value for current_y when
437 calculating stem length demerits.
438 (calc_stem_y): Temporary precomputed factors fix.
440 * lily/stem.cc (calc_stem_info): Take multiplicity into account
443 * input/bugs/melisma-tie-rest.ly: New file.
445 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
447 * lily/stem.cc (calc_stem_info): remove min_y member, rename
448 stuff. Remove kneeing stuff.
450 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
453 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
459 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
460 patch-level of version in minor-version string. Arg.
462 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
464 * ly/engraver-init.ly (TabStaffContext):
465 enable TabStaff by default.
467 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
469 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
471 * config.hh.in: Remove duplicate DIR_DATADIR entry.
473 * aclocal.m4: Regenerate.
475 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
477 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
479 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
481 * lilypond-mode.el: Write notes with fewer keystrokes trough a
482 "Quick notes"-interface.
484 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
486 * input/regression/non-empty-text.ly: Update example with outdated
489 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
491 * scripts/convert-ly.py: add textNonEmpty rule
493 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
495 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
497 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
498 using translate-robust add_molecule instead of add_at_edge.
499 Bugfix for #(lines (finger "" "1")).
501 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
503 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
506 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
510 * Documentation/user/refman.itely: Bugfix: add node Repeats and
511 MIDI. Regenerate menu. Fix @end example.
513 * lily/accidental.cc: Add cautionary-style to interface.
515 * mf/feta-beugel.mf (code): use autometric macros for braces.
516 This fixes input/bugs/braces.
518 * lily/afm.cc (count): return numOfChars, not size of array
521 * lily/script.cc (before_line_breaking): postpone setting the
522 X-parent of vertical scripts. This fixes the case of scripts on
525 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
527 * scm/grob-description.scm: fix alignment of barnumber: make sure
528 it doesn't hit the G-clef.
530 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
531 startGraceMusic not startGraceContext).
533 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
535 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
538 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
540 * lily/accidental-engraver.cc: remove old accidental engraver,
541 move new one to accidental-engraver.cc.
543 * lily/local-key-item.cc: remove file
545 * lily/include/local-key-item.hh: remove file
547 * scripts/ly2dvi.py (make_preview): add --preview-resolution
550 * lily/accidental.cc (brew_molecule): support for cautionary
553 * lily/note-head.cc (internal_brew_molecule): warn if note head
556 * lily/time-signature.cc (special_time_signature): remove warning
557 about time signature.
559 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
560 reverse springs by limiting fixed-note space.
562 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
564 * stepmake/aclocal.m4: Bugfix: complain if program not found.
566 * scripts/update-lily.py (next_version, prev_version, diff_name):
567 New function. Patches now named name-prev-latest.diff.gz.
568 Bugfix: import shutil.
570 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
572 * input/tutorial/sammartini.ly: fix and document autochange
575 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
576 does produce .pdftex files.
578 * lily/note-collision.cc (check_meshing_chords): move file from
579 collision.cc, implement merged note heads (there you go, Drarn :-)
581 * input/regression/collision-heads.ly: new file
583 * VERSION: 1.5.57 released.
585 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
587 * mf/parmesan-heads.mf, scm/grob-description.scm,
588 scm/grob-property-description.scm, scm/interface-description,
589 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
590 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
591 lily/include/ligature-engraver.hh,
592 lily/include/ligature-bracket.hh, lily/parser.yy,
593 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
594 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
595 lily/ligature-head.cc, lily/ligature-engraver.cc,
596 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
597 implemented white mensural ligatures (still with a big list of
601 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
603 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
604 Documentation/user/internals.itely.
606 * lily/function-documentation.cc: new file. Infrastructure for
607 self documenting Scheme functions.
609 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
611 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
613 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
615 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
616 and * (as in "([^>]*)?")
618 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
620 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
621 Add info about CVS. Stable/development are currently 1.4/1.5,
622 both at lilypond.org.
624 * autogen.sh: Generate.
626 * stepmake/configure:
627 * configure: Regenerate.
629 * stepmake/stepmake/automatically-generated.sub.make: Keep
632 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
634 * stepmake/stepmake/generic-targets.make (configure): Generate
637 * GNUmakefile.in (SCRIPTS):
638 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
640 * stepmake/autogen.sh: New file.
642 * configure: Check for g++ >= 2.95.
644 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
645 c/c++ version checking.
647 * flower/include/string.hh: Typo fix.
649 * lily/include/midi-item.hh: Remove stray i.
651 * Documentation/windows/GNUmakefile: Avoid collapsed directory
654 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
655 constructs '//' from arguments.
657 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
659 * scm/lily.scm (ly-load): show SCM filenames if verbose.
661 * lily/lily-guile.cc (init_functions): add ly-verbose function.
663 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
665 * flower/include/{pointer,tuple}*: removed.
667 * VERSION: released 1.5.56
669 * scm/music-functions.scm (check-start-chords): function to check
670 for chords without \context. Apply automatically from parser.
672 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
674 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
677 * scm/output-lib.scm: fix ez notation stems.
679 * lily/paper-outputter.cc: various fixes to speed up compilation.
681 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
683 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
685 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
687 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
688 determine latex input.
690 * stepmake/bin/install-sh: Include latest from libtool.
692 * stepmake/configure:
693 * configure: Regenerate.
695 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
696 (USER_CFLAGS): Bugfix, include CPPFLAGS.
698 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
700 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
701 REQUIRED programs and version. Try to continue configuring, list
702 missing programs at the end, but don't generate a GNUmakefile if
703 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
704 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
705 fancy for some older systems.
707 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
709 * lily/score-engraver.cc (typeset_all): sanity check for items
710 that are Y parent to spanner.
712 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
715 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
717 * lily/*.cc: remove as many iostream use as possible.
719 * flower/ : remove text-db, text-stream, data-file.
721 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
723 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
724 (completize_preamble): don't barf if no preamble present.
725 (do_file): allow extensions on --output
727 * scripts/ly2dvi.py (make_preview): make automatic preview of
728 first system. Small cleanups.
730 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
732 * scripts/lilypond-book.py (make_pixmap): output png directly.
734 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
737 * lily/parser.yy (My_lily_parser): comment out code. (Causes
738 problems with recent bison releases).
740 * make/lilypond.redhat.spec.in: add pfa fonts to X.
742 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
744 * lilypond-font-lock.el: Fixes the order of the note name list.
746 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
748 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
749 capability, --verbose option, rlimit hack.
751 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
753 * lily/piano-pedal-engraver.cc: cleanups.
755 * lily/accidental.cc (after_line_breaking): add break tie
758 * lily/text-engraver.cc (try_music): don't typeset fingerings
760 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
762 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
764 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
766 * lily/*.cc: change gh_str02scm() to ly_str02scm().
768 * lily/spacing-spanner.cc (note_spacing): Bound
769 shortest-playing-length by the distance to next note. This should
770 fix chord tremolo spacing.
772 * VERSION: 1.5.55 released
774 * lily/stem.cc (off_callback): invisible stem over whole note is
775 centered on note now.
777 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
778 stem-tremolo is stem now.
780 * input/mozart-hrn*.ly: many corrections.
782 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
783 support for dynamic scripts.
785 * lily/accidental-placement.cc (position_accidentals): check for
786 collisions as well: should avoid those heads too.
788 * lily/beam.cc (check_concave): allow undefined gap and
789 threshold. Change the meaning of threshold/gap == 0.0.
790 (check_concave): skip Stolba concaveness check if we have a knee
793 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
795 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
796 tremolos of dotted duration.
798 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
800 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
801 downstroke again. Sigh.
803 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
806 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
808 * lily/slur.cc (add_column): allow slur over rest.
810 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
812 * lily/beam.cc: move scoring constants out of code
814 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
816 * mf/feta-nummer.mf: scalability fixes.
818 * mf/feta-nummer-code.mf: fixes for 5, 8.
820 * mf/feta-klef.mf: G clef fixes.
822 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
824 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
826 * scripts/lilypond-book.py: %Newline, rather than glue macros
827 after \end{verbatim}.
829 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
831 * Documentation/user/lilypond-book.itely:
832 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
835 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
837 * scm/grob-property-description.scm (beam-space): Junk.
839 * lily/beam.cc (space_function): New method.
840 (get_interbeam): Call space-function.
842 * scm/grob-description.scm (Beam): Initialize space-function with
843 Beam::space_function.
845 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
846 Beam.space-function. Don't quantise grace beams.
848 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
850 * VERSION: 1.5.54 released
852 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
855 * Documentation/index.texi: add PDF links.
857 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
859 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
860 compare #'glyph as strings.
862 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
864 * scripts/ly2dvi.py (setup_environment): fix by Mats.
866 * lily/stem.cc (head_count): Change function name. Change property
867 to #'note-heads i.s.o. #'heads.
868 (position_noteheads): Kern noteheads for invisible stems.
869 (before_line_breaking): Do position_noteheads() for whole note
872 * lily/accidental-placement.cc (position_accidentals): First
873 determine refpoints, only then determine extents.
875 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
877 * lily/accidental-placement.cc (position_accidentals): use all
878 note heads for note head-skyline.
880 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
882 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
884 * Documentation/windows/setup.hint (requires): Add gsview dependency.
886 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
888 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
890 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
892 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
894 * mf/feta-schrift.mf: lighter staccato.
896 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
898 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
900 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
902 * VERSION: 1.5.53 released
904 * scm/lily.scm (ly-load): use primitive-load for loading.
906 * lily/misc.cc: remove quantise_iv()
908 * lily/*.cc: pass read-only arrays by reference.
910 * lily/grob.cc (common_refpoint_of_array): new function. Try to
911 use common_refpoint_of_{array, list} when possible.
913 * lily/include/accidental-placement.hh: new file.
915 * lily/accidental-placement.cc (alignment_callback): position
916 accidentals in a better way.
918 * lily/skyline.cc: new file. Compute distances for collections of
921 * lily/include/skyline.hh: new file
923 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
925 * lily/accidental.cc (class Accidental_interface): grob for a
928 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
931 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
932 together with new accidental-interface.
934 * lily/include/*.hh: remove spurious set_interface() decls.
936 * lily/key-signature-interface.cc (brew_molecule): add padding for
937 natural signs. Make natural typesetting like the sharp.
940 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
941 is now slightly curved, not straight.
944 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
946 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
948 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
949 more strictly. Use more clever regular expressions. Commented regexps.
951 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
953 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
955 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
957 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
958 to control width of staff symbol in ragged-right mode (by request
961 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
962 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
963 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
964 added support for ligature brackets (needed when transcribing
967 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
969 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
970 Fontify notes more strictly.
972 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
974 * mf/feta-din-code.mf: dynamic z sign.
976 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
978 * lilypond-mode.el: Prevent recoloring strings and comments.
980 * lilypond-font-lock.el: Handle block comments: block comments
981 can have also ordinary comments inside.
983 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
985 * lily/stem.cc (get_default_dir): set direction to CENTER if
986 invisible. Various other fixes to deal with invisible stems and
987 stem-direction == CENTER.
989 * lily/rest-collision.cc (do_shift): take direction from note if
992 * input/regression/tie-grace.ly: new file.
994 * lily/tie-engraver.cc (create_grobs): fix tied graces.
996 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
997 knee correction. Fixes tight spacing for knees.
999 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1001 * VERSION: 1.5.52 released
1003 * lily/*.cc: add some undocced properties.
1004 scm/grob-description.scm: idem.
1006 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1008 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1009 multi-measure rests like "R1 *4" and scheme (typically has '#'
1010 in the beginning). Small fixes. Add few reserved words.
1012 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1014 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1017 * Documentation/windows/installing.texi: Suggest gswin32c (console
1018 program) for getting the version. Layout fixes.
1020 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1022 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1023 windows viewing commands, remove silly comment about Yap.
1025 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1027 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1028 configure to find kpathsea on for example Slackware 8.0.
1030 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1032 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1033 by default: avoid "1" over single bar rests.
1035 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1036 and correct the handling of geometry options.
1038 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1040 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1041 implementation for Class::has_interface automatically. Junk all
1042 other implementations.
1044 * lily/grob.cc (internal_get_grob_property): also typecheck
1045 property reads. Catches even more undocced properties. Bugfixing
1046 left for the uninspired masses.
1048 * lily/beam.cc: remove end_after_line_breaking().
1050 * lily/grob.cc (calculate_dependencies): remove list support for
1053 * lily/font-size-engraver.cc: only do font-interface.
1055 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1057 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1060 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1062 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1063 brackets using arpeggio requests.
1065 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1066 molecule-callback to use for drawing the brackets.
1068 * Documentation/user/refman.itely:
1069 * input/test/chord-bracket.ly: Chord brackets documented
1071 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1073 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1075 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1077 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1079 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1080 direction tuplets on beams.
1082 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1084 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1086 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1088 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1089 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1090 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1091 submenu to "LilyPond"-menu.
1093 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1094 an interface to play midi.
1096 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1098 * input/regression/script-stack-order.ly: new file.
1100 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1102 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1104 * mf/feta-din-code.mf: kerning for dynamics.
1106 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1108 * input/regression/dynamics-glyphs.ly: new file
1110 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1112 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1113 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1115 * Documentation/windows/gs-profile.sh:
1116 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1117 moved to gs/gsview windows packages.
1119 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1121 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1122 finding out the duration. Fixes chord tremolo bug.
1124 * lily/completion-note-heads-engraver.cc (process_music): Set
1125 correct duration for all requests of the broken notes.
1127 * input/regression/completion-heads.ly: Added example of
1128 Completion_heads_engraver.
1130 * lilypond-mode.el: Added "2Midi" command
1132 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1134 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1135 edge-width, edge-height and shorten-pair properties for tuplet
1138 * lilypond-indent.el: Support for blinking of matching parentheses
1140 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1142 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1143 cleanups of piano pedal brackets.
1145 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1147 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1149 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1151 * mf/feta-new-code.mf: new dynamic f sign.
1154 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1156 * mf/feta-new-code.mf: new dynamic p sign.
1158 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1160 * lily/note-spacing.cc (stem_dir_correction): only do
1161 beam-correction if a beam is there.
1163 * lily/stem.cc (duration_log): change from flag_i (); better
1165 (get_default_stem_end_position): fix dot/flag collision code.
1167 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1169 * VERSION: release 1.5.50
1171 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1172 unit spring here. Reduces number of warning messages.
1174 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1176 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1178 * scm/generic-property.scm: remove generic-property, property-engraver
1180 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1182 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1184 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1186 * scm/*.scm: remove volta, hairpin and tuplet functions.
1188 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1189 note column for notes/stems/dots that already have parents. Fixes
1190 nested grace contexts.
1192 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1194 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1195 get too curved slurs.
1197 * scm/slur.scm (default-slur-extremity-offset-alist)
1198 (default-phrasing-slur-extremity-offset-alist): Move slur
1199 attachments further away from note-head, vertically. Also, leave
1200 a horizontal gap between slur and stem end.
1202 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1204 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1206 * input/regression/spacing-grace-duration.ly: new file
1208 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1209 for shortest durations.
1211 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1212 extent of the mm rest.
1214 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1217 * lily/tuplet-bracket.cc (make_bracket): new function
1218 (get_x_offset): new function; make tuplet brackets align on stems
1219 if stem has same direction.
1220 (parallel_beam): be anal about matching bracket to tuplet.
1222 * lily/lookup.cc (line): new function Lookup::line().
1224 * scm/tex.scm (dashed-line): change -line to -system in names.
1226 * lily/box.cc (add_point): new function.
1228 * flower/include/interval.hh: new function add_point ().
1229 new function widen()
1231 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1233 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1235 * scm/grob-property-description.scm (number-threshold): Add
1238 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1239 rest if #measures > number-threshold. Use padding (well, fake
1242 * scm/font.scm (make-style-sheet): New styles: mark-number,
1244 (paper20-style-sheet-alist): Add bigger bold fonts.
1246 * lily/mark-engraver.cc (process_music): Use style mark-number or
1249 * .cvsignore: Ignore all kinds of lilypond input and output.
1251 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1253 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1255 * lily/staff-symbol.cc (brew_molecule): make line thickness
1258 * lily/*.cc: replace stafflinethickness by linethickness.
1260 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1262 * input/regression/beam-concave.ly: Add to-be-considered-concave
1265 * lily/beam.cc (check_concave): Add check for large gap between an
1266 inner notehead and the line through outer noteheads.
1268 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1269 value 2.0 staff-space.
1271 * scm/grob-property-description.scm (concaveness-gap): Add
1274 * input/mozart-hrn3-allegro.ly: Fix typo.
1276 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1278 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1279 lily/note-head-engraver: improved implementation of roundfilledbox
1280 (according to Han-Wen's request)
1282 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1283 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1284 lily/simple-spacer.cc: ragged-right alignment
1286 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1288 * input/regression/spacing-note-flags.ly: new file
1290 * input/regression/spacing-rest.ly: new file
1292 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1294 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1295 all grace notes tight (not only the column directly following a
1298 * scm/grob-description.scm (all-grob-descriptions): don't make
1299 mm-rests larger than normal.
1301 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1302 curved. Remove white space at the right of flags.
1304 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1306 * ports/ports.make: Bugfix: ignore CVS directories.
1308 * stepmake/.cvsignore: New file.
1310 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
1312 * lily/note-spacing.cc (stem_dir_correction): don't correct when
1313 there is a flag on the stem.
1315 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1317 * scm/grob-property-description.scm (measure-length):
1318 measure-length grob property.
1320 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1321 better spacing for breakable columns when they're juxtaposed: use
1322 measure length if applicable
1324 * lily/timing-engraver.cc (start_translation_timestep): store
1325 measure length in breakable column at start of measure.
1327 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1329 * ROADMAP: Add description for ports dir, to check email upon
1332 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
1334 * VERSION: 1.5.48 released
1336 * lily/multi-measure-rest.cc (symbol_molecule): split off from
1338 (set_spacing_rods): Use symbol_molecule() to determine minimum
1340 (church_rest): split off from brew_molecule()
1341 (big_rest): split off from brew_molecule(). Construct using
1344 * mf/feta-eindelijk.mf: junk multi measure rest.
1346 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
1348 * lily/multi-measure-rest.cc (add_column): remove columns property.
1350 * lily/dynamic-engraver.cc (process_music): add more verbose warning
1352 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1355 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
1357 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1358 keywords covered, dropped some non-keywords, include R- and 128-notes
1360 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1362 * Code clean-up: Junk multiple implementations of ledger line
1363 creation in note_head, custos, and porrectus. This is important
1364 since there soon will be some more applications of ledger lines to
1365 come (e.g. ambitus engraver).
1367 * Make thickness of ledger lines adjustable. This is essential
1368 for mensural notation.
1370 * Fix some bugs in the current ledger_line implementation, most
1371 notably that of the horizontal extent of ledger lines which equals
1372 at least the extent of the metafont ledger_line character, and
1373 which grows(!) if the desired extent shrinks below this limit.
1375 * roundfilledbox: variable blotdiameter
1377 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
1379 * VERSION: 1.5.47 released
1381 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1383 * lily/porrectus.cc: change line-thickness to thickness, change
1384 stem-direction to direction.
1386 * scm/backend-documentation-lib.scm (check-dangling-properties):
1387 Automatically detect doc'ed properties that are not in an interface
1389 * scm/grob-property-description.scm: property cleanup. Remove many
1390 paper-column props that are non-existent.
1392 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1393 the grob has a molecule-callback.
1395 * lily/*.cc: remove many set_interface() calls, and their
1398 * input/regression/spacing-knee.ly: new file
1400 * input/regression/spacing-clef-first-note.ly: new file
1402 * lily/staff-spacing.cc (get_spacing_params): different spacing
1403 for pref matter to note at start of line, halfway during line.
1405 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1406 correction only if stems have same direction (i.e. not for
1407 stem-clef combination).
1408 (stem_dir_correction): maximal correction for knees.
1410 * lily/*.cc: many updates to interface descriptions.
1412 * lily/grob.cc (internal_set_grob_property): add interface check
1413 for every set_grob_property call
1415 * lily/*.cc: document interface stuff in C++
1417 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
1419 * lily/volta-bracket.cc: naming: change volta spanner to
1422 * input/bugs/*.ly: cleanup, remove lots of files.
1424 * buildscripts/mf-to-table.py (write_ps_encoding): generate
1425 .encoding file. WARNING: upgrade to pktrace 1.0.3
1427 * mf/feta-toevallig.mf: change PS name for parentheses.
1429 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1431 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1434 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
1436 * lily/scope.cc: remove file .
1438 * lily/include/scope.hh: remove file. Remove Scope class
1442 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1443 score_forbidden_quants): ): take out of SCM, pass parameters so
1444 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1446 (calc_stem_y): robustness: take care of last_visible_stem == 0.
1449 * lily/lily-guile.cc (ly_unit): return internal unit.
1451 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
1453 * lily/paper-outputter.cc (output_version): output internal unit
1454 from Paper_outputter
1456 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1458 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1460 * scripts/ly2dvi.py: clean up old .*pk font caching code.
1462 * scm/ps.scm: Use uppercase postscript font names for the standard
1465 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1466 Add all available TeX Type1 fonts, including Feta, to the
1467 Ghostscript font path.
1469 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1470 version (affects the FontName) in lilypond.map.
1472 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1473 documentation file to fetaNNlist.ly to avoid name collisions between
1474 lilypond generated .tex file and font .tex macros file.
1477 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
1479 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1480 made mensural longa and (semi-)brevis leaner
1482 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1484 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1485 clean-up: moved bezier shape and slope from porrectus to lookup
1487 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1488 and /usr/share/texmf/fonts
1490 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1492 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
1494 * lily/text-spanner.cc (brew_molecule): add #'thickness
1495 (brew_molecule): add corrections for thickness in molecule padding.
1497 * lily/line-spanner.cc (line_atom): make function private
1499 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1500 discover bounding box. This solves the cropping problem.
1502 * lily/bar-check-iterator.cc (process): Only resynchronize bar
1503 check when it fails. This fixes the combination of grace notes
1506 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
1508 * lily/repeated-music.cc (minimum_start): new Scheme callable function
1509 (first_start): new Scheme callable. This will fix repeated music
1510 starting with grace notes.
1512 * lily/music.cc (start_mom): check start-moment-function grob property.
1514 * VERSION: 1.5.45 released
1516 * input/regression/system-extents.ly: new regression test. Test
1519 * lily/system.cc: rename LineOfScore into System
1521 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1523 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1524 (ly_get_extent): new Scheme function ly-get-extent
1526 * ps/lilyponddefs.ps: use output-scale for line-x
1529 * scm/ps.scm (font-load-command):
1532 2002-03-20 Rune Zedeler <rune@zedeler.dk>
1534 * lily/beaming-info.cc: Stupid typo fixed
1536 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1537 support for cross-context auto-accidentals.
1538 Now the engraver can stay in Staff-context and see other contexts
1540 Changed properties: autoAccidentals, autoCautionaries
1542 * lily/translator-group.cc (set_children_property):
1543 Function added recursively setting the same property (deep_copied)
1544 for all children of a Translator_group.
1546 * ly/property-init.ly: added commands
1547 \pianoAccidentals \voiceAccidentals
1548 \modernVoiceAccidentals \modernVoiceCautionaries
1550 * ly/engraver-init.ly: Correct initialization of new accidentals.
1552 * scm/translator-property-description.scm: Updated
1554 * input/regression/accidental-voice.ly: Added
1556 * Documentation/regression-test.tely: Added new test
1558 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1560 * VERSION: 1.5.44 released
1562 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1564 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1566 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1569 * tex/feta*.tex: remove.
1571 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1572 all software dealing with it.
1574 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
1576 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1577 (this fixes pdf output). Drop awk dependency.
1579 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1580 dimensions (linewidth) are in mm.
1582 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1584 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1586 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1588 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
1590 * VERSION: 1.5.43 released
1592 * scm/beam.scm (beam-dir-majority-median): if majority is
1593 undecided, use median. Removes a forced dir in sarabande.
1595 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1597 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1599 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1600 widths, heights and shortens are now customisable properties.
1602 * scm/grob-description.scm, scm/grob-property-description.scm: New
1603 properties added to PianoPedalBracket, unnecessary
1604 Y-offset-callbacks removed from *Pedal, undocumented properties
1607 * Documentation/user/refman.itely: Piano pedal updates.
1609 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
1611 * scm/grob-property-description.scm:
1612 * scm/interface-description.scm: Remove old stuff.
1614 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1615 0.48 (previously 0.42).
1616 (Beam): Remove old stuff.
1619 * lily/stem-tremolo.cc:
1621 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1622 (previously space-function).
1624 * stepmake/bin/add-html-footer.py: Website title fix.
1626 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1628 * scripts/ly2dvi.py (environment): use new font searching setup.
1630 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1632 * lily/tfm.cc (dimensions): make code dimension independent
1634 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1637 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1639 * lily/include/dimensions.hh: try MM as internal unit.
1641 * scm/*.scm: remove invoke-dim1
1643 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1645 * GNUmakefile.in (fontpaths): add fontpaths target,
1647 * make/mutopia-targets.make: add PDF rules.
1649 * make/mutopia-rules.make: add pdf rule.
1651 * buildscripts/mutopia-index.py (list_item): add PDF.
1653 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1655 * make/lilypond-vars.make: set TEXMF for the new font setup.
1657 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1659 * VERSION: 1.5.42 released
1661 * mf/feta-schrift.mf: endless twiddling of Tr.
1663 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1664 endless twiddling with the bulb shape.
1666 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1667 little smaller if there is an accidental.
1669 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1671 * buildscripts/lilypond-profile.sh:
1673 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1674 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1675 Implement new font installation strategy
1677 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1678 the new font installation strategy.
1680 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1683 * input/test/staff-size.ly: Simplified using StaffContainer
1685 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1688 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1690 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1692 * lily/beam.cc (score_stem_lengths): new quanting stuff
1693 (score_forbidden_quants): Second and third beam quant stuff.
1695 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1697 * lily/beam.cc (least_squares): Remember least-squares-dy for
1699 (quantise_interval): Don't quant to dy steeper that
1700 least-squares-dy. Return empty interval if no sane quants found.
1701 (quantise_position): Try quantise_interval until we have
1702 acceptable solution.
1704 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1706 * scm/interface-description.scm (beam-interface): Update.
1708 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1710 * VERSION: 1.5.41 released
1712 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1713 optima serifs on top of t, bottom of r.
1715 * mf/feta-bolletjes.mf: make ledger line rounder.
1717 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1719 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1722 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1724 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1725 well as text pedal indications and a combination of both. All
1726 pedal indications are horizontally aligned on a line spanner.
1728 * lily/text-spanner.cc: Edge-width property added to use in
1729 bracketed piano pedals. Function setup_sustain_pedal added to set
1730 the dimensions of the brackets.
1732 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1733 some of the *Pedal properties tweaked.
1735 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1736 edge-width (TextSpanner) properties.
1738 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1740 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1741 fontified identifiers list.
1743 * input/test/pedal.ly: New pedal features added.
1745 * Documentation/user/refman.itely: New pedal features documented.
1748 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1750 * lily/include/new-beam.hh: Previously new-beam.hh
1751 * lily/beam.cc: Previously new-beam.cc
1752 (least_squares): Bugfix: don't barf on beams with less than two
1753 visible stems (tremolos).
1756 * scm/grob-description.scm (Beam): Junk old beam stuff.
1759 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1763 * mf/feta-eindelijk.mf: new 8th rest.
1765 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1766 stick out of staffline
1768 * scripts/lilypond-book.py: fixes for texi regular expressions.
1770 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1772 * lily/include/new-beam.hh:
1773 * lily/new-beam.cc: New file.
1775 * flower/include/interval.hh:
1776 * flower/include/interval.tcc (delta): New method.
1777 (swap): Now public (previously private).
1779 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1780 1 staff-line-thickness. Sadly, this makes dy quanting problems
1781 (dy quants allowed should depend on actual left y) more visible.
1783 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1785 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1787 * scm/grob-property-description.scm (concaveness-threshold): Add
1788 typecheck and description.
1790 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1791 concaveness-threshold (previously concaveness).
1793 * lily/beam.cc (check_concave): Remove choices and debugging
1794 stuff: use best concaveness calculation.
1795 (quantise_dy): Remove choice. Try to never make a slope steeper
1796 by quantising, but certainly never quantise a slope away.
1797 (check_stem_length_f): Remove choice. In case of lengthening
1798 alowed, always lengthen to ideal length.
1800 * Documentation/index.texi: Fix FAQ url.
1802 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1803 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1805 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1807 * VERSION: 1.5.39 released
1809 * lily/simple-spacer.cc (add_rod): rods take precedence over
1810 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1812 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1814 * lily/note-spacing.cc (get_spacing): only insert space for
1815 accidentals if necessary.
1817 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1819 * lily/spacing-spanner.cc (musical_column_spacing): new
1820 function. Have correct spacing from note to end-of-line as well.
1822 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1824 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1826 * darwin.patch: New file.
1828 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1829 code. Shorten stems by fraction of stems to be shortened.
1831 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1832 of shorten value for boundary cases.
1834 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1835 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1837 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1839 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1841 * scm/grob-description.scm (Beam): Add concaveness. Replace
1842 Beam::cancel_suspect_slope with Beam::check_concave.
1844 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1845 set slope to horizontal if concaveness > Beam.concaveness. This
1846 handles cases that kludgy cancel_suspect_slope was meant to catch
1848 (cancel_suspect_slope): Remove.
1850 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1852 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1853 stemLeftBeamCount and stemRightBeamCount to equal 0.
1856 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1858 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1859 fixed spacing for pref matter, if the next column is musical, and
1862 * lily/note-spacing.cc (stem_dir_correction): Use correct
1863 discretionary for stem-bar spacing.
1865 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1867 * VERSION: 1.5.38 released
1869 * lily/grob.cc (warning): Use cause tracking to give more
1870 meaningful errors from the backend.
1872 * lily/property-iterator.cc (check_grob): Warn if setting grob
1873 property in unknown grob.
1875 * mf/feta-toevallig.mf: brushed stems for natural sign.
1877 * lily/molecule.cc (align_to): don't translate empty molecule.
1878 (this triggers a very subtle bug in time-signature.)
1880 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1882 * lily/spring.cc: remove file.
1884 * input/regression/spacing-stem-bar.ly: new file
1886 * lily/score.cc (run_translator): resurrect point-and-click
1888 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1891 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1892 spacing is now globally determined, using the most common shortest
1893 note. Notes that are shorter are spaced geometrically, and with
1894 expand hints. This makes spacing more even, and measures that have
1895 very short notes won't be that stretched out.
1897 * mf/feta-klef.mf: F-clef fixes, documentation on the
1898 shape. (WARNING: font changed.)
1900 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1902 * lily/simple-spacer.cc (add_columns): support for infinitely
1905 * lily/staff-spacing.cc (get_spacing_params): space after
1906 prefatory matter is fixed.
1908 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1910 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1911 barline following an upstem.
1913 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1914 function from next_notes_correction().
1915 (bar_y_positions): idem.
1917 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1919 * input/regression/break.ly (texidoc): bugfix: escape \ in
1922 * lily/staff-spacing.cc (next_notes_correction): Correct the
1923 spacing of a note following a barline.
1926 2002-03-04 Glen Prideaux
1928 * mf/feta-solfa.mf: Shaped note heads
1930 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1932 * VERSION: 1.5.37 released
1934 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1935 left-align molecule.
1937 * lily/break-align-interface.cc (do_alignment): completely
1938 rewritten. Now it does not use Align_interface anymore, but a
1939 separate routine. Like StaffSpacing, it reads space-alist from the
1940 breakable grobs. This allows you to set spacing using
1942 \property Staff.Clef \override #'space-alist = '(....stuff....)
1944 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1945 to Bar_line. Move files around as well.
1947 * lily/time-signature.cc (time_signature): left align time signatures.
1949 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1950 Corrections of the glyph shape C. Comments added.
1952 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1954 * lily/spacing-spanner.cc: move from third-try.cc; rename
1955 Third_spacing_spanner to Spacing_spanner.
1957 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1958 spacing stuff. Much cleaner now, and we prepare for neat spacing
1959 tricks around bar lines and such.
1961 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1962 variables with themselves. (Ouch.)
1964 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1967 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1971 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1974 * lily/music.cc (ly_get_mus_property): typechecking
1975 (ly_set_mus_property): idem
1976 (ly_make_music): idem
1977 (ly_music_name): idem
1979 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1981 * lily/note-spacing.cc (stem_dir_correction): correction for
1982 same stem notes as well.
1984 * lily/pitch.cc (pitch_transpose): stricter typechecking
1986 * mf/parmesan*mf: magnification fixes.
1988 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1990 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1992 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1993 documenting the font. (Doesn't work for parmesan at the moment)
1995 * Documentation/user/appendices.itely (The Feta font): Add list of
1996 Feta font symbols with names.
1998 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2001 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2003 * lily/translator-group.cc (ly_set_trans_property): typechecking
2004 (ly_get_trans_property): typechecking.
2006 * lily/font-metric.cc (ly_text_dimension): typechecking
2007 (ly_find_glyph_by_name): idem.
2009 * scm/bass-figure.scm (brew-complete-figure): support for
2012 * lily/grob.cc (ly_get_paper_var): new function
2014 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2016 * VERSION (PATCH_LEVEL): 1.5.35 released.
2018 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2019 (bracket): New function.
2021 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2022 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2024 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2027 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2030 * lily/grob.cc (ly_get_grob_property): be anal about types.
2031 (ly_set_grob_property): idem
2033 * lily/figured-bass-engraver.cc (process_music): move molecule
2034 building completely to Scheme
2036 * lily/include/musical-request.hh (class Bass_figure_req): Add
2039 * lily/parser.yy (bass_figure): add support for space figure.
2041 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2043 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2045 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2046 (ly_align_to_x): new function ly-align-to!
2048 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2049 function ly-get-font
2051 * mf/feta-nummer.mf: include normal-space dimension.
2053 * lily/collision.cc (check_meshing_chords): don't merge collisions
2056 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2059 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2061 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2063 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2065 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2068 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2071 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2072 scm/grob-description.scm: added mensural fermata symbol
2074 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2076 * VERSION: 1.5.34 released.
2078 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2080 * lily/staff-symbol-referencer.cc (callback): assume that
2081 staff-position is unset in general.
2083 * input/regression/rest-pitch.ly: new file.
2085 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2088 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2090 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2091 as Scheme option. Run regression test by default with
2092 internal-type-checking.
2094 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2096 * lily/lily-guile.cc (type_check_assignment): changed functions.
2098 * scm/*description*.scm: be anal about typechecks. Some changes
2099 for internal variable names.
2101 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2103 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2105 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2107 * VERSION: 1.5.33 released.
2109 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2110 flare_path everywhere (c-clef, numbers).
2112 * lily/bar-number-engraver.cc (process_music): also print bar
2113 number if measure starts with grace note.
2115 * input/regression/grace-bar-number.ly: new test.
2117 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2119 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2122 * scm/music-functions.scm (voicify-music): split chords into
2123 different voices automatically.
2125 * lily/music.cc (ly_music_list_p): new function
2127 * lily/music-sequence.cc (do_relative_octave): robustification
2129 * scm/music-functions.scm: many utility functions
2131 * lily/music.cc (ly_set_mus_property): add type checks to the
2132 Scheme property assignment.
2134 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2137 * mf/lilypond.map: .map file from Mats' page.
2139 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2141 * Some more parmesan related fixes;
2143 * Custos: varying shape (in particular, stem length), depending on the
2144 vertical position of the custos (on staffline / between stafflines);
2146 * Custos: added grob property "neutral-direction" (same semantics as
2147 with stem); introduced new grob property "neutral-position";
2149 * Time-signature: print a warning when resorting to default layout.
2151 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2153 * lily/translator-group.cc (add_fresh_simple_translator): remove
2154 function; initialize() is called through
2155 Translator_group::initialize().
2157 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2158 for the neighbors of a loose column.
2160 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2161 position loose columns so that they don't collide.
2163 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2165 * VERSION: 1.5.32 released.
2167 * scm/font.scm: remove font-name symbol.
2169 * mf/GNUmakefile: use pktrace for making PFAs
2171 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2173 * lily/rest-collision.cc (do_shift): read direction field from
2174 rest-column in case of note-rest collision. This should fix some
2175 problems with rest collisions.
2177 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2179 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2182 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2183 property. Read pitch directly from #'cause.
2185 * mf/feta-puntje.mf: bugfix
2187 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2189 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2191 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2193 * Documentation/windows/compiling.texi: Update.
2195 * Documentation/index.texi: Add link to orphaned compiling for
2198 * Documentation/footer.html.in: Comment fix.
2200 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2202 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2204 * VERSION: 1.5.31 released
2206 * lily/new-spacing-spanner.cc: remove file.
2208 * lily/third-try.cc (do_measure): only take spacings into account
2209 if they pertain to the column pair under consideration. This fixes
2210 spacing bug when mixing eighths triplets and normal eighths.
2212 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2213 lines don't take up space anymore. Document why in note-head.cc
2216 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2218 * lily/font-interface.cc (get_font): reinstate
2219 #'font-magnification. See input/regression/font-magnification.ly
2220 (get_font): Change the definition of #'font-name grob property.
2222 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2223 that have a #'cause field.
2225 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2227 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2229 * mf/GNUmakefile: remove metapost stuff
2231 * stepmake/aclocal.m4: remove metapost detection stuff.
2233 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2235 * mf/GNUmakefile (FET_FILES):
2236 (FONT_FILES): Include parmesan.
2238 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2241 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2243 * Documentation/user/refman.itely (Paper size): Quote braces.
2245 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2247 * stepmake/aclocal.m4: fixed bison version check to be more
2250 * lily/stem.cc (position_noteheads): fix for cluster chords.
2252 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2254 * python 2.2 support.
2256 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2258 * VERSION: 1.5.30 released
2260 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2262 * Documentation/user/refman.itely (Dynamics): add a note about
2265 * scm/grob-description.scm: add a 'translator-type? object
2266 property, so that \property Foo.Bar =\turnOff doesn't cause
2269 * lily/translator-group.cc (add_fresh_group_translator): make
2270 new add-translator functions to make distinction between fresh and
2271 used group-translators. Fixes problem with scripts on auto-changing voice
2273 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2274 add to Score_performer. Fixes bar checks in MIDI
2276 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2277 heads. Fixes many quirks with ties.
2279 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2280 in the grob property #'cause, instead of using Grob_info.
2282 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2283 staff context, fixing dot alignment on collisions.
2285 * lily/beam-engraver.cc (try_music): remove can't find beam start
2286 warning, so that skipTypesetting won't complain.
2288 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2290 * Documentation/user/refman.itely (Paper size): Documentation fix,
2293 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2295 * scm/grob-description.scm: \breathe: Use feta font comma by default
2297 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2299 * input/template/piano-dynamics.ly (pedal): Simplified
2301 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2303 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2305 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2307 * lilypond-mode.el (LilyPond-command-query): ignore case.
2309 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2311 * VERSION: 1.5.29 released
2313 * all files: change 2001 to 2002 in headers globally
2315 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2316 cheese") font. WARNING: fonts changed.
2318 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
2320 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2322 * mf/*.mf: Added some more vaticana/solesmes style font symbols
2324 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2326 * mf/*.mf: Fixed a few typos in various .mf files
2328 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2330 * mf/: added macro soft_penstroke
2332 softened some glyphs
2333 redrawn triangular noteheads
2335 added classical quarter rest
2337 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2339 * lily/bar.cc: Bugfix: repeat dots when even number of staff
2340 lines and staff_space>=2
2342 * lily/rest.cc: Use default rests when current style glyphs not
2344 \property Staff.Rest \override #'style = #'classical
2346 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
2348 * input/bugs/first-tie.ly: New file.
2350 * input/bugs/spacing-clash.ly: New file.
2352 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
2356 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2358 * lilypond-indent.el: New file providing indentation for
2359 parenthesised blocks of lilypond code in Emacs
2361 * lilypond-font-lock.el: Changes to the syntax table to facilitate
2362 indentation and handle block comments properly. Distinguish
2363 accents from close-brackets in fontification.
2365 * lilypond-mode.el: LilyPond-indent-command set appropriately.
2367 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
2369 * Documentation/windows/installing.texi:
2370 * Documentation/windows/compiling.texi: Include from 1.4.10.
2372 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2374 * input/bugs/first-midi-tie.ly: New file.
2376 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
2378 * VERSION: 1.5.28 released
2380 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2381 illicit beams on [c4 c4] etc.
2383 * lily/bar-check-iterator.cc (Bar_check_iterator): new
2384 file. Make separate iterator for Bar_checks. Bar_check now happen
2385 outside engravers, meaning that you can use them with
2386 skipTypesetting. Associated changes in other files.
2388 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2391 * lily/spacing-spanner.cc (stem_dir_correction): removed function
2393 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2395 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2397 * lily/stem.cc (set_spacing_hints): removed function
2399 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2400 correction for spacing; now take vertical extents of the stem into
2403 * lily/third-try.cc: More hacking to get spacing working.
2405 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2406 sits at staff level and creates note spacing objects. Scrap it
2407 again, and document why.
2409 * lily/include/group-interface.hh: rename functions.
2411 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
2413 * stepmake/stepmake/c++-rules.make:
2414 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2416 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
2418 * make/lilypond-vars.make:
2419 * scripts/ly2dvi.py (setup_environment):
2420 * scripts/lilypond-book.py (setup_environment): Also set tex
2423 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2425 * VERSION: 1.5.27 released.
2427 * Documentation/user/refman.itely (Bar numbers): added bar number
2430 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2433 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
2435 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2436 spread the last few lines all over the last page of a score.
2438 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
2440 * lily/third-try.cc: 3rd try at revising spacing
2441 engine. Not yet finished.
2443 * lily/paper-column.cc (brew_molecule): print debugging marks on a
2446 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2447 collecting past note heads.
2449 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2452 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2453 class. Keep a queue of grobs that are still playing in busyGrobs.
2455 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2456 function. Use busyGrobs to detect playing notes.
2458 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
2460 * Documentation/topdocs/INSTALL.texi: Added note about broken
2461 python-2.1. Updated note for Debian's broken (well, broken for
2462 our use anyway) tex configuration.
2464 * scripts/lilypond-book.py (re_dict): python2.2 fix.
2466 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
2467 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2469 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2470 (But left margin of png's still misses a few pixels. Arg.)
2472 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
2474 * lilypond-mode.el (LilyPond-command-next-midi): Make
2475 possible to kill midi-process (using "C-c C-m").
2477 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
2479 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2480 Convert strings with dimensions to numbers.
2482 * lily/volta-engraver.cc: only make a bracket for the top staff,
2483 as found in stavesFound.
2485 * lily/bar-number-engraver.cc: remove staff administration.
2487 * lily/mark-engraver.cc (acknowledge_grob): remove staff
2488 administration. This breaks support for invisible-staff.
2490 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2491 symbols into stavesFound.
2493 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2494 grobs, and put them into columns.
2496 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2497 Engraver_group_engraver as a potential candidate for ack'ing grobs.
2499 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
2501 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2502 midi section in the Emacs-mode, so it is possible to play certain
2503 score in a multiscore lilypond-file.
2505 2001-12-09 Rune Zedeler <rune@zedeler.dk>
2506 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2507 (FIXME: not accessible from guile)
2509 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2510 better support for Kurt Stone's suggestions.
2511 Removed properties: noResetKey, forgetAccidentals, autoReminders,
2513 Changed property: localKeySignature.
2514 Added properties: extraNatural, autoAccidentals,
2517 (BUGFIX: broken-tie-support destroyed in 1.5.16)
2519 * ly/property-init.ly: added commands
2520 \defaultAccidentals \modernAccidentals \modernCautionaries
2521 \noResetKey \forgetAccidentals
2523 * ly/engraver-init.ly: Correct initialization of new accidentals.
2525 * scm/translator-property-description.scm: The new properties
2528 * input/: Some examples added, some changed.
2530 * Documentation/regression-test.tely: Added quick test of new
2533 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2535 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2538 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2540 * lily/beam.cc (before_line_breaking): Make beams without stems
2541 or with only one stem disappear.
2543 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2545 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2546 files to have standardised HTML bibliography output. Update build
2547 docs to reflect this.
2549 * lily/include/simple-spacer.hh (struct Simple_spacer): add
2550 active_count_, so that we don't have to look for active springs
2553 * scm/interface-description.scm,scm/grob-property-description.scm:
2556 * lily/simple-spacer.cc (solve): Handle forced line breaks
2557 here. Fixes problems when combining linebreaks with non-fitting
2560 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
2562 * 1.4.9.jcn3 forward ports.
2564 * Really included .cvsignore.
2566 * Included Han-Wen's uu1 windows fixes.
2568 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2570 * Added Cygwin setup.hint
2572 * Removed tex, python wrappers and postinstalls to go with Cywgin's
2573 tetex/texmf, python installations.
2575 * Updated cygwin installer.
2577 * ly2dvi: Don't accept filenames with spaces (+ fix).
2579 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
2581 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2583 * lily/translator-def.cc: Remove manual symbol caching.
2585 * lily/script-column.cc (before_line_breaking): robustness check:
2586 don't crash if no direction set.
2588 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2590 * scripts/pmx2ly.py (Parser.parse_header): more generic header
2594 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
2596 * lily/note-head.cc (head_extent): added to compute width without
2597 ledger lines. By default, ledger lines take up width now.
2599 * input/regression/fingering.ly: demonstrate auto fingering.
2600 Horizontal placement is still buggy.
2602 * lily/fingering-engraver.cc (class Fingering_engraver):
2603 added. Provides support for horizontal fingering scripts
2605 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2607 * lily/side-position-interface.cc (add_staff_support): add staff
2608 only for Y-axis side positions.
2610 * lily/parser.yy (request_chord): Fix mem leak.
2612 * lily/musical-request.cc (transpose): moved to Music::transpose()
2614 * lily/include/grob-info.hh: Change music pointer to SCM, so we
2615 can store grobs as grob-creation cause as well.
2617 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2618 handle when adding. Use precomputed symbols throughout lily.
2620 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2621 track of spacing issues.
2623 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2624 to keep track of staff spacing
2626 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2628 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2629 code clean from conditionals and have a concentrated sets of
2630 compatibility fixes for old guile versions.
2632 * Fixes for guile 1.4, including embedded ps.
2634 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2636 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2637 well for markup texts.
2639 * lily/musical-request.cc (length_mom): kludge for null pointer.
2641 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2643 * scm/lily.scm (sign): bugfix
2645 * CHANGES: Change log instated.
2647 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.