1 2002-06-26 Jan Nieuwenhuizen <janneke@gnu.org>
3 * input/test/ambitus.ly:
4 * lily/ambitus-engraver.cc:
6 * lily/include/ambitus.hh: New file.
8 * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
10 2002-06-25 Juergen Reuter <reuter@ipd.uka.de>
12 * input/test/ambitus.ly, lily/ambitus-engraver.cc,
13 lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
14 scm/basic-properties.scm, scm/grob-description.scm,
15 scm/grob-property-description.scm: Add support for ambitus.
17 2002-06-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
19 * lily/text-spanner.cc: add some props to interface (patch
22 2002-06-24 Jan Nieuwenhuizen <janneke@gnu.org>
24 * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
25 dereference valid Grob.
27 * configure.in: Quoting fixes.
29 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
31 * lily/grob-scheme.cc: new file
33 * lily/break-substitution.cc: split up break substitution
34 functionality, and make a special constant stack-space version for
35 lists of grobs. This should fix the problems of lily in
36 combination with pthreads/qthreads.
38 * lily/grob.cc (mark_smob): bugfix: mark X parent too.
40 2002-06-23 Chris Jackson <chris@fluffhouse.org.uk>
42 * lily/text-spanner.cc (setup_pedal_bracket):
43 * lily/piano-pedal-engraver.cc (create_bracket_grobs):
44 Fix the lengths of mixed-style piano pedal brackets.
46 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
48 * Documentation/user/tutorial.itely (First steps): Add missing
51 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
52 about guile --with-threads. Hopefully this issue can be resolved
53 rsn, but maybe we should even add warnings for the standard Debian
56 * configure.in: Warn if guile is configured to use threads. Maybe
57 we should make this an error (ie, add to REQUIRED list?)
59 * config.make.in (PACKAGE_NAME):
60 (PACKAGE, package): Don't hardcode.
62 * VERSION (PACKAGE_NAME): Typo fix.
64 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
66 * input/tutorial/brahms-*.ly: new tutorial files.
68 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
70 * scm/script.scm (default-script-alist): fermata is up.
72 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
73 dynamic line spanner when there is no crescendo to connect.
75 * lily/tie.cc (get_control_points): add test to avoid flat ties.
77 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
79 * lily/note-collision.cc (check_meshing_chords): don't crash if no
82 * scm/music-functions.scm (toplevel-music-functions): new
83 definition. Functions to apply automatically. Removes the need for
84 explicitly doing \apply #voicify-music
86 * lily/grob.cc (do_break_substitution): rename function, use
87 global var for criterion argument. Reduces stack usage a little.
89 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
91 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
92 visibility-lambda to break-visibility
94 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
96 * input/bugs/part-combiner.ly: New file.
98 * lily/include/spacing-interface.hh: New file.
100 * lily/include/spaceable-element.hh: Remove.
102 * input/test/script-priority.ly: New file.
104 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
106 * lily/system.cc (output_lines): kill grobs that are only for spacing.
108 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
110 * lily/fingering-engraver.cc (make_script):
111 * lily/script-engraver.cc (process_music):
112 * lily/text-engraver.cc:
113 (process_acknowledged_grobs): Remove hard coded script-priority.
115 * flower/warn.cc: Cleanup.
117 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
120 * aclocal.m4: Regenerate.
122 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
124 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
125 * lily/include/lily-guile.hh: Only include config.h if necessary.
127 * Changelog: cvs changes ml archive test #8.
129 * lily/slur-engraver.cc: Layout fix.
131 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
133 * ly/engraver-init.ly (RhythmicStaffContext): add
134 Dot_column_engraver, resurrect barlines
136 * VERSION: 1.5.62 released.
138 * lily/engraver-group-engraver.cc (do_announces): rename
139 create_grobs () to process_acknowledged_grobs().
141 * lily/grob.cc (programming_error): add programming_error with
144 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
145 fail if a beam doesn't have stems.
147 * lily/engraver-group-engraver.cc (do_announces): scary change in
148 calling convention of create_grobs(): no create_grobs() call
149 before acknowledge_grobs().
151 * lily/sequential-music-iterator.cc (skip): add support for grace
154 * lily/music.cc (Music): fix very subtle and nasty memory
155 corruption bug. Typical symptom: "programming_error: Rhythmic_req
158 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
160 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
162 * ly/engraver-init.ly (RhythmicStaffContext): add
166 * lily/parser.yy: various protection fixes. Less objects are now
169 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
171 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
174 * Documentation/windows/zlily-profile.sh:
175 * Documentation/windows/post-lilypond.sh: Assume normal
176 prefix=/usr for lilypond.
178 * lily/musical-request.cc (length_mom): Display origin with error.
180 * input/test/duration-check.ly: New file.
182 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
185 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
186 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
189 * autogen.sh: Regenerate.
191 * Documentation/topdocs/INSTALL.texi:
193 * stepmake/configure.in:
194 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
195 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
196 ./configure once again requires autoconf == 2.13.
198 * stepmake/autogen.sh: Check for autoconf == 2.13.
200 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
202 * lily/parser.yy (open_request_parens): add input locations to
203 open and close parens.
205 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
207 * lily/tuplet-bracket.cc:
208 * lily/text-spanner.cc:
209 * lily/piano-pedal-engraver.cc:
210 * scm/grob-description.scm:
211 * scm/grob-property-description.scm: Changed the
212 edge-width property of brackets to edge-widen. Changed the sign of
213 the left element of edge-widen so a pair of equal numbers produces
214 a symmetrical bracket.
216 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
218 * ly/espanol.ly: added.
220 * lily/simple-spacer.cc (solve): remove assert.
222 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
224 * lily/forbid-break-engraver.cc (class
225 Forbid_line_break_engraver): new engraver: forbid linebreaks
228 * lily/spacing-spanner.cc (loose_column): add another check: don't
229 move around bar lines as loose columns.
231 * scm/basic-properties.scm (default-break-barline): add pre-break
234 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
236 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
237 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
239 * scripts/lilypond-book.py (environment): Bugfix: update to new
240 TEXMF scheme, from ly2dvi.
242 * lily/lookup.cc (slur): Invoke bezier-bow.
244 * scm/tex.scm (bezier-bow):
245 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
246 (Previously named bezier-sandwich).
248 * scm/tex.scm (bezier-sandwich):
249 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
251 * make/lilypond.mandrake.spec.in (post):
252 * make/lilypond.suse.spec.in (post):
253 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
255 * tex/lilyponddefs.tex: Uncomment feta character support.
257 * Documentation/user/refman.itely (Pitches): Add espanol.ly
260 * ly/catalan.ly: Add comment about (spanish) -s suffix.
262 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
265 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
267 * GNUmakefile.in (short-examples):
268 (long-examples): Bugfix for --srcdir build.
269 (top-web): Rewrite weblist find command.
271 * stepmake/bin/config.sub:
272 * stepmake/bin/config.guess: Update from latest autotools.
275 * autogen.sh: Regenerate.
278 * stepmake/configure.in:
279 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
280 requires autoconf >= 2.50.
282 * stepmake/autogen.sh: Check for autoconf >= 2.50.
284 * Documentation/user/refman.itely: Bugfix for tablature example.
286 * Documentation/windows/compiling.texi: Update for new and
289 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
291 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
292 introduce base-shortest-duration
294 * lily/parser.yy (music_output_def_body): don't crash when \tempo
295 in unexpected \midi{} is found.
297 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
299 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
300 the use of make/ly.make for use as an external makefile. Probably
301 noone except for myself ever used this anyway.
303 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
304 to new $datadir convention (<package>/<version>).
306 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
308 * VERSION: 1.5.61 released
310 * Document/user/refman.itely: tablature doc and code updates by
311 Jean-Baptiste Lamy <jiba@tuxfamily.org>
313 * input/template/piano-dynamics.ly: bugfixes.
315 * lily/key-engraver.cc (try_music): read request only once. Don't
316 overwrite lastKeySignature. Call create_key() only once. This
317 fixes a bug with multiple equal key changes on polyphonic staffs.
319 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
321 * scm/grob-description.scm: Add side-position-interface to TextSpanner
323 * scm/grob-property-description.scm: Document the trill line type.
325 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
327 * stepmake/stepmake/generic-vars.make:
328 * make/lilypond-vars.make:
329 * GNUmakefile.in (builddir-setup): New setup for builddir run.
330 Fixes LilyPond run from builddir for --srcdir builds.
332 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
335 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
337 * scm/grob-description.scm (all-grob-descriptions): add
338 font-family to RehearsalMark
340 * scm/drums.scm: move over definitions from drum-pitch-init.ly
342 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
345 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
347 * lilypond-mode.el: Propose saving before applying a command:
348 for saved buffer set default command to LilyPond.
350 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
352 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
355 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
357 * Documentation/windows/lilypond-doc.hint: New file.
359 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
360 Bugfixes for --srcdir html-doc build.
362 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
363 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
365 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
367 * ly/script-init.ly (pralldown): add some scripts.
369 * Documentation/user/refman.itely: many edits.
371 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
373 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
374 direction, this breaks staffline avoidance of the bracket when
377 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
379 * scripts/midi2ly.py: Fix handling of -o
381 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
383 * lily/molecule.cc (translate): set max distance to 100 cm.
385 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
387 * VERSION: 1.5.60 released
389 * lily/beam.cc: tremolo fix.
391 * scripts/convert-ly.py: add tuplet-X-visibility rules.
392 add VerticalExtent -> verticalExtent rules.
394 * lily/axis-group-engraver.cc: consistent case for
395 XxxxVerticalExtent properties.
397 * Documentation/user/refman.itely (Tuplets): update
398 tuplet-X-visibility properties.
400 * input/test/defaultbars.ly: Corrected (thanks Mats)
402 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
404 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
406 * buildscripts/lilypond-profile.sh: override settings if
407 LILYPONDPREFIX is set.
409 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
411 * scripts/ly2dvi.py (non_path_environment): Fix typo
413 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
415 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
417 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
419 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
421 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
422 beam-engraver: use different engraver so we can mix normal and
425 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
427 * lily/beam.cc (shift_region_to_valid): Try to shift positions
428 after slope-damping and concaveness check, so that short-stems are
431 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
433 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
435 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
437 * VERSION: 1.5.59 released
439 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
440 notice that missing features are exercise for user.
442 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
444 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
445 (but alas, not partly precomputed) value for current_y when
446 calculating stem length demerits.
447 (calc_stem_y): Temporary precomputed factors fix.
449 * lily/stem.cc (calc_stem_info): Take multiplicity into account
452 * input/bugs/melisma-tie-rest.ly: New file.
454 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
456 * lily/stem.cc (calc_stem_info): remove min_y member, rename
457 stuff. Remove kneeing stuff.
459 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
462 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
468 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
469 patch-level of version in minor-version string. Arg.
471 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
473 * ly/engraver-init.ly (TabStaffContext):
474 enable TabStaff by default.
476 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
478 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
480 * config.hh.in: Remove duplicate DIR_DATADIR entry.
482 * aclocal.m4: Regenerate.
484 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
486 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
488 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
490 * lilypond-mode.el: Write notes with fewer keystrokes trough a
491 "Quick notes"-interface.
493 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
495 * input/regression/non-empty-text.ly: Update example with outdated
498 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
500 * scripts/convert-ly.py: add textNonEmpty rule
502 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
504 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
506 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
507 using translate-robust add_molecule instead of add_at_edge.
508 Bugfix for #(lines (finger "" "1")).
510 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
512 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
515 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
519 * Documentation/user/refman.itely: Bugfix: add node Repeats and
520 MIDI. Regenerate menu. Fix @end example.
522 * lily/accidental.cc: Add cautionary-style to interface.
524 * mf/feta-beugel.mf (code): use autometric macros for braces.
525 This fixes input/bugs/braces.
527 * lily/afm.cc (count): return numOfChars, not size of array
530 * lily/script.cc (before_line_breaking): postpone setting the
531 X-parent of vertical scripts. This fixes the case of scripts on
534 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
536 * scm/grob-description.scm: fix alignment of barnumber: make sure
537 it doesn't hit the G-clef.
539 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
540 startGraceMusic not startGraceContext).
542 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
544 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
547 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
549 * lily/accidental-engraver.cc: remove old accidental engraver,
550 move new one to accidental-engraver.cc.
552 * lily/local-key-item.cc: remove file
554 * lily/include/local-key-item.hh: remove file
556 * scripts/ly2dvi.py (make_preview): add --preview-resolution
559 * lily/accidental.cc (brew_molecule): support for cautionary
562 * lily/note-head.cc (internal_brew_molecule): warn if note head
565 * lily/time-signature.cc (special_time_signature): remove warning
566 about time signature.
568 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
569 reverse springs by limiting fixed-note space.
571 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
573 * stepmake/aclocal.m4: Bugfix: complain if program not found.
575 * scripts/update-lily.py (next_version, prev_version, diff_name):
576 New function. Patches now named name-prev-latest.diff.gz.
577 Bugfix: import shutil.
579 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
581 * input/tutorial/sammartini.ly: fix and document autochange
584 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
585 does produce .pdftex files.
587 * lily/note-collision.cc (check_meshing_chords): move file from
588 collision.cc, implement merged note heads (there you go, Drarn :-)
590 * input/regression/collision-heads.ly: new file
592 * VERSION: 1.5.57 released.
594 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
596 * mf/parmesan-heads.mf, scm/grob-description.scm,
597 scm/grob-property-description.scm, scm/interface-description,
598 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
599 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
600 lily/include/ligature-engraver.hh,
601 lily/include/ligature-bracket.hh, lily/parser.yy,
602 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
603 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
604 lily/ligature-head.cc, lily/ligature-engraver.cc,
605 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
606 implemented white mensural ligatures (still with a big list of
610 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
612 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
613 Documentation/user/internals.itely.
615 * lily/function-documentation.cc: new file. Infrastructure for
616 self documenting Scheme functions.
618 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
620 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
622 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
624 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
625 and * (as in "([^>]*)?")
627 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
629 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
630 Add info about CVS. Stable/development are currently 1.4/1.5,
631 both at lilypond.org.
633 * autogen.sh: Generate.
635 * stepmake/configure:
636 * configure: Regenerate.
638 * stepmake/stepmake/automatically-generated.sub.make: Keep
641 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
643 * stepmake/stepmake/generic-targets.make (configure): Generate
646 * GNUmakefile.in (SCRIPTS):
647 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
649 * stepmake/autogen.sh: New file.
651 * configure: Check for g++ >= 2.95.
653 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
654 c/c++ version checking.
656 * flower/include/string.hh: Typo fix.
658 * lily/include/midi-item.hh: Remove stray i.
660 * Documentation/windows/GNUmakefile: Avoid collapsed directory
663 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
664 constructs '//' from arguments.
666 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
668 * scm/lily.scm (ly-load): show SCM filenames if verbose.
670 * lily/lily-guile.cc (init_functions): add ly-verbose function.
672 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
674 * flower/include/{pointer,tuple}*: removed.
676 * VERSION: released 1.5.56
678 * scm/music-functions.scm (check-start-chords): function to check
679 for chords without \context. Apply automatically from parser.
681 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
683 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
686 * scm/output-lib.scm: fix ez notation stems.
688 * lily/paper-outputter.cc: various fixes to speed up compilation.
690 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
692 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
694 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
696 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
697 determine latex input.
699 * stepmake/bin/install-sh: Include latest from libtool.
701 * stepmake/configure:
702 * configure: Regenerate.
704 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
705 (USER_CFLAGS): Bugfix, include CPPFLAGS.
707 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
709 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
710 REQUIRED programs and version. Try to continue configuring, list
711 missing programs at the end, but don't generate a GNUmakefile if
712 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
713 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
714 fancy for some older systems.
716 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
718 * lily/score-engraver.cc (typeset_all): sanity check for items
719 that are Y parent to spanner.
721 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
724 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
726 * lily/*.cc: remove as many iostream use as possible.
728 * flower/ : remove text-db, text-stream, data-file.
730 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
732 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
733 (completize_preamble): don't barf if no preamble present.
734 (do_file): allow extensions on --output
736 * scripts/ly2dvi.py (make_preview): make automatic preview of
737 first system. Small cleanups.
739 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
741 * scripts/lilypond-book.py (make_pixmap): output png directly.
743 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
746 * lily/parser.yy (My_lily_parser): comment out code. (Causes
747 problems with recent bison releases).
749 * make/lilypond.redhat.spec.in: add pfa fonts to X.
751 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
753 * lilypond-font-lock.el: Fixes the order of the note name list.
755 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
757 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
758 capability, --verbose option, rlimit hack.
760 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
762 * lily/piano-pedal-engraver.cc: cleanups.
764 * lily/accidental.cc (after_line_breaking): add break tie
767 * lily/text-engraver.cc (try_music): don't typeset fingerings
769 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
771 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
773 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
775 * lily/*.cc: change gh_str02scm() to ly_str02scm().
777 * lily/spacing-spanner.cc (note_spacing): Bound
778 shortest-playing-length by the distance to next note. This should
779 fix chord tremolo spacing.
781 * VERSION: 1.5.55 released
783 * lily/stem.cc (off_callback): invisible stem over whole note is
784 centered on note now.
786 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
787 stem-tremolo is stem now.
789 * input/mozart-hrn*.ly: many corrections.
791 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
792 support for dynamic scripts.
794 * lily/accidental-placement.cc (position_accidentals): check for
795 collisions as well: should avoid those heads too.
797 * lily/beam.cc (check_concave): allow undefined gap and
798 threshold. Change the meaning of threshold/gap == 0.0.
799 (check_concave): skip Stolba concaveness check if we have a knee
802 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
804 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
805 tremolos of dotted duration.
807 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
809 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
810 downstroke again. Sigh.
812 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
815 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
817 * lily/slur.cc (add_column): allow slur over rest.
819 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
821 * lily/beam.cc: move scoring constants out of code
823 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
825 * mf/feta-nummer.mf: scalability fixes.
827 * mf/feta-nummer-code.mf: fixes for 5, 8.
829 * mf/feta-klef.mf: G clef fixes.
831 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
833 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
835 * scripts/lilypond-book.py: %Newline, rather than glue macros
836 after \end{verbatim}.
838 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
840 * Documentation/user/lilypond-book.itely:
841 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
844 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
846 * scm/grob-property-description.scm (beam-space): Junk.
848 * lily/beam.cc (space_function): New method.
849 (get_interbeam): Call space-function.
851 * scm/grob-description.scm (Beam): Initialize space-function with
852 Beam::space_function.
854 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
855 Beam.space-function. Don't quantise grace beams.
857 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
859 * VERSION: 1.5.54 released
861 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
864 * Documentation/index.texi: add PDF links.
866 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
868 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
869 compare #'glyph as strings.
871 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
873 * scripts/ly2dvi.py (setup_environment): fix by Mats.
875 * lily/stem.cc (head_count): Change function name. Change property
876 to #'note-heads i.s.o. #'heads.
877 (position_noteheads): Kern noteheads for invisible stems.
878 (before_line_breaking): Do position_noteheads() for whole note
881 * lily/accidental-placement.cc (position_accidentals): First
882 determine refpoints, only then determine extents.
884 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
886 * lily/accidental-placement.cc (position_accidentals): use all
887 note heads for note head-skyline.
889 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
891 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
893 * Documentation/windows/setup.hint (requires): Add gsview dependency.
895 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
897 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
899 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
901 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
903 * mf/feta-schrift.mf: lighter staccato.
905 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
907 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
909 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
911 * VERSION: 1.5.53 released
913 * scm/lily.scm (ly-load): use primitive-load for loading.
915 * lily/misc.cc: remove quantise_iv()
917 * lily/*.cc: pass read-only arrays by reference.
919 * lily/grob.cc (common_refpoint_of_array): new function. Try to
920 use common_refpoint_of_{array, list} when possible.
922 * lily/include/accidental-placement.hh: new file.
924 * lily/accidental-placement.cc (alignment_callback): position
925 accidentals in a better way.
927 * lily/skyline.cc: new file. Compute distances for collections of
930 * lily/include/skyline.hh: new file
932 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
934 * lily/accidental.cc (class Accidental_interface): grob for a
937 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
940 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
941 together with new accidental-interface.
943 * lily/include/*.hh: remove spurious set_interface() decls.
945 * lily/key-signature-interface.cc (brew_molecule): add padding for
946 natural signs. Make natural typesetting like the sharp.
949 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
950 is now slightly curved, not straight.
953 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
955 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
957 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
958 more strictly. Use more clever regular expressions. Commented regexps.
960 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
962 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
964 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
966 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
967 to control width of staff symbol in ragged-right mode (by request
970 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
971 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
972 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
973 added support for ligature brackets (needed when transcribing
976 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
978 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
979 Fontify notes more strictly.
981 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
983 * mf/feta-din-code.mf: dynamic z sign.
985 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
987 * lilypond-mode.el: Prevent recoloring strings and comments.
989 * lilypond-font-lock.el: Handle block comments: block comments
990 can have also ordinary comments inside.
992 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
994 * lily/stem.cc (get_default_dir): set direction to CENTER if
995 invisible. Various other fixes to deal with invisible stems and
996 stem-direction == CENTER.
998 * lily/rest-collision.cc (do_shift): take direction from note if
1001 * input/regression/tie-grace.ly: new file.
1003 * lily/tie-engraver.cc (create_grobs): fix tied graces.
1005 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1006 knee correction. Fixes tight spacing for knees.
1008 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1010 * VERSION: 1.5.52 released
1012 * lily/*.cc: add some undocced properties.
1013 scm/grob-description.scm: idem.
1015 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
1017 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1018 multi-measure rests like "R1 *4" and scheme (typically has '#'
1019 in the beginning). Small fixes. Add few reserved words.
1021 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
1023 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1026 * Documentation/windows/installing.texi: Suggest gswin32c (console
1027 program) for getting the version. Layout fixes.
1029 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
1031 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1032 windows viewing commands, remove silly comment about Yap.
1034 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1036 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1037 configure to find kpathsea on for example Slackware 8.0.
1039 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1041 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1042 by default: avoid "1" over single bar rests.
1044 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1045 and correct the handling of geometry options.
1047 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1049 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1050 implementation for Class::has_interface automatically. Junk all
1051 other implementations.
1053 * lily/grob.cc (internal_get_grob_property): also typecheck
1054 property reads. Catches even more undocced properties. Bugfixing
1055 left for the uninspired masses.
1057 * lily/beam.cc: remove end_after_line_breaking().
1059 * lily/grob.cc (calculate_dependencies): remove list support for
1062 * lily/font-size-engraver.cc: only do font-interface.
1064 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1066 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1069 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1071 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1072 brackets using arpeggio requests.
1074 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1075 molecule-callback to use for drawing the brackets.
1077 * Documentation/user/refman.itely:
1078 * input/test/chord-bracket.ly: Chord brackets documented
1080 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1082 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1084 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1086 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1088 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1089 direction tuplets on beams.
1091 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1093 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1095 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1097 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1098 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1099 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1100 submenu to "LilyPond"-menu.
1102 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1103 an interface to play midi.
1105 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1107 * input/regression/script-stack-order.ly: new file.
1109 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1111 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1113 * mf/feta-din-code.mf: kerning for dynamics.
1115 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1117 * input/regression/dynamics-glyphs.ly: new file
1119 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1121 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1122 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1124 * Documentation/windows/gs-profile.sh:
1125 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1126 moved to gs/gsview windows packages.
1128 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1130 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1131 finding out the duration. Fixes chord tremolo bug.
1133 * lily/completion-note-heads-engraver.cc (process_music): Set
1134 correct duration for all requests of the broken notes.
1136 * input/regression/completion-heads.ly: Added example of
1137 Completion_heads_engraver.
1139 * lilypond-mode.el: Added "2Midi" command
1141 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1143 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1144 edge-width, edge-height and shorten-pair properties for tuplet
1147 * lilypond-indent.el: Support for blinking of matching parentheses
1149 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1151 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1152 cleanups of piano pedal brackets.
1154 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1156 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1158 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1160 * mf/feta-new-code.mf: new dynamic f sign.
1163 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1165 * mf/feta-new-code.mf: new dynamic p sign.
1167 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1169 * lily/note-spacing.cc (stem_dir_correction): only do
1170 beam-correction if a beam is there.
1172 * lily/stem.cc (duration_log): change from flag_i (); better
1174 (get_default_stem_end_position): fix dot/flag collision code.
1176 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1178 * VERSION: release 1.5.50
1180 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1181 unit spring here. Reduces number of warning messages.
1183 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1185 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1187 * scm/generic-property.scm: remove generic-property, property-engraver
1189 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1191 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1193 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1195 * scm/*.scm: remove volta, hairpin and tuplet functions.
1197 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1198 note column for notes/stems/dots that already have parents. Fixes
1199 nested grace contexts.
1201 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1203 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1204 get too curved slurs.
1206 * scm/slur.scm (default-slur-extremity-offset-alist)
1207 (default-phrasing-slur-extremity-offset-alist): Move slur
1208 attachments further away from note-head, vertically. Also, leave
1209 a horizontal gap between slur and stem end.
1211 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1213 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1215 * input/regression/spacing-grace-duration.ly: new file
1217 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1218 for shortest durations.
1220 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1221 extent of the mm rest.
1223 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1226 * lily/tuplet-bracket.cc (make_bracket): new function
1227 (get_x_offset): new function; make tuplet brackets align on stems
1228 if stem has same direction.
1229 (parallel_beam): be anal about matching bracket to tuplet.
1231 * lily/lookup.cc (line): new function Lookup::line().
1233 * scm/tex.scm (dashed-line): change -line to -system in names.
1235 * lily/box.cc (add_point): new function.
1237 * flower/include/interval.hh: new function add_point ().
1238 new function widen()
1240 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1242 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1244 * scm/grob-property-description.scm (number-threshold): Add
1247 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1248 rest if #measures > number-threshold. Use padding (well, fake
1251 * scm/font.scm (make-style-sheet): New styles: mark-number,
1253 (paper20-style-sheet-alist): Add bigger bold fonts.
1255 * lily/mark-engraver.cc (process_music): Use style mark-number or
1258 * .cvsignore: Ignore all kinds of lilypond input and output.
1260 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1262 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1264 * lily/staff-symbol.cc (brew_molecule): make line thickness
1267 * lily/*.cc: replace stafflinethickness by linethickness.
1269 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1271 * input/regression/beam-concave.ly: Add to-be-considered-concave
1274 * lily/beam.cc (check_concave): Add check for large gap between an
1275 inner notehead and the line through outer noteheads.
1277 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1278 value 2.0 staff-space.
1280 * scm/grob-property-description.scm (concaveness-gap): Add
1283 * input/mozart-hrn3-allegro.ly: Fix typo.
1285 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1287 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1288 lily/note-head-engraver: improved implementation of roundfilledbox
1289 (according to Han-Wen's request)
1291 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1292 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1293 lily/simple-spacer.cc: ragged-right alignment
1295 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1297 * input/regression/spacing-note-flags.ly: new file
1299 * input/regression/spacing-rest.ly: new file
1301 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1303 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1304 all grace notes tight (not only the column directly following a
1307 * scm/grob-description.scm (all-grob-descriptions): don't make
1308 mm-rests larger than normal.
1310 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1311 curved. Remove white space at the right of flags.
1313 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1315 * ports/ports.make: Bugfix: ignore CVS directories.
1317 * stepmake/.cvsignore: New file.
1319 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
1321 * lily/note-spacing.cc (stem_dir_correction): don't correct when
1322 there is a flag on the stem.
1324 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1326 * scm/grob-property-description.scm (measure-length):
1327 measure-length grob property.
1329 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1330 better spacing for breakable columns when they're juxtaposed: use
1331 measure length if applicable
1333 * lily/timing-engraver.cc (start_translation_timestep): store
1334 measure length in breakable column at start of measure.
1336 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1338 * ROADMAP: Add description for ports dir, to check email upon
1341 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
1343 * VERSION: 1.5.48 released
1345 * lily/multi-measure-rest.cc (symbol_molecule): split off from
1347 (set_spacing_rods): Use symbol_molecule() to determine minimum
1349 (church_rest): split off from brew_molecule()
1350 (big_rest): split off from brew_molecule(). Construct using
1353 * mf/feta-eindelijk.mf: junk multi measure rest.
1355 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
1357 * lily/multi-measure-rest.cc (add_column): remove columns property.
1359 * lily/dynamic-engraver.cc (process_music): add more verbose warning
1361 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1364 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
1366 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1367 keywords covered, dropped some non-keywords, include R- and 128-notes
1369 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1371 * Code clean-up: Junk multiple implementations of ledger line
1372 creation in note_head, custos, and porrectus. This is important
1373 since there soon will be some more applications of ledger lines to
1374 come (e.g. ambitus engraver).
1376 * Make thickness of ledger lines adjustable. This is essential
1377 for mensural notation.
1379 * Fix some bugs in the current ledger_line implementation, most
1380 notably that of the horizontal extent of ledger lines which equals
1381 at least the extent of the metafont ledger_line character, and
1382 which grows(!) if the desired extent shrinks below this limit.
1384 * roundfilledbox: variable blotdiameter
1386 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
1388 * VERSION: 1.5.47 released
1390 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1392 * lily/porrectus.cc: change line-thickness to thickness, change
1393 stem-direction to direction.
1395 * scm/backend-documentation-lib.scm (check-dangling-properties):
1396 Automatically detect doc'ed properties that are not in an interface
1398 * scm/grob-property-description.scm: property cleanup. Remove many
1399 paper-column props that are non-existent.
1401 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1402 the grob has a molecule-callback.
1404 * lily/*.cc: remove many set_interface() calls, and their
1407 * input/regression/spacing-knee.ly: new file
1409 * input/regression/spacing-clef-first-note.ly: new file
1411 * lily/staff-spacing.cc (get_spacing_params): different spacing
1412 for pref matter to note at start of line, halfway during line.
1414 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1415 correction only if stems have same direction (i.e. not for
1416 stem-clef combination).
1417 (stem_dir_correction): maximal correction for knees.
1419 * lily/*.cc: many updates to interface descriptions.
1421 * lily/grob.cc (internal_set_grob_property): add interface check
1422 for every set_grob_property call
1424 * lily/*.cc: document interface stuff in C++
1426 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
1428 * lily/volta-bracket.cc: naming: change volta spanner to
1431 * input/bugs/*.ly: cleanup, remove lots of files.
1433 * buildscripts/mf-to-table.py (write_ps_encoding): generate
1434 .encoding file. WARNING: upgrade to pktrace 1.0.3
1436 * mf/feta-toevallig.mf: change PS name for parentheses.
1438 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1440 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1443 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
1445 * lily/scope.cc: remove file .
1447 * lily/include/scope.hh: remove file. Remove Scope class
1451 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1452 score_forbidden_quants): ): take out of SCM, pass parameters so
1453 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1455 (calc_stem_y): robustness: take care of last_visible_stem == 0.
1458 * lily/lily-guile.cc (ly_unit): return internal unit.
1460 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
1462 * lily/paper-outputter.cc (output_version): output internal unit
1463 from Paper_outputter
1465 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1467 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1469 * scripts/ly2dvi.py: clean up old .*pk font caching code.
1471 * scm/ps.scm: Use uppercase postscript font names for the standard
1474 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1475 Add all available TeX Type1 fonts, including Feta, to the
1476 Ghostscript font path.
1478 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1479 version (affects the FontName) in lilypond.map.
1481 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1482 documentation file to fetaNNlist.ly to avoid name collisions between
1483 lilypond generated .tex file and font .tex macros file.
1486 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
1488 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1489 made mensural longa and (semi-)brevis leaner
1491 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1493 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1494 clean-up: moved bezier shape and slope from porrectus to lookup
1496 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1497 and /usr/share/texmf/fonts
1499 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1501 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
1503 * lily/text-spanner.cc (brew_molecule): add #'thickness
1504 (brew_molecule): add corrections for thickness in molecule padding.
1506 * lily/line-spanner.cc (line_atom): make function private
1508 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1509 discover bounding box. This solves the cropping problem.
1511 * lily/bar-check-iterator.cc (process): Only resynchronize bar
1512 check when it fails. This fixes the combination of grace notes
1515 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
1517 * lily/repeated-music.cc (minimum_start): new Scheme callable function
1518 (first_start): new Scheme callable. This will fix repeated music
1519 starting with grace notes.
1521 * lily/music.cc (start_mom): check start-moment-function grob property.
1523 * VERSION: 1.5.45 released
1525 * input/regression/system-extents.ly: new regression test. Test
1528 * lily/system.cc: rename LineOfScore into System
1530 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1532 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1533 (ly_get_extent): new Scheme function ly-get-extent
1535 * ps/lilyponddefs.ps: use output-scale for line-x
1538 * scm/ps.scm (font-load-command):
1541 2002-03-20 Rune Zedeler <rune@zedeler.dk>
1543 * lily/beaming-info.cc: Stupid typo fixed
1545 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1546 support for cross-context auto-accidentals.
1547 Now the engraver can stay in Staff-context and see other contexts
1549 Changed properties: autoAccidentals, autoCautionaries
1551 * lily/translator-group.cc (set_children_property):
1552 Function added recursively setting the same property (deep_copied)
1553 for all children of a Translator_group.
1555 * ly/property-init.ly: added commands
1556 \pianoAccidentals \voiceAccidentals
1557 \modernVoiceAccidentals \modernVoiceCautionaries
1559 * ly/engraver-init.ly: Correct initialization of new accidentals.
1561 * scm/translator-property-description.scm: Updated
1563 * input/regression/accidental-voice.ly: Added
1565 * Documentation/regression-test.tely: Added new test
1567 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1569 * VERSION: 1.5.44 released
1571 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1573 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1575 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1578 * tex/feta*.tex: remove.
1580 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1581 all software dealing with it.
1583 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
1585 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1586 (this fixes pdf output). Drop awk dependency.
1588 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1589 dimensions (linewidth) are in mm.
1591 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1593 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1595 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1597 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
1599 * VERSION: 1.5.43 released
1601 * scm/beam.scm (beam-dir-majority-median): if majority is
1602 undecided, use median. Removes a forced dir in sarabande.
1604 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1606 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1608 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1609 widths, heights and shortens are now customisable properties.
1611 * scm/grob-description.scm, scm/grob-property-description.scm: New
1612 properties added to PianoPedalBracket, unnecessary
1613 Y-offset-callbacks removed from *Pedal, undocumented properties
1616 * Documentation/user/refman.itely: Piano pedal updates.
1618 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
1620 * scm/grob-property-description.scm:
1621 * scm/interface-description.scm: Remove old stuff.
1623 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1624 0.48 (previously 0.42).
1625 (Beam): Remove old stuff.
1628 * lily/stem-tremolo.cc:
1630 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1631 (previously space-function).
1633 * stepmake/bin/add-html-footer.py: Website title fix.
1635 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1637 * scripts/ly2dvi.py (environment): use new font searching setup.
1639 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1641 * lily/tfm.cc (dimensions): make code dimension independent
1643 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1646 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1648 * lily/include/dimensions.hh: try MM as internal unit.
1650 * scm/*.scm: remove invoke-dim1
1652 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1654 * GNUmakefile.in (fontpaths): add fontpaths target,
1656 * make/mutopia-targets.make: add PDF rules.
1658 * make/mutopia-rules.make: add pdf rule.
1660 * buildscripts/mutopia-index.py (list_item): add PDF.
1662 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1664 * make/lilypond-vars.make: set TEXMF for the new font setup.
1666 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1668 * VERSION: 1.5.42 released
1670 * mf/feta-schrift.mf: endless twiddling of Tr.
1672 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1673 endless twiddling with the bulb shape.
1675 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1676 little smaller if there is an accidental.
1678 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1680 * buildscripts/lilypond-profile.sh:
1682 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1683 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1684 Implement new font installation strategy
1686 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1687 the new font installation strategy.
1689 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1692 * input/test/staff-size.ly: Simplified using StaffContainer
1694 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1697 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1699 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1701 * lily/beam.cc (score_stem_lengths): new quanting stuff
1702 (score_forbidden_quants): Second and third beam quant stuff.
1704 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1706 * lily/beam.cc (least_squares): Remember least-squares-dy for
1708 (quantise_interval): Don't quant to dy steeper that
1709 least-squares-dy. Return empty interval if no sane quants found.
1710 (quantise_position): Try quantise_interval until we have
1711 acceptable solution.
1713 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1715 * scm/interface-description.scm (beam-interface): Update.
1717 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1719 * VERSION: 1.5.41 released
1721 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1722 optima serifs on top of t, bottom of r.
1724 * mf/feta-bolletjes.mf: make ledger line rounder.
1726 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1728 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1731 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1733 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1734 well as text pedal indications and a combination of both. All
1735 pedal indications are horizontally aligned on a line spanner.
1737 * lily/text-spanner.cc: Edge-width property added to use in
1738 bracketed piano pedals. Function setup_sustain_pedal added to set
1739 the dimensions of the brackets.
1741 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1742 some of the *Pedal properties tweaked.
1744 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1745 edge-width (TextSpanner) properties.
1747 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1749 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1750 fontified identifiers list.
1752 * input/test/pedal.ly: New pedal features added.
1754 * Documentation/user/refman.itely: New pedal features documented.
1757 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1759 * lily/include/new-beam.hh: Previously new-beam.hh
1760 * lily/beam.cc: Previously new-beam.cc
1761 (least_squares): Bugfix: don't barf on beams with less than two
1762 visible stems (tremolos).
1765 * scm/grob-description.scm (Beam): Junk old beam stuff.
1768 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1772 * mf/feta-eindelijk.mf: new 8th rest.
1774 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1775 stick out of staffline
1777 * scripts/lilypond-book.py: fixes for texi regular expressions.
1779 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1781 * lily/include/new-beam.hh:
1782 * lily/new-beam.cc: New file.
1784 * flower/include/interval.hh:
1785 * flower/include/interval.tcc (delta): New method.
1786 (swap): Now public (previously private).
1788 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1789 1 staff-line-thickness. Sadly, this makes dy quanting problems
1790 (dy quants allowed should depend on actual left y) more visible.
1792 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1794 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1796 * scm/grob-property-description.scm (concaveness-threshold): Add
1797 typecheck and description.
1799 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1800 concaveness-threshold (previously concaveness).
1802 * lily/beam.cc (check_concave): Remove choices and debugging
1803 stuff: use best concaveness calculation.
1804 (quantise_dy): Remove choice. Try to never make a slope steeper
1805 by quantising, but certainly never quantise a slope away.
1806 (check_stem_length_f): Remove choice. In case of lengthening
1807 alowed, always lengthen to ideal length.
1809 * Documentation/index.texi: Fix FAQ url.
1811 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1812 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1814 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1816 * VERSION: 1.5.39 released
1818 * lily/simple-spacer.cc (add_rod): rods take precedence over
1819 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1821 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1823 * lily/note-spacing.cc (get_spacing): only insert space for
1824 accidentals if necessary.
1826 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1828 * lily/spacing-spanner.cc (musical_column_spacing): new
1829 function. Have correct spacing from note to end-of-line as well.
1831 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1833 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1835 * darwin.patch: New file.
1837 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1838 code. Shorten stems by fraction of stems to be shortened.
1840 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1841 of shorten value for boundary cases.
1843 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1844 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1846 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1848 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1850 * scm/grob-description.scm (Beam): Add concaveness. Replace
1851 Beam::cancel_suspect_slope with Beam::check_concave.
1853 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1854 set slope to horizontal if concaveness > Beam.concaveness. This
1855 handles cases that kludgy cancel_suspect_slope was meant to catch
1857 (cancel_suspect_slope): Remove.
1859 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1861 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1862 stemLeftBeamCount and stemRightBeamCount to equal 0.
1865 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1867 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1868 fixed spacing for pref matter, if the next column is musical, and
1871 * lily/note-spacing.cc (stem_dir_correction): Use correct
1872 discretionary for stem-bar spacing.
1874 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1876 * VERSION: 1.5.38 released
1878 * lily/grob.cc (warning): Use cause tracking to give more
1879 meaningful errors from the backend.
1881 * lily/property-iterator.cc (check_grob): Warn if setting grob
1882 property in unknown grob.
1884 * mf/feta-toevallig.mf: brushed stems for natural sign.
1886 * lily/molecule.cc (align_to): don't translate empty molecule.
1887 (this triggers a very subtle bug in time-signature.)
1889 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1891 * lily/spring.cc: remove file.
1893 * input/regression/spacing-stem-bar.ly: new file
1895 * lily/score.cc (run_translator): resurrect point-and-click
1897 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1900 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1901 spacing is now globally determined, using the most common shortest
1902 note. Notes that are shorter are spaced geometrically, and with
1903 expand hints. This makes spacing more even, and measures that have
1904 very short notes won't be that stretched out.
1906 * mf/feta-klef.mf: F-clef fixes, documentation on the
1907 shape. (WARNING: font changed.)
1909 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1911 * lily/simple-spacer.cc (add_columns): support for infinitely
1914 * lily/staff-spacing.cc (get_spacing_params): space after
1915 prefatory matter is fixed.
1917 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1919 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1920 barline following an upstem.
1922 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1923 function from next_notes_correction().
1924 (bar_y_positions): idem.
1926 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1928 * input/regression/break.ly (texidoc): bugfix: escape \ in
1931 * lily/staff-spacing.cc (next_notes_correction): Correct the
1932 spacing of a note following a barline.
1935 2002-03-04 Glen Prideaux
1937 * mf/feta-solfa.mf: Shaped note heads
1939 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1941 * VERSION: 1.5.37 released
1943 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1944 left-align molecule.
1946 * lily/break-align-interface.cc (do_alignment): completely
1947 rewritten. Now it does not use Align_interface anymore, but a
1948 separate routine. Like StaffSpacing, it reads space-alist from the
1949 breakable grobs. This allows you to set spacing using
1951 \property Staff.Clef \override #'space-alist = '(....stuff....)
1953 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1954 to Bar_line. Move files around as well.
1956 * lily/time-signature.cc (time_signature): left align time signatures.
1958 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1959 Corrections of the glyph shape C. Comments added.
1961 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1963 * lily/spacing-spanner.cc: move from third-try.cc; rename
1964 Third_spacing_spanner to Spacing_spanner.
1966 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1967 spacing stuff. Much cleaner now, and we prepare for neat spacing
1968 tricks around bar lines and such.
1970 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1971 variables with themselves. (Ouch.)
1973 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1976 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1980 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1983 * lily/music.cc (ly_get_mus_property): typechecking
1984 (ly_set_mus_property): idem
1985 (ly_make_music): idem
1986 (ly_music_name): idem
1988 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1990 * lily/note-spacing.cc (stem_dir_correction): correction for
1991 same stem notes as well.
1993 * lily/pitch.cc (pitch_transpose): stricter typechecking
1995 * mf/parmesan*mf: magnification fixes.
1997 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1999 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2001 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2002 documenting the font. (Doesn't work for parmesan at the moment)
2004 * Documentation/user/appendices.itely (The Feta font): Add list of
2005 Feta font symbols with names.
2007 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2010 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
2012 * lily/translator-group.cc (ly_set_trans_property): typechecking
2013 (ly_get_trans_property): typechecking.
2015 * lily/font-metric.cc (ly_text_dimension): typechecking
2016 (ly_find_glyph_by_name): idem.
2018 * scm/bass-figure.scm (brew-complete-figure): support for
2021 * lily/grob.cc (ly_get_paper_var): new function
2023 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2025 * VERSION (PATCH_LEVEL): 1.5.35 released.
2027 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2028 (bracket): New function.
2030 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2031 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2033 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2036 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2039 * lily/grob.cc (ly_get_grob_property): be anal about types.
2040 (ly_set_grob_property): idem
2042 * lily/figured-bass-engraver.cc (process_music): move molecule
2043 building completely to Scheme
2045 * lily/include/musical-request.hh (class Bass_figure_req): Add
2048 * lily/parser.yy (bass_figure): add support for space figure.
2050 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2052 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2054 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2055 (ly_align_to_x): new function ly-align-to!
2057 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2058 function ly-get-font
2060 * mf/feta-nummer.mf: include normal-space dimension.
2062 * lily/collision.cc (check_meshing_chords): don't merge collisions
2065 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2068 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2070 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2072 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2074 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2077 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2080 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2081 scm/grob-description.scm: added mensural fermata symbol
2083 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2085 * VERSION: 1.5.34 released.
2087 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2089 * lily/staff-symbol-referencer.cc (callback): assume that
2090 staff-position is unset in general.
2092 * input/regression/rest-pitch.ly: new file.
2094 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2097 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2099 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2100 as Scheme option. Run regression test by default with
2101 internal-type-checking.
2103 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2105 * lily/lily-guile.cc (type_check_assignment): changed functions.
2107 * scm/*description*.scm: be anal about typechecks. Some changes
2108 for internal variable names.
2110 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2112 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2114 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2116 * VERSION: 1.5.33 released.
2118 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2119 flare_path everywhere (c-clef, numbers).
2121 * lily/bar-number-engraver.cc (process_music): also print bar
2122 number if measure starts with grace note.
2124 * input/regression/grace-bar-number.ly: new test.
2126 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2128 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2131 * scm/music-functions.scm (voicify-music): split chords into
2132 different voices automatically.
2134 * lily/music.cc (ly_music_list_p): new function
2136 * lily/music-sequence.cc (do_relative_octave): robustification
2138 * scm/music-functions.scm: many utility functions
2140 * lily/music.cc (ly_set_mus_property): add type checks to the
2141 Scheme property assignment.
2143 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2146 * mf/lilypond.map: .map file from Mats' page.
2148 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2150 * Some more parmesan related fixes;
2152 * Custos: varying shape (in particular, stem length), depending on the
2153 vertical position of the custos (on staffline / between stafflines);
2155 * Custos: added grob property "neutral-direction" (same semantics as
2156 with stem); introduced new grob property "neutral-position";
2158 * Time-signature: print a warning when resorting to default layout.
2160 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2162 * lily/translator-group.cc (add_fresh_simple_translator): remove
2163 function; initialize() is called through
2164 Translator_group::initialize().
2166 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2167 for the neighbors of a loose column.
2169 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2170 position loose columns so that they don't collide.
2172 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2174 * VERSION: 1.5.32 released.
2176 * scm/font.scm: remove font-name symbol.
2178 * mf/GNUmakefile: use pktrace for making PFAs
2180 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2182 * lily/rest-collision.cc (do_shift): read direction field from
2183 rest-column in case of note-rest collision. This should fix some
2184 problems with rest collisions.
2186 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2188 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2191 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2192 property. Read pitch directly from #'cause.
2194 * mf/feta-puntje.mf: bugfix
2196 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2198 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2200 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2202 * Documentation/windows/compiling.texi: Update.
2204 * Documentation/index.texi: Add link to orphaned compiling for
2207 * Documentation/footer.html.in: Comment fix.
2209 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2211 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2213 * VERSION: 1.5.31 released
2215 * lily/new-spacing-spanner.cc: remove file.
2217 * lily/third-try.cc (do_measure): only take spacings into account
2218 if they pertain to the column pair under consideration. This fixes
2219 spacing bug when mixing eighths triplets and normal eighths.
2221 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2222 lines don't take up space anymore. Document why in note-head.cc
2225 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2227 * lily/font-interface.cc (get_font): reinstate
2228 #'font-magnification. See input/regression/font-magnification.ly
2229 (get_font): Change the definition of #'font-name grob property.
2231 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2232 that have a #'cause field.
2234 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2236 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2238 * mf/GNUmakefile: remove metapost stuff
2240 * stepmake/aclocal.m4: remove metapost detection stuff.
2242 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2244 * mf/GNUmakefile (FET_FILES):
2245 (FONT_FILES): Include parmesan.
2247 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2250 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2252 * Documentation/user/refman.itely (Paper size): Quote braces.
2254 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2256 * stepmake/aclocal.m4: fixed bison version check to be more
2259 * lily/stem.cc (position_noteheads): fix for cluster chords.
2261 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2263 * python 2.2 support.
2265 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2267 * VERSION: 1.5.30 released
2269 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2271 * Documentation/user/refman.itely (Dynamics): add a note about
2274 * scm/grob-description.scm: add a 'translator-type? object
2275 property, so that \property Foo.Bar =\turnOff doesn't cause
2278 * lily/translator-group.cc (add_fresh_group_translator): make
2279 new add-translator functions to make distinction between fresh and
2280 used group-translators. Fixes problem with scripts on auto-changing voice
2282 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2283 add to Score_performer. Fixes bar checks in MIDI
2285 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2286 heads. Fixes many quirks with ties.
2288 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2289 in the grob property #'cause, instead of using Grob_info.
2291 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2292 staff context, fixing dot alignment on collisions.
2294 * lily/beam-engraver.cc (try_music): remove can't find beam start
2295 warning, so that skipTypesetting won't complain.
2297 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2299 * Documentation/user/refman.itely (Paper size): Documentation fix,
2302 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2304 * scm/grob-description.scm: \breathe: Use feta font comma by default
2306 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2308 * input/template/piano-dynamics.ly (pedal): Simplified
2310 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2312 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2314 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2316 * lilypond-mode.el (LilyPond-command-query): ignore case.
2318 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2320 * VERSION: 1.5.29 released
2322 * all files: change 2001 to 2002 in headers globally
2324 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2325 cheese") font. WARNING: fonts changed.
2327 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
2329 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2331 * mf/*.mf: Added some more vaticana/solesmes style font symbols
2333 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2335 * mf/*.mf: Fixed a few typos in various .mf files
2337 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2339 * mf/: added macro soft_penstroke
2341 softened some glyphs
2342 redrawn triangular noteheads
2344 added classical quarter rest
2346 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2348 * lily/bar.cc: Bugfix: repeat dots when even number of staff
2349 lines and staff_space>=2
2351 * lily/rest.cc: Use default rests when current style glyphs not
2353 \property Staff.Rest \override #'style = #'classical
2355 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
2357 * input/bugs/first-tie.ly: New file.
2359 * input/bugs/spacing-clash.ly: New file.
2361 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
2365 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2367 * lilypond-indent.el: New file providing indentation for
2368 parenthesised blocks of lilypond code in Emacs
2370 * lilypond-font-lock.el: Changes to the syntax table to facilitate
2371 indentation and handle block comments properly. Distinguish
2372 accents from close-brackets in fontification.
2374 * lilypond-mode.el: LilyPond-indent-command set appropriately.
2376 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
2378 * Documentation/windows/installing.texi:
2379 * Documentation/windows/compiling.texi: Include from 1.4.10.
2381 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2383 * input/bugs/first-midi-tie.ly: New file.
2385 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
2387 * VERSION: 1.5.28 released
2389 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2390 illicit beams on [c4 c4] etc.
2392 * lily/bar-check-iterator.cc (Bar_check_iterator): new
2393 file. Make separate iterator for Bar_checks. Bar_check now happen
2394 outside engravers, meaning that you can use them with
2395 skipTypesetting. Associated changes in other files.
2397 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2400 * lily/spacing-spanner.cc (stem_dir_correction): removed function
2402 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2404 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2406 * lily/stem.cc (set_spacing_hints): removed function
2408 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2409 correction for spacing; now take vertical extents of the stem into
2412 * lily/third-try.cc: More hacking to get spacing working.
2414 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2415 sits at staff level and creates note spacing objects. Scrap it
2416 again, and document why.
2418 * lily/include/group-interface.hh: rename functions.
2420 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
2422 * stepmake/stepmake/c++-rules.make:
2423 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2425 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
2427 * make/lilypond-vars.make:
2428 * scripts/ly2dvi.py (setup_environment):
2429 * scripts/lilypond-book.py (setup_environment): Also set tex
2432 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2434 * VERSION: 1.5.27 released.
2436 * Documentation/user/refman.itely (Bar numbers): added bar number
2439 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2442 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
2444 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2445 spread the last few lines all over the last page of a score.
2447 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
2449 * lily/third-try.cc: 3rd try at revising spacing
2450 engine. Not yet finished.
2452 * lily/paper-column.cc (brew_molecule): print debugging marks on a
2455 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2456 collecting past note heads.
2458 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2461 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2462 class. Keep a queue of grobs that are still playing in busyGrobs.
2464 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2465 function. Use busyGrobs to detect playing notes.
2467 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
2469 * Documentation/topdocs/INSTALL.texi: Added note about broken
2470 python-2.1. Updated note for Debian's broken (well, broken for
2471 our use anyway) tex configuration.
2473 * scripts/lilypond-book.py (re_dict): python2.2 fix.
2475 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
2476 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2478 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2479 (But left margin of png's still misses a few pixels. Arg.)
2481 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
2483 * lilypond-mode.el (LilyPond-command-next-midi): Make
2484 possible to kill midi-process (using "C-c C-m").
2486 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
2488 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2489 Convert strings with dimensions to numbers.
2491 * lily/volta-engraver.cc: only make a bracket for the top staff,
2492 as found in stavesFound.
2494 * lily/bar-number-engraver.cc: remove staff administration.
2496 * lily/mark-engraver.cc (acknowledge_grob): remove staff
2497 administration. This breaks support for invisible-staff.
2499 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2500 symbols into stavesFound.
2502 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2503 grobs, and put them into columns.
2505 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2506 Engraver_group_engraver as a potential candidate for ack'ing grobs.
2508 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
2510 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2511 midi section in the Emacs-mode, so it is possible to play certain
2512 score in a multiscore lilypond-file.
2514 2001-12-09 Rune Zedeler <rune@zedeler.dk>
2515 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2516 (FIXME: not accessible from guile)
2518 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2519 better support for Kurt Stone's suggestions.
2520 Removed properties: noResetKey, forgetAccidentals, autoReminders,
2522 Changed property: localKeySignature.
2523 Added properties: extraNatural, autoAccidentals,
2526 (BUGFIX: broken-tie-support destroyed in 1.5.16)
2528 * ly/property-init.ly: added commands
2529 \defaultAccidentals \modernAccidentals \modernCautionaries
2530 \noResetKey \forgetAccidentals
2532 * ly/engraver-init.ly: Correct initialization of new accidentals.
2534 * scm/translator-property-description.scm: The new properties
2537 * input/: Some examples added, some changed.
2539 * Documentation/regression-test.tely: Added quick test of new
2542 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2544 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2547 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2549 * lily/beam.cc (before_line_breaking): Make beams without stems
2550 or with only one stem disappear.
2552 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2554 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2555 files to have standardised HTML bibliography output. Update build
2556 docs to reflect this.
2558 * lily/include/simple-spacer.hh (struct Simple_spacer): add
2559 active_count_, so that we don't have to look for active springs
2562 * scm/interface-description.scm,scm/grob-property-description.scm:
2565 * lily/simple-spacer.cc (solve): Handle forced line breaks
2566 here. Fixes problems when combining linebreaks with non-fitting
2569 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
2571 * 1.4.9.jcn3 forward ports.
2573 * Really included .cvsignore.
2575 * Included Han-Wen's uu1 windows fixes.
2577 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2579 * Added Cygwin setup.hint
2581 * Removed tex, python wrappers and postinstalls to go with Cywgin's
2582 tetex/texmf, python installations.
2584 * Updated cygwin installer.
2586 * ly2dvi: Don't accept filenames with spaces (+ fix).
2588 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
2590 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2592 * lily/translator-def.cc: Remove manual symbol caching.
2594 * lily/script-column.cc (before_line_breaking): robustness check:
2595 don't crash if no direction set.
2597 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2599 * scripts/pmx2ly.py (Parser.parse_header): more generic header
2603 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
2605 * lily/note-head.cc (head_extent): added to compute width without
2606 ledger lines. By default, ledger lines take up width now.
2608 * input/regression/fingering.ly: demonstrate auto fingering.
2609 Horizontal placement is still buggy.
2611 * lily/fingering-engraver.cc (class Fingering_engraver):
2612 added. Provides support for horizontal fingering scripts
2614 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2616 * lily/side-position-interface.cc (add_staff_support): add staff
2617 only for Y-axis side positions.
2619 * lily/parser.yy (request_chord): Fix mem leak.
2621 * lily/musical-request.cc (transpose): moved to Music::transpose()
2623 * lily/include/grob-info.hh: Change music pointer to SCM, so we
2624 can store grobs as grob-creation cause as well.
2626 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2627 handle when adding. Use precomputed symbols throughout lily.
2629 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2630 track of spacing issues.
2632 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2633 to keep track of staff spacing
2635 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2637 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2638 code clean from conditionals and have a concentrated sets of
2639 compatibility fixes for old guile versions.
2641 * Fixes for guile 1.4, including embedded ps.
2643 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2645 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2646 well for markup texts.
2648 * lily/musical-request.cc (length_mom): kludge for null pointer.
2650 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2652 * scm/lily.scm (sign): bugfix
2654 * CHANGES: Change log instated.
2656 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.