1 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Documentation/user/tutorial.itely (First steps): Add missing
6 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
7 about guile --with-threads. Hopefully this issue can be resolved
8 rsn, but maybe we should even add warnings for the standard Debian
11 * configure.in: Warn if guile is configured to use threads. Maybe
12 we should make this an error (ie, add to REQUIRED list?)
14 * config.make.in (PACKAGE_NAME):
15 (PACKAGE, package): Don't hardcode.
17 * VERSION (PACKAGE_NAME): Typo fix.
19 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
21 * input/tutorial/brahms-*.ly: new tutorial files.
23 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
25 * scm/script.scm (default-script-alist): fermata is up.
27 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
28 dynamic line spanner when there is no crescendo to connect.
30 * lily/tie.cc (get_control_points): add test to avoid flat ties.
32 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
34 * lily/note-collision.cc (check_meshing_chords): don't crash if no
37 * scm/music-functions.scm (toplevel-music-functions): new
38 definition. Functions to apply automatically. Removes the need for
39 explicitly doing \apply #voicify-music
41 * lily/grob.cc (do_break_substitution): rename function, use
42 global var for criterion argument. Reduces stack usage a little.
44 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
46 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
47 visibility-lambda to break-visibility
49 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
51 * input/bugs/part-combiner.ly: New file.
53 * lily/include/spacing-interface.hh: New file.
55 * lily/include/spaceable-element.hh: Remove.
57 * input/test/script-priority.ly: New file.
59 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
61 * lily/system.cc (output_lines): kill grobs that are only for spacing.
63 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
65 * lily/fingering-engraver.cc (make_script):
66 * lily/script-engraver.cc (process_music):
67 * lily/text-engraver.cc:
68 (process_acknowledged_grobs): Remove hard coded script-priority.
70 * flower/warn.cc: Cleanup.
72 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
75 * aclocal.m4: Regenerate.
77 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
79 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
80 * lily/include/lily-guile.hh: Only include config.h if necessary.
82 * Changelog: cvs changes ml archive test #8.
84 * lily/slur-engraver.cc: Layout fix.
86 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
88 * ly/engraver-init.ly (RhythmicStaffContext): add
89 Dot_column_engraver, resurrect barlines
91 * VERSION: 1.5.62 released.
93 * lily/engraver-group-engraver.cc (do_announces): rename
94 create_grobs () to process_acknowledged_grobs().
96 * lily/grob.cc (programming_error): add programming_error with
99 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
100 fail if a beam doesn't have stems.
102 * lily/engraver-group-engraver.cc (do_announces): scary change in
103 calling convention of create_grobs(): no create_grobs() call
104 before acknowledge_grobs().
106 * lily/sequential-music-iterator.cc (skip): add support for grace
109 * lily/music.cc (Music): fix very subtle and nasty memory
110 corruption bug. Typical symptom: "programming_error: Rhythmic_req
113 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
115 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
117 * ly/engraver-init.ly (RhythmicStaffContext): add
121 * lily/parser.yy: various protection fixes. Less objects are now
124 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
126 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
129 * Documentation/windows/zlily-profile.sh:
130 * Documentation/windows/post-lilypond.sh: Assume normal
131 prefix=/usr for lilypond.
133 * lily/musical-request.cc (length_mom): Display origin with error.
135 * input/test/duration-check.ly: New file.
137 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
140 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
141 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
144 * autogen.sh: Regenerate.
146 * Documentation/topdocs/INSTALL.texi:
148 * stepmake/configure.in:
149 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
150 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
151 ./configure once again requires autoconf == 2.13.
153 * stepmake/autogen.sh: Check for autoconf == 2.13.
155 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
157 * lily/parser.yy (open_request_parens): add input locations to
158 open and close parens.
160 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
162 * lily/tuplet-bracket.cc:
163 * lily/text-spanner.cc:
164 * lily/piano-pedal-engraver.cc:
165 * scm/grob-description.scm:
166 * scm/grob-property-description.scm: Changed the
167 edge-width property of brackets to edge-widen. Changed the sign of
168 the left element of edge-widen so a pair of equal numbers produces
169 a symmetrical bracket.
171 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
173 * ly/espanol.ly: added.
175 * lily/simple-spacer.cc (solve): remove assert.
177 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
179 * lily/forbid-break-engraver.cc (class
180 Forbid_line_break_engraver): new engraver: forbid linebreaks
183 * lily/spacing-spanner.cc (loose_column): add another check: don't
184 move around bar lines as loose columns.
186 * scm/basic-properties.scm (default-break-barline): add pre-break
189 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
191 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
192 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
194 * scripts/lilypond-book.py (environment): Bugfix: update to new
195 TEXMF scheme, from ly2dvi.
197 * lily/lookup.cc (slur): Invoke bezier-bow.
199 * scm/tex.scm (bezier-bow):
200 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
201 (Previously named bezier-sandwich).
203 * scm/tex.scm (bezier-sandwich):
204 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
206 * make/lilypond.mandrake.spec.in (post):
207 * make/lilypond.suse.spec.in (post):
208 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
210 * tex/lilyponddefs.tex: Uncomment feta character support.
212 * Documentation/user/refman.itely (Pitches): Add espanol.ly
215 * ly/catalan.ly: Add comment about (spanish) -s suffix.
217 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
220 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
222 * GNUmakefile.in (short-examples):
223 (long-examples): Bugfix for --srcdir build.
224 (top-web): Rewrite weblist find command.
226 * stepmake/bin/config.sub:
227 * stepmake/bin/config.guess: Update from latest autotools.
230 * autogen.sh: Regenerate.
233 * stepmake/configure.in:
234 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
235 requires autoconf >= 2.50.
237 * stepmake/autogen.sh: Check for autoconf >= 2.50.
239 * Documentation/user/refman.itely: Bugfix for tablature example.
241 * Documentation/windows/compiling.texi: Update for new and
244 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
246 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
247 introduce base-shortest-duration
249 * lily/parser.yy (music_output_def_body): don't crash when \tempo
250 in unexpected \midi{} is found.
252 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
254 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
255 the use of make/ly.make for use as an external makefile. Probably
256 noone except for myself ever used this anyway.
258 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
259 to new $datadir convention (<package>/<version>).
261 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
263 * VERSION: 1.5.61 released
265 * Document/user/refman.itely: tablature doc and code updates by
266 Jean-Baptiste Lamy <jiba@tuxfamily.org>
268 * input/template/piano-dynamics.ly: bugfixes.
270 * lily/key-engraver.cc (try_music): read request only once. Don't
271 overwrite lastKeySignature. Call create_key() only once. This
272 fixes a bug with multiple equal key changes on polyphonic staffs.
274 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
276 * scm/grob-description.scm: Add side-position-interface to TextSpanner
278 * scm/grob-property-description.scm: Document the trill line type.
280 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
282 * stepmake/stepmake/generic-vars.make:
283 * make/lilypond-vars.make:
284 * GNUmakefile.in (builddir-setup): New setup for builddir run.
285 Fixes LilyPond run from builddir for --srcdir builds.
287 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
290 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
292 * scm/grob-description.scm (all-grob-descriptions): add
293 font-family to RehearsalMark
295 * scm/drums.scm: move over definitions from drum-pitch-init.ly
297 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
300 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
302 * lilypond-mode.el: Propose saving before applying a command:
303 for saved buffer set default command to LilyPond.
305 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
307 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
310 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
312 * Documentation/windows/lilypond-doc.hint: New file.
314 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
315 Bugfixes for --srcdir html-doc build.
317 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
318 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
320 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
322 * ly/script-init.ly (pralldown): add some scripts.
324 * Documentation/user/refman.itely: many edits.
326 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
328 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
329 direction, this breaks staffline avoidance of the bracket when
332 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
334 * scripts/midi2ly.py: Fix handling of -o
336 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
338 * lily/molecule.cc (translate): set max distance to 100 cm.
340 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
342 * VERSION: 1.5.60 released
344 * lily/beam.cc: tremolo fix.
346 * scripts/convert-ly.py: add tuplet-X-visibility rules.
347 add VerticalExtent -> verticalExtent rules.
349 * lily/axis-group-engraver.cc: consistent case for
350 XxxxVerticalExtent properties.
352 * Documentation/user/refman.itely (Tuplets): update
353 tuplet-X-visibility properties.
355 * input/test/defaultbars.ly: Corrected (thanks Mats)
357 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
359 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
361 * buildscripts/lilypond-profile.sh: override settings if
362 LILYPONDPREFIX is set.
364 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
366 * scripts/ly2dvi.py (non_path_environment): Fix typo
368 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
370 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
372 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
374 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
376 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
377 beam-engraver: use different engraver so we can mix normal and
380 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
382 * lily/beam.cc (shift_region_to_valid): Try to shift positions
383 after slope-damping and concaveness check, so that short-stems are
386 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
388 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
390 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
392 * VERSION: 1.5.59 released
394 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
395 notice that missing features are exercise for user.
397 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
399 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
400 (but alas, not partly precomputed) value for current_y when
401 calculating stem length demerits.
402 (calc_stem_y): Temporary precomputed factors fix.
404 * lily/stem.cc (calc_stem_info): Take multiplicity into account
407 * input/bugs/melisma-tie-rest.ly: New file.
409 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
411 * lily/stem.cc (calc_stem_info): remove min_y member, rename
412 stuff. Remove kneeing stuff.
414 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
417 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
423 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
424 patch-level of version in minor-version string. Arg.
426 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
428 * ly/engraver-init.ly (TabStaffContext):
429 enable TabStaff by default.
431 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
433 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
435 * config.hh.in: Remove duplicate DIR_DATADIR entry.
437 * aclocal.m4: Regenerate.
439 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
441 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
443 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
445 * lilypond-mode.el: Write notes with fewer keystrokes trough a
446 "Quick notes"-interface.
448 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
450 * input/regression/non-empty-text.ly: Update example with outdated
453 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
455 * scripts/convert-ly.py: add textNonEmpty rule
457 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
459 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
461 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
462 using translate-robust add_molecule instead of add_at_edge.
463 Bugfix for #(lines (finger "" "1")).
465 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
467 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
470 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
474 * Documentation/user/refman.itely: Bugfix: add node Repeats and
475 MIDI. Regenerate menu. Fix @end example.
477 * lily/accidental.cc: Add cautionary-style to interface.
479 * mf/feta-beugel.mf (code): use autometric macros for braces.
480 This fixes input/bugs/braces.
482 * lily/afm.cc (count): return numOfChars, not size of array
485 * lily/script.cc (before_line_breaking): postpone setting the
486 X-parent of vertical scripts. This fixes the case of scripts on
489 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
491 * scm/grob-description.scm: fix alignment of barnumber: make sure
492 it doesn't hit the G-clef.
494 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
495 startGraceMusic not startGraceContext).
497 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
499 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
502 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
504 * lily/accidental-engraver.cc: remove old accidental engraver,
505 move new one to accidental-engraver.cc.
507 * lily/local-key-item.cc: remove file
509 * lily/include/local-key-item.hh: remove file
511 * scripts/ly2dvi.py (make_preview): add --preview-resolution
514 * lily/accidental.cc (brew_molecule): support for cautionary
517 * lily/note-head.cc (internal_brew_molecule): warn if note head
520 * lily/time-signature.cc (special_time_signature): remove warning
521 about time signature.
523 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
524 reverse springs by limiting fixed-note space.
526 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
528 * stepmake/aclocal.m4: Bugfix: complain if program not found.
530 * scripts/update-lily.py (next_version, prev_version, diff_name):
531 New function. Patches now named name-prev-latest.diff.gz.
532 Bugfix: import shutil.
534 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
536 * input/tutorial/sammartini.ly: fix and document autochange
539 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
540 does produce .pdftex files.
542 * lily/note-collision.cc (check_meshing_chords): move file from
543 collision.cc, implement merged note heads (there you go, Drarn :-)
545 * input/regression/collision-heads.ly: new file
547 * VERSION: 1.5.57 released.
549 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
551 * mf/parmesan-heads.mf, scm/grob-description.scm,
552 scm/grob-property-description.scm, scm/interface-description,
553 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
554 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
555 lily/include/ligature-engraver.hh,
556 lily/include/ligature-bracket.hh, lily/parser.yy,
557 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
558 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
559 lily/ligature-head.cc, lily/ligature-engraver.cc,
560 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
561 implemented white mensural ligatures (still with a big list of
565 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
567 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
568 Documentation/user/internals.itely.
570 * lily/function-documentation.cc: new file. Infrastructure for
571 self documenting Scheme functions.
573 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
575 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
577 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
579 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
580 and * (as in "([^>]*)?")
582 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
584 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
585 Add info about CVS. Stable/development are currently 1.4/1.5,
586 both at lilypond.org.
588 * autogen.sh: Generate.
590 * stepmake/configure:
591 * configure: Regenerate.
593 * stepmake/stepmake/automatically-generated.sub.make: Keep
596 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
598 * stepmake/stepmake/generic-targets.make (configure): Generate
601 * GNUmakefile.in (SCRIPTS):
602 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
604 * stepmake/autogen.sh: New file.
606 * configure: Check for g++ >= 2.95.
608 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
609 c/c++ version checking.
611 * flower/include/string.hh: Typo fix.
613 * lily/include/midi-item.hh: Remove stray i.
615 * Documentation/windows/GNUmakefile: Avoid collapsed directory
618 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
619 constructs '//' from arguments.
621 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
623 * scm/lily.scm (ly-load): show SCM filenames if verbose.
625 * lily/lily-guile.cc (init_functions): add ly-verbose function.
627 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
629 * flower/include/{pointer,tuple}*: removed.
631 * VERSION: released 1.5.56
633 * scm/music-functions.scm (check-start-chords): function to check
634 for chords without \context. Apply automatically from parser.
636 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
638 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
641 * scm/output-lib.scm: fix ez notation stems.
643 * lily/paper-outputter.cc: various fixes to speed up compilation.
645 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
647 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
649 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
651 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
652 determine latex input.
654 * stepmake/bin/install-sh: Include latest from libtool.
656 * stepmake/configure:
657 * configure: Regenerate.
659 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
660 (USER_CFLAGS): Bugfix, include CPPFLAGS.
662 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
664 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
665 REQUIRED programs and version. Try to continue configuring, list
666 missing programs at the end, but don't generate a GNUmakefile if
667 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
668 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
669 fancy for some older systems.
671 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
673 * lily/score-engraver.cc (typeset_all): sanity check for items
674 that are Y parent to spanner.
676 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
679 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
681 * lily/*.cc: remove as many iostream use as possible.
683 * flower/ : remove text-db, text-stream, data-file.
685 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
687 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
688 (completize_preamble): don't barf if no preamble present.
689 (do_file): allow extensions on --output
691 * scripts/ly2dvi.py (make_preview): make automatic preview of
692 first system. Small cleanups.
694 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
696 * scripts/lilypond-book.py (make_pixmap): output png directly.
698 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
701 * lily/parser.yy (My_lily_parser): comment out code. (Causes
702 problems with recent bison releases).
704 * make/lilypond.redhat.spec.in: add pfa fonts to X.
706 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
708 * lilypond-font-lock.el: Fixes the order of the note name list.
710 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
712 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
713 capability, --verbose option, rlimit hack.
715 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
717 * lily/piano-pedal-engraver.cc: cleanups.
719 * lily/accidental.cc (after_line_breaking): add break tie
722 * lily/text-engraver.cc (try_music): don't typeset fingerings
724 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
726 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
728 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
730 * lily/*.cc: change gh_str02scm() to ly_str02scm().
732 * lily/spacing-spanner.cc (note_spacing): Bound
733 shortest-playing-length by the distance to next note. This should
734 fix chord tremolo spacing.
736 * VERSION: 1.5.55 released
738 * lily/stem.cc (off_callback): invisible stem over whole note is
739 centered on note now.
741 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
742 stem-tremolo is stem now.
744 * input/mozart-hrn*.ly: many corrections.
746 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
747 support for dynamic scripts.
749 * lily/accidental-placement.cc (position_accidentals): check for
750 collisions as well: should avoid those heads too.
752 * lily/beam.cc (check_concave): allow undefined gap and
753 threshold. Change the meaning of threshold/gap == 0.0.
754 (check_concave): skip Stolba concaveness check if we have a knee
757 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
759 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
760 tremolos of dotted duration.
762 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
764 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
765 downstroke again. Sigh.
767 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
770 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
772 * lily/slur.cc (add_column): allow slur over rest.
774 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
776 * lily/beam.cc: move scoring constants out of code
778 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
780 * mf/feta-nummer.mf: scalability fixes.
782 * mf/feta-nummer-code.mf: fixes for 5, 8.
784 * mf/feta-klef.mf: G clef fixes.
786 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
788 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
790 * scripts/lilypond-book.py: %Newline, rather than glue macros
791 after \end{verbatim}.
793 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
795 * Documentation/user/lilypond-book.itely:
796 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
799 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
801 * scm/grob-property-description.scm (beam-space): Junk.
803 * lily/beam.cc (space_function): New method.
804 (get_interbeam): Call space-function.
806 * scm/grob-description.scm (Beam): Initialize space-function with
807 Beam::space_function.
809 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
810 Beam.space-function. Don't quantise grace beams.
812 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
814 * VERSION: 1.5.54 released
816 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
819 * Documentation/index.texi: add PDF links.
821 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
823 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
824 compare #'glyph as strings.
826 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
828 * scripts/ly2dvi.py (setup_environment): fix by Mats.
830 * lily/stem.cc (head_count): Change function name. Change property
831 to #'note-heads i.s.o. #'heads.
832 (position_noteheads): Kern noteheads for invisible stems.
833 (before_line_breaking): Do position_noteheads() for whole note
836 * lily/accidental-placement.cc (position_accidentals): First
837 determine refpoints, only then determine extents.
839 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
841 * lily/accidental-placement.cc (position_accidentals): use all
842 note heads for note head-skyline.
844 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
846 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
848 * Documentation/windows/setup.hint (requires): Add gsview dependency.
850 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
852 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
854 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
856 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
858 * mf/feta-schrift.mf: lighter staccato.
860 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
862 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
864 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
866 * VERSION: 1.5.53 released
868 * scm/lily.scm (ly-load): use primitive-load for loading.
870 * lily/misc.cc: remove quantise_iv()
872 * lily/*.cc: pass read-only arrays by reference.
874 * lily/grob.cc (common_refpoint_of_array): new function. Try to
875 use common_refpoint_of_{array, list} when possible.
877 * lily/include/accidental-placement.hh: new file.
879 * lily/accidental-placement.cc (alignment_callback): position
880 accidentals in a better way.
882 * lily/skyline.cc: new file. Compute distances for collections of
885 * lily/include/skyline.hh: new file
887 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
889 * lily/accidental.cc (class Accidental_interface): grob for a
892 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
895 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
896 together with new accidental-interface.
898 * lily/include/*.hh: remove spurious set_interface() decls.
900 * lily/key-signature-interface.cc (brew_molecule): add padding for
901 natural signs. Make natural typesetting like the sharp.
904 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
905 is now slightly curved, not straight.
908 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
910 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
912 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
913 more strictly. Use more clever regular expressions. Commented regexps.
915 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
917 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
919 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
921 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
922 to control width of staff symbol in ragged-right mode (by request
925 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
926 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
927 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
928 added support for ligature brackets (needed when transcribing
931 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
933 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
934 Fontify notes more strictly.
936 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
938 * mf/feta-din-code.mf: dynamic z sign.
940 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
942 * lilypond-mode.el: Prevent recoloring strings and comments.
944 * lilypond-font-lock.el: Handle block comments: block comments
945 can have also ordinary comments inside.
947 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
949 * lily/stem.cc (get_default_dir): set direction to CENTER if
950 invisible. Various other fixes to deal with invisible stems and
951 stem-direction == CENTER.
953 * lily/rest-collision.cc (do_shift): take direction from note if
956 * input/regression/tie-grace.ly: new file.
958 * lily/tie-engraver.cc (create_grobs): fix tied graces.
960 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
961 knee correction. Fixes tight spacing for knees.
963 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
965 * VERSION: 1.5.52 released
967 * lily/*.cc: add some undocced properties.
968 scm/grob-description.scm: idem.
970 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
972 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
973 multi-measure rests like "R1 *4" and scheme (typically has '#'
974 in the beginning). Small fixes. Add few reserved words.
976 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
978 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
981 * Documentation/windows/installing.texi: Suggest gswin32c (console
982 program) for getting the version. Layout fixes.
984 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
986 * Documentation/user/tutorial.itely (Running LilyPond): Separate
987 windows viewing commands, remove silly comment about Yap.
989 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
991 * Documentation/topdocs/INSTALL.texi: Describe how to learn
992 configure to find kpathsea on for example Slackware 8.0.
994 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
996 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
997 by default: avoid "1" over single bar rests.
999 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1000 and correct the handling of geometry options.
1002 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1004 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1005 implementation for Class::has_interface automatically. Junk all
1006 other implementations.
1008 * lily/grob.cc (internal_get_grob_property): also typecheck
1009 property reads. Catches even more undocced properties. Bugfixing
1010 left for the uninspired masses.
1012 * lily/beam.cc: remove end_after_line_breaking().
1014 * lily/grob.cc (calculate_dependencies): remove list support for
1017 * lily/font-size-engraver.cc: only do font-interface.
1019 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1021 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1024 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1026 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1027 brackets using arpeggio requests.
1029 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1030 molecule-callback to use for drawing the brackets.
1032 * Documentation/user/refman.itely:
1033 * input/test/chord-bracket.ly: Chord brackets documented
1035 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1037 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1039 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1041 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1043 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1044 direction tuplets on beams.
1046 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1048 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1050 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1052 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1053 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1054 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1055 submenu to "LilyPond"-menu.
1057 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1058 an interface to play midi.
1060 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1062 * input/regression/script-stack-order.ly: new file.
1064 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1066 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1068 * mf/feta-din-code.mf: kerning for dynamics.
1070 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1072 * input/regression/dynamics-glyphs.ly: new file
1074 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1076 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1077 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1079 * Documentation/windows/gs-profile.sh:
1080 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1081 moved to gs/gsview windows packages.
1083 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1085 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1086 finding out the duration. Fixes chord tremolo bug.
1088 * lily/completion-note-heads-engraver.cc (process_music): Set
1089 correct duration for all requests of the broken notes.
1091 * input/regression/completion-heads.ly: Added example of
1092 Completion_heads_engraver.
1094 * lilypond-mode.el: Added "2Midi" command
1096 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1098 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1099 edge-width, edge-height and shorten-pair properties for tuplet
1102 * lilypond-indent.el: Support for blinking of matching parentheses
1104 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1106 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1107 cleanups of piano pedal brackets.
1109 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1111 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1113 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1115 * mf/feta-new-code.mf: new dynamic f sign.
1118 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1120 * mf/feta-new-code.mf: new dynamic p sign.
1122 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1124 * lily/note-spacing.cc (stem_dir_correction): only do
1125 beam-correction if a beam is there.
1127 * lily/stem.cc (duration_log): change from flag_i (); better
1129 (get_default_stem_end_position): fix dot/flag collision code.
1131 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1133 * VERSION: release 1.5.50
1135 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1136 unit spring here. Reduces number of warning messages.
1138 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1140 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1142 * scm/generic-property.scm: remove generic-property, property-engraver
1144 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1146 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1148 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1150 * scm/*.scm: remove volta, hairpin and tuplet functions.
1152 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1153 note column for notes/stems/dots that already have parents. Fixes
1154 nested grace contexts.
1156 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1158 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1159 get too curved slurs.
1161 * scm/slur.scm (default-slur-extremity-offset-alist)
1162 (default-phrasing-slur-extremity-offset-alist): Move slur
1163 attachments further away from note-head, vertically. Also, leave
1164 a horizontal gap between slur and stem end.
1166 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1168 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1170 * input/regression/spacing-grace-duration.ly: new file
1172 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1173 for shortest durations.
1175 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1176 extent of the mm rest.
1178 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1181 * lily/tuplet-bracket.cc (make_bracket): new function
1182 (get_x_offset): new function; make tuplet brackets align on stems
1183 if stem has same direction.
1184 (parallel_beam): be anal about matching bracket to tuplet.
1186 * lily/lookup.cc (line): new function Lookup::line().
1188 * scm/tex.scm (dashed-line): change -line to -system in names.
1190 * lily/box.cc (add_point): new function.
1192 * flower/include/interval.hh: new function add_point ().
1193 new function widen()
1195 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1197 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1199 * scm/grob-property-description.scm (number-threshold): Add
1202 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1203 rest if #measures > number-threshold. Use padding (well, fake
1206 * scm/font.scm (make-style-sheet): New styles: mark-number,
1208 (paper20-style-sheet-alist): Add bigger bold fonts.
1210 * lily/mark-engraver.cc (process_music): Use style mark-number or
1213 * .cvsignore: Ignore all kinds of lilypond input and output.
1215 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1217 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1219 * lily/staff-symbol.cc (brew_molecule): make line thickness
1222 * lily/*.cc: replace stafflinethickness by linethickness.
1224 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1226 * input/regression/beam-concave.ly: Add to-be-considered-concave
1229 * lily/beam.cc (check_concave): Add check for large gap between an
1230 inner notehead and the line through outer noteheads.
1232 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1233 value 2.0 staff-space.
1235 * scm/grob-property-description.scm (concaveness-gap): Add
1238 * input/mozart-hrn3-allegro.ly: Fix typo.
1240 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1242 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1243 lily/note-head-engraver: improved implementation of roundfilledbox
1244 (according to Han-Wen's request)
1246 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1247 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1248 lily/simple-spacer.cc: ragged-right alignment
1250 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1252 * input/regression/spacing-note-flags.ly: new file
1254 * input/regression/spacing-rest.ly: new file
1256 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1258 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1259 all grace notes tight (not only the column directly following a
1262 * scm/grob-description.scm (all-grob-descriptions): don't make
1263 mm-rests larger than normal.
1265 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1266 curved. Remove white space at the right of flags.
1268 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1270 * ports/ports.make: Bugfix: ignore CVS directories.
1272 * stepmake/.cvsignore: New file.
1274 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
1276 * lily/note-spacing.cc (stem_dir_correction): don't correct when
1277 there is a flag on the stem.
1279 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1281 * scm/grob-property-description.scm (measure-length):
1282 measure-length grob property.
1284 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1285 better spacing for breakable columns when they're juxtaposed: use
1286 measure length if applicable
1288 * lily/timing-engraver.cc (start_translation_timestep): store
1289 measure length in breakable column at start of measure.
1291 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1293 * ROADMAP: Add description for ports dir, to check email upon
1296 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
1298 * VERSION: 1.5.48 released
1300 * lily/multi-measure-rest.cc (symbol_molecule): split off from
1302 (set_spacing_rods): Use symbol_molecule() to determine minimum
1304 (church_rest): split off from brew_molecule()
1305 (big_rest): split off from brew_molecule(). Construct using
1308 * mf/feta-eindelijk.mf: junk multi measure rest.
1310 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
1312 * lily/multi-measure-rest.cc (add_column): remove columns property.
1314 * lily/dynamic-engraver.cc (process_music): add more verbose warning
1316 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1319 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
1321 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1322 keywords covered, dropped some non-keywords, include R- and 128-notes
1324 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1326 * Code clean-up: Junk multiple implementations of ledger line
1327 creation in note_head, custos, and porrectus. This is important
1328 since there soon will be some more applications of ledger lines to
1329 come (e.g. ambitus engraver).
1331 * Make thickness of ledger lines adjustable. This is essential
1332 for mensural notation.
1334 * Fix some bugs in the current ledger_line implementation, most
1335 notably that of the horizontal extent of ledger lines which equals
1336 at least the extent of the metafont ledger_line character, and
1337 which grows(!) if the desired extent shrinks below this limit.
1339 * roundfilledbox: variable blotdiameter
1341 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
1343 * VERSION: 1.5.47 released
1345 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1347 * lily/porrectus.cc: change line-thickness to thickness, change
1348 stem-direction to direction.
1350 * scm/backend-documentation-lib.scm (check-dangling-properties):
1351 Automatically detect doc'ed properties that are not in an interface
1353 * scm/grob-property-description.scm: property cleanup. Remove many
1354 paper-column props that are non-existent.
1356 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1357 the grob has a molecule-callback.
1359 * lily/*.cc: remove many set_interface() calls, and their
1362 * input/regression/spacing-knee.ly: new file
1364 * input/regression/spacing-clef-first-note.ly: new file
1366 * lily/staff-spacing.cc (get_spacing_params): different spacing
1367 for pref matter to note at start of line, halfway during line.
1369 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1370 correction only if stems have same direction (i.e. not for
1371 stem-clef combination).
1372 (stem_dir_correction): maximal correction for knees.
1374 * lily/*.cc: many updates to interface descriptions.
1376 * lily/grob.cc (internal_set_grob_property): add interface check
1377 for every set_grob_property call
1379 * lily/*.cc: document interface stuff in C++
1381 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
1383 * lily/volta-bracket.cc: naming: change volta spanner to
1386 * input/bugs/*.ly: cleanup, remove lots of files.
1388 * buildscripts/mf-to-table.py (write_ps_encoding): generate
1389 .encoding file. WARNING: upgrade to pktrace 1.0.3
1391 * mf/feta-toevallig.mf: change PS name for parentheses.
1393 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1395 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1398 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
1400 * lily/scope.cc: remove file .
1402 * lily/include/scope.hh: remove file. Remove Scope class
1406 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1407 score_forbidden_quants): ): take out of SCM, pass parameters so
1408 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1410 (calc_stem_y): robustness: take care of last_visible_stem == 0.
1413 * lily/lily-guile.cc (ly_unit): return internal unit.
1415 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
1417 * lily/paper-outputter.cc (output_version): output internal unit
1418 from Paper_outputter
1420 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1422 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1424 * scripts/ly2dvi.py: clean up old .*pk font caching code.
1426 * scm/ps.scm: Use uppercase postscript font names for the standard
1429 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1430 Add all available TeX Type1 fonts, including Feta, to the
1431 Ghostscript font path.
1433 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1434 version (affects the FontName) in lilypond.map.
1436 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1437 documentation file to fetaNNlist.ly to avoid name collisions between
1438 lilypond generated .tex file and font .tex macros file.
1441 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
1443 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1444 made mensural longa and (semi-)brevis leaner
1446 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1448 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1449 clean-up: moved bezier shape and slope from porrectus to lookup
1451 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1452 and /usr/share/texmf/fonts
1454 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1456 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
1458 * lily/text-spanner.cc (brew_molecule): add #'thickness
1459 (brew_molecule): add corrections for thickness in molecule padding.
1461 * lily/line-spanner.cc (line_atom): make function private
1463 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1464 discover bounding box. This solves the cropping problem.
1466 * lily/bar-check-iterator.cc (process): Only resynchronize bar
1467 check when it fails. This fixes the combination of grace notes
1470 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
1472 * lily/repeated-music.cc (minimum_start): new Scheme callable function
1473 (first_start): new Scheme callable. This will fix repeated music
1474 starting with grace notes.
1476 * lily/music.cc (start_mom): check start-moment-function grob property.
1478 * VERSION: 1.5.45 released
1480 * input/regression/system-extents.ly: new regression test. Test
1483 * lily/system.cc: rename LineOfScore into System
1485 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1487 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1488 (ly_get_extent): new Scheme function ly-get-extent
1490 * ps/lilyponddefs.ps: use output-scale for line-x
1493 * scm/ps.scm (font-load-command):
1496 2002-03-20 Rune Zedeler <rune@zedeler.dk>
1498 * lily/beaming-info.cc: Stupid typo fixed
1500 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1501 support for cross-context auto-accidentals.
1502 Now the engraver can stay in Staff-context and see other contexts
1504 Changed properties: autoAccidentals, autoCautionaries
1506 * lily/translator-group.cc (set_children_property):
1507 Function added recursively setting the same property (deep_copied)
1508 for all children of a Translator_group.
1510 * ly/property-init.ly: added commands
1511 \pianoAccidentals \voiceAccidentals
1512 \modernVoiceAccidentals \modernVoiceCautionaries
1514 * ly/engraver-init.ly: Correct initialization of new accidentals.
1516 * scm/translator-property-description.scm: Updated
1518 * input/regression/accidental-voice.ly: Added
1520 * Documentation/regression-test.tely: Added new test
1522 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1524 * VERSION: 1.5.44 released
1526 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1528 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1530 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1533 * tex/feta*.tex: remove.
1535 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1536 all software dealing with it.
1538 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
1540 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1541 (this fixes pdf output). Drop awk dependency.
1543 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1544 dimensions (linewidth) are in mm.
1546 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1548 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1550 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1552 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
1554 * VERSION: 1.5.43 released
1556 * scm/beam.scm (beam-dir-majority-median): if majority is
1557 undecided, use median. Removes a forced dir in sarabande.
1559 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1561 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1563 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1564 widths, heights and shortens are now customisable properties.
1566 * scm/grob-description.scm, scm/grob-property-description.scm: New
1567 properties added to PianoPedalBracket, unnecessary
1568 Y-offset-callbacks removed from *Pedal, undocumented properties
1571 * Documentation/user/refman.itely: Piano pedal updates.
1573 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
1575 * scm/grob-property-description.scm:
1576 * scm/interface-description.scm: Remove old stuff.
1578 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1579 0.48 (previously 0.42).
1580 (Beam): Remove old stuff.
1583 * lily/stem-tremolo.cc:
1585 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1586 (previously space-function).
1588 * stepmake/bin/add-html-footer.py: Website title fix.
1590 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1592 * scripts/ly2dvi.py (environment): use new font searching setup.
1594 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1596 * lily/tfm.cc (dimensions): make code dimension independent
1598 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1601 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1603 * lily/include/dimensions.hh: try MM as internal unit.
1605 * scm/*.scm: remove invoke-dim1
1607 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1609 * GNUmakefile.in (fontpaths): add fontpaths target,
1611 * make/mutopia-targets.make: add PDF rules.
1613 * make/mutopia-rules.make: add pdf rule.
1615 * buildscripts/mutopia-index.py (list_item): add PDF.
1617 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1619 * make/lilypond-vars.make: set TEXMF for the new font setup.
1621 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1623 * VERSION: 1.5.42 released
1625 * mf/feta-schrift.mf: endless twiddling of Tr.
1627 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1628 endless twiddling with the bulb shape.
1630 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1631 little smaller if there is an accidental.
1633 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1635 * buildscripts/lilypond-profile.sh:
1637 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1638 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1639 Implement new font installation strategy
1641 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1642 the new font installation strategy.
1644 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1647 * input/test/staff-size.ly: Simplified using StaffContainer
1649 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1652 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1654 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1656 * lily/beam.cc (score_stem_lengths): new quanting stuff
1657 (score_forbidden_quants): Second and third beam quant stuff.
1659 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1661 * lily/beam.cc (least_squares): Remember least-squares-dy for
1663 (quantise_interval): Don't quant to dy steeper that
1664 least-squares-dy. Return empty interval if no sane quants found.
1665 (quantise_position): Try quantise_interval until we have
1666 acceptable solution.
1668 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1670 * scm/interface-description.scm (beam-interface): Update.
1672 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1674 * VERSION: 1.5.41 released
1676 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1677 optima serifs on top of t, bottom of r.
1679 * mf/feta-bolletjes.mf: make ledger line rounder.
1681 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1683 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1686 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1688 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1689 well as text pedal indications and a combination of both. All
1690 pedal indications are horizontally aligned on a line spanner.
1692 * lily/text-spanner.cc: Edge-width property added to use in
1693 bracketed piano pedals. Function setup_sustain_pedal added to set
1694 the dimensions of the brackets.
1696 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1697 some of the *Pedal properties tweaked.
1699 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1700 edge-width (TextSpanner) properties.
1702 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1704 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1705 fontified identifiers list.
1707 * input/test/pedal.ly: New pedal features added.
1709 * Documentation/user/refman.itely: New pedal features documented.
1712 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1714 * lily/include/new-beam.hh: Previously new-beam.hh
1715 * lily/beam.cc: Previously new-beam.cc
1716 (least_squares): Bugfix: don't barf on beams with less than two
1717 visible stems (tremolos).
1720 * scm/grob-description.scm (Beam): Junk old beam stuff.
1723 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1727 * mf/feta-eindelijk.mf: new 8th rest.
1729 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1730 stick out of staffline
1732 * scripts/lilypond-book.py: fixes for texi regular expressions.
1734 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1736 * lily/include/new-beam.hh:
1737 * lily/new-beam.cc: New file.
1739 * flower/include/interval.hh:
1740 * flower/include/interval.tcc (delta): New method.
1741 (swap): Now public (previously private).
1743 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1744 1 staff-line-thickness. Sadly, this makes dy quanting problems
1745 (dy quants allowed should depend on actual left y) more visible.
1747 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1749 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1751 * scm/grob-property-description.scm (concaveness-threshold): Add
1752 typecheck and description.
1754 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1755 concaveness-threshold (previously concaveness).
1757 * lily/beam.cc (check_concave): Remove choices and debugging
1758 stuff: use best concaveness calculation.
1759 (quantise_dy): Remove choice. Try to never make a slope steeper
1760 by quantising, but certainly never quantise a slope away.
1761 (check_stem_length_f): Remove choice. In case of lengthening
1762 alowed, always lengthen to ideal length.
1764 * Documentation/index.texi: Fix FAQ url.
1766 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1767 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1769 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1771 * VERSION: 1.5.39 released
1773 * lily/simple-spacer.cc (add_rod): rods take precedence over
1774 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1776 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1778 * lily/note-spacing.cc (get_spacing): only insert space for
1779 accidentals if necessary.
1781 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1783 * lily/spacing-spanner.cc (musical_column_spacing): new
1784 function. Have correct spacing from note to end-of-line as well.
1786 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1788 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1790 * darwin.patch: New file.
1792 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1793 code. Shorten stems by fraction of stems to be shortened.
1795 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1796 of shorten value for boundary cases.
1798 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1799 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1801 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1803 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1805 * scm/grob-description.scm (Beam): Add concaveness. Replace
1806 Beam::cancel_suspect_slope with Beam::check_concave.
1808 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1809 set slope to horizontal if concaveness > Beam.concaveness. This
1810 handles cases that kludgy cancel_suspect_slope was meant to catch
1812 (cancel_suspect_slope): Remove.
1814 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1816 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1817 stemLeftBeamCount and stemRightBeamCount to equal 0.
1820 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1822 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1823 fixed spacing for pref matter, if the next column is musical, and
1826 * lily/note-spacing.cc (stem_dir_correction): Use correct
1827 discretionary for stem-bar spacing.
1829 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1831 * VERSION: 1.5.38 released
1833 * lily/grob.cc (warning): Use cause tracking to give more
1834 meaningful errors from the backend.
1836 * lily/property-iterator.cc (check_grob): Warn if setting grob
1837 property in unknown grob.
1839 * mf/feta-toevallig.mf: brushed stems for natural sign.
1841 * lily/molecule.cc (align_to): don't translate empty molecule.
1842 (this triggers a very subtle bug in time-signature.)
1844 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1846 * lily/spring.cc: remove file.
1848 * input/regression/spacing-stem-bar.ly: new file
1850 * lily/score.cc (run_translator): resurrect point-and-click
1852 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1855 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1856 spacing is now globally determined, using the most common shortest
1857 note. Notes that are shorter are spaced geometrically, and with
1858 expand hints. This makes spacing more even, and measures that have
1859 very short notes won't be that stretched out.
1861 * mf/feta-klef.mf: F-clef fixes, documentation on the
1862 shape. (WARNING: font changed.)
1864 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1866 * lily/simple-spacer.cc (add_columns): support for infinitely
1869 * lily/staff-spacing.cc (get_spacing_params): space after
1870 prefatory matter is fixed.
1872 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1874 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1875 barline following an upstem.
1877 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1878 function from next_notes_correction().
1879 (bar_y_positions): idem.
1881 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1883 * input/regression/break.ly (texidoc): bugfix: escape \ in
1886 * lily/staff-spacing.cc (next_notes_correction): Correct the
1887 spacing of a note following a barline.
1890 2002-03-04 Glen Prideaux
1892 * mf/feta-solfa.mf: Shaped note heads
1894 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1896 * VERSION: 1.5.37 released
1898 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1899 left-align molecule.
1901 * lily/break-align-interface.cc (do_alignment): completely
1902 rewritten. Now it does not use Align_interface anymore, but a
1903 separate routine. Like StaffSpacing, it reads space-alist from the
1904 breakable grobs. This allows you to set spacing using
1906 \property Staff.Clef \override #'space-alist = '(....stuff....)
1908 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1909 to Bar_line. Move files around as well.
1911 * lily/time-signature.cc (time_signature): left align time signatures.
1913 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1914 Corrections of the glyph shape C. Comments added.
1916 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1918 * lily/spacing-spanner.cc: move from third-try.cc; rename
1919 Third_spacing_spanner to Spacing_spanner.
1921 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1922 spacing stuff. Much cleaner now, and we prepare for neat spacing
1923 tricks around bar lines and such.
1925 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1926 variables with themselves. (Ouch.)
1928 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1931 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1935 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1938 * lily/music.cc (ly_get_mus_property): typechecking
1939 (ly_set_mus_property): idem
1940 (ly_make_music): idem
1941 (ly_music_name): idem
1943 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1945 * lily/note-spacing.cc (stem_dir_correction): correction for
1946 same stem notes as well.
1948 * lily/pitch.cc (pitch_transpose): stricter typechecking
1950 * mf/parmesan*mf: magnification fixes.
1952 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1954 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1956 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1957 documenting the font. (Doesn't work for parmesan at the moment)
1959 * Documentation/user/appendices.itely (The Feta font): Add list of
1960 Feta font symbols with names.
1962 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1965 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1967 * lily/translator-group.cc (ly_set_trans_property): typechecking
1968 (ly_get_trans_property): typechecking.
1970 * lily/font-metric.cc (ly_text_dimension): typechecking
1971 (ly_find_glyph_by_name): idem.
1973 * scm/bass-figure.scm (brew-complete-figure): support for
1976 * lily/grob.cc (ly_get_paper_var): new function
1978 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1980 * VERSION (PATCH_LEVEL): 1.5.35 released.
1982 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1983 (bracket): New function.
1985 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1986 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1988 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1991 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1994 * lily/grob.cc (ly_get_grob_property): be anal about types.
1995 (ly_set_grob_property): idem
1997 * lily/figured-bass-engraver.cc (process_music): move molecule
1998 building completely to Scheme
2000 * lily/include/musical-request.hh (class Bass_figure_req): Add
2003 * lily/parser.yy (bass_figure): add support for space figure.
2005 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2007 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2009 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2010 (ly_align_to_x): new function ly-align-to!
2012 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2013 function ly-get-font
2015 * mf/feta-nummer.mf: include normal-space dimension.
2017 * lily/collision.cc (check_meshing_chords): don't merge collisions
2020 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2023 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2025 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2027 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2029 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2032 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2035 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2036 scm/grob-description.scm: added mensural fermata symbol
2038 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2040 * VERSION: 1.5.34 released.
2042 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2044 * lily/staff-symbol-referencer.cc (callback): assume that
2045 staff-position is unset in general.
2047 * input/regression/rest-pitch.ly: new file.
2049 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2052 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2054 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2055 as Scheme option. Run regression test by default with
2056 internal-type-checking.
2058 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2060 * lily/lily-guile.cc (type_check_assignment): changed functions.
2062 * scm/*description*.scm: be anal about typechecks. Some changes
2063 for internal variable names.
2065 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2067 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2069 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2071 * VERSION: 1.5.33 released.
2073 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2074 flare_path everywhere (c-clef, numbers).
2076 * lily/bar-number-engraver.cc (process_music): also print bar
2077 number if measure starts with grace note.
2079 * input/regression/grace-bar-number.ly: new test.
2081 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2083 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2086 * scm/music-functions.scm (voicify-music): split chords into
2087 different voices automatically.
2089 * lily/music.cc (ly_music_list_p): new function
2091 * lily/music-sequence.cc (do_relative_octave): robustification
2093 * scm/music-functions.scm: many utility functions
2095 * lily/music.cc (ly_set_mus_property): add type checks to the
2096 Scheme property assignment.
2098 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2101 * mf/lilypond.map: .map file from Mats' page.
2103 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2105 * Some more parmesan related fixes;
2107 * Custos: varying shape (in particular, stem length), depending on the
2108 vertical position of the custos (on staffline / between stafflines);
2110 * Custos: added grob property "neutral-direction" (same semantics as
2111 with stem); introduced new grob property "neutral-position";
2113 * Time-signature: print a warning when resorting to default layout.
2115 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2117 * lily/translator-group.cc (add_fresh_simple_translator): remove
2118 function; initialize() is called through
2119 Translator_group::initialize().
2121 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2122 for the neighbors of a loose column.
2124 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2125 position loose columns so that they don't collide.
2127 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2129 * VERSION: 1.5.32 released.
2131 * scm/font.scm: remove font-name symbol.
2133 * mf/GNUmakefile: use pktrace for making PFAs
2135 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2137 * lily/rest-collision.cc (do_shift): read direction field from
2138 rest-column in case of note-rest collision. This should fix some
2139 problems with rest collisions.
2141 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2143 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2146 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2147 property. Read pitch directly from #'cause.
2149 * mf/feta-puntje.mf: bugfix
2151 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2153 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2155 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2157 * Documentation/windows/compiling.texi: Update.
2159 * Documentation/index.texi: Add link to orphaned compiling for
2162 * Documentation/footer.html.in: Comment fix.
2164 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2166 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2168 * VERSION: 1.5.31 released
2170 * lily/new-spacing-spanner.cc: remove file.
2172 * lily/third-try.cc (do_measure): only take spacings into account
2173 if they pertain to the column pair under consideration. This fixes
2174 spacing bug when mixing eighths triplets and normal eighths.
2176 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2177 lines don't take up space anymore. Document why in note-head.cc
2180 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2182 * lily/font-interface.cc (get_font): reinstate
2183 #'font-magnification. See input/regression/font-magnification.ly
2184 (get_font): Change the definition of #'font-name grob property.
2186 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2187 that have a #'cause field.
2189 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2191 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2193 * mf/GNUmakefile: remove metapost stuff
2195 * stepmake/aclocal.m4: remove metapost detection stuff.
2197 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2199 * mf/GNUmakefile (FET_FILES):
2200 (FONT_FILES): Include parmesan.
2202 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2205 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2207 * Documentation/user/refman.itely (Paper size): Quote braces.
2209 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2211 * stepmake/aclocal.m4: fixed bison version check to be more
2214 * lily/stem.cc (position_noteheads): fix for cluster chords.
2216 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2218 * python 2.2 support.
2220 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2222 * VERSION: 1.5.30 released
2224 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2226 * Documentation/user/refman.itely (Dynamics): add a note about
2229 * scm/grob-description.scm: add a 'translator-type? object
2230 property, so that \property Foo.Bar =\turnOff doesn't cause
2233 * lily/translator-group.cc (add_fresh_group_translator): make
2234 new add-translator functions to make distinction between fresh and
2235 used group-translators. Fixes problem with scripts on auto-changing voice
2237 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2238 add to Score_performer. Fixes bar checks in MIDI
2240 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2241 heads. Fixes many quirks with ties.
2243 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2244 in the grob property #'cause, instead of using Grob_info.
2246 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2247 staff context, fixing dot alignment on collisions.
2249 * lily/beam-engraver.cc (try_music): remove can't find beam start
2250 warning, so that skipTypesetting won't complain.
2252 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2254 * Documentation/user/refman.itely (Paper size): Documentation fix,
2257 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2259 * scm/grob-description.scm: \breathe: Use feta font comma by default
2261 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2263 * input/template/piano-dynamics.ly (pedal): Simplified
2265 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2267 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2269 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2271 * lilypond-mode.el (LilyPond-command-query): ignore case.
2273 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2275 * VERSION: 1.5.29 released
2277 * all files: change 2001 to 2002 in headers globally
2279 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2280 cheese") font. WARNING: fonts changed.
2282 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
2284 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2286 * mf/*.mf: Added some more vaticana/solesmes style font symbols
2288 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2290 * mf/*.mf: Fixed a few typos in various .mf files
2292 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2294 * mf/: added macro soft_penstroke
2296 softened some glyphs
2297 redrawn triangular noteheads
2299 added classical quarter rest
2301 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2303 * lily/bar.cc: Bugfix: repeat dots when even number of staff
2304 lines and staff_space>=2
2306 * lily/rest.cc: Use default rests when current style glyphs not
2308 \property Staff.Rest \override #'style = #'classical
2310 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
2312 * input/bugs/first-tie.ly: New file.
2314 * input/bugs/spacing-clash.ly: New file.
2316 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
2320 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2322 * lilypond-indent.el: New file providing indentation for
2323 parenthesised blocks of lilypond code in Emacs
2325 * lilypond-font-lock.el: Changes to the syntax table to facilitate
2326 indentation and handle block comments properly. Distinguish
2327 accents from close-brackets in fontification.
2329 * lilypond-mode.el: LilyPond-indent-command set appropriately.
2331 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
2333 * Documentation/windows/installing.texi:
2334 * Documentation/windows/compiling.texi: Include from 1.4.10.
2336 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2338 * input/bugs/first-midi-tie.ly: New file.
2340 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
2342 * VERSION: 1.5.28 released
2344 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2345 illicit beams on [c4 c4] etc.
2347 * lily/bar-check-iterator.cc (Bar_check_iterator): new
2348 file. Make separate iterator for Bar_checks. Bar_check now happen
2349 outside engravers, meaning that you can use them with
2350 skipTypesetting. Associated changes in other files.
2352 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2355 * lily/spacing-spanner.cc (stem_dir_correction): removed function
2357 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2359 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2361 * lily/stem.cc (set_spacing_hints): removed function
2363 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2364 correction for spacing; now take vertical extents of the stem into
2367 * lily/third-try.cc: More hacking to get spacing working.
2369 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2370 sits at staff level and creates note spacing objects. Scrap it
2371 again, and document why.
2373 * lily/include/group-interface.hh: rename functions.
2375 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
2377 * stepmake/stepmake/c++-rules.make:
2378 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2380 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
2382 * make/lilypond-vars.make:
2383 * scripts/ly2dvi.py (setup_environment):
2384 * scripts/lilypond-book.py (setup_environment): Also set tex
2387 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2389 * VERSION: 1.5.27 released.
2391 * Documentation/user/refman.itely (Bar numbers): added bar number
2394 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2397 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
2399 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2400 spread the last few lines all over the last page of a score.
2402 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
2404 * lily/third-try.cc: 3rd try at revising spacing
2405 engine. Not yet finished.
2407 * lily/paper-column.cc (brew_molecule): print debugging marks on a
2410 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2411 collecting past note heads.
2413 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2416 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2417 class. Keep a queue of grobs that are still playing in busyGrobs.
2419 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2420 function. Use busyGrobs to detect playing notes.
2422 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
2424 * Documentation/topdocs/INSTALL.texi: Added note about broken
2425 python-2.1. Updated note for Debian's broken (well, broken for
2426 our use anyway) tex configuration.
2428 * scripts/lilypond-book.py (re_dict): python2.2 fix.
2430 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
2431 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2433 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2434 (But left margin of png's still misses a few pixels. Arg.)
2436 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
2438 * lilypond-mode.el (LilyPond-command-next-midi): Make
2439 possible to kill midi-process (using "C-c C-m").
2441 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
2443 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2444 Convert strings with dimensions to numbers.
2446 * lily/volta-engraver.cc: only make a bracket for the top staff,
2447 as found in stavesFound.
2449 * lily/bar-number-engraver.cc: remove staff administration.
2451 * lily/mark-engraver.cc (acknowledge_grob): remove staff
2452 administration. This breaks support for invisible-staff.
2454 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2455 symbols into stavesFound.
2457 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2458 grobs, and put them into columns.
2460 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2461 Engraver_group_engraver as a potential candidate for ack'ing grobs.
2463 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
2465 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2466 midi section in the Emacs-mode, so it is possible to play certain
2467 score in a multiscore lilypond-file.
2469 2001-12-09 Rune Zedeler <rune@zedeler.dk>
2470 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2471 (FIXME: not accessible from guile)
2473 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2474 better support for Kurt Stone's suggestions.
2475 Removed properties: noResetKey, forgetAccidentals, autoReminders,
2477 Changed property: localKeySignature.
2478 Added properties: extraNatural, autoAccidentals,
2481 (BUGFIX: broken-tie-support destroyed in 1.5.16)
2483 * ly/property-init.ly: added commands
2484 \defaultAccidentals \modernAccidentals \modernCautionaries
2485 \noResetKey \forgetAccidentals
2487 * ly/engraver-init.ly: Correct initialization of new accidentals.
2489 * scm/translator-property-description.scm: The new properties
2492 * input/: Some examples added, some changed.
2494 * Documentation/regression-test.tely: Added quick test of new
2497 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2499 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2502 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2504 * lily/beam.cc (before_line_breaking): Make beams without stems
2505 or with only one stem disappear.
2507 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2509 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2510 files to have standardised HTML bibliography output. Update build
2511 docs to reflect this.
2513 * lily/include/simple-spacer.hh (struct Simple_spacer): add
2514 active_count_, so that we don't have to look for active springs
2517 * scm/interface-description.scm,scm/grob-property-description.scm:
2520 * lily/simple-spacer.cc (solve): Handle forced line breaks
2521 here. Fixes problems when combining linebreaks with non-fitting
2524 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
2526 * 1.4.9.jcn3 forward ports.
2528 * Really included .cvsignore.
2530 * Included Han-Wen's uu1 windows fixes.
2532 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2534 * Added Cygwin setup.hint
2536 * Removed tex, python wrappers and postinstalls to go with Cywgin's
2537 tetex/texmf, python installations.
2539 * Updated cygwin installer.
2541 * ly2dvi: Don't accept filenames with spaces (+ fix).
2543 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
2545 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2547 * lily/translator-def.cc: Remove manual symbol caching.
2549 * lily/script-column.cc (before_line_breaking): robustness check:
2550 don't crash if no direction set.
2552 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2554 * scripts/pmx2ly.py (Parser.parse_header): more generic header
2558 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
2560 * lily/note-head.cc (head_extent): added to compute width without
2561 ledger lines. By default, ledger lines take up width now.
2563 * input/regression/fingering.ly: demonstrate auto fingering.
2564 Horizontal placement is still buggy.
2566 * lily/fingering-engraver.cc (class Fingering_engraver):
2567 added. Provides support for horizontal fingering scripts
2569 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2571 * lily/side-position-interface.cc (add_staff_support): add staff
2572 only for Y-axis side positions.
2574 * lily/parser.yy (request_chord): Fix mem leak.
2576 * lily/musical-request.cc (transpose): moved to Music::transpose()
2578 * lily/include/grob-info.hh: Change music pointer to SCM, so we
2579 can store grobs as grob-creation cause as well.
2581 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2582 handle when adding. Use precomputed symbols throughout lily.
2584 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2585 track of spacing issues.
2587 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2588 to keep track of staff spacing
2590 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2592 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2593 code clean from conditionals and have a concentrated sets of
2594 compatibility fixes for old guile versions.
2596 * Fixes for guile 1.4, including embedded ps.
2598 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2600 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2601 well for markup texts.
2603 * lily/musical-request.cc (length_mom): kludge for null pointer.
2605 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2607 * scm/lily.scm (sign): bugfix
2609 * CHANGES: Change log instated.
2611 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.