1 2002-06-24 Han-Wen <hanwen@cs.uu.nl>
3 * lily/grob-scheme.cc: new file
5 * lily/break-substitution.cc: split up break substitution
6 functionality, and make a special constant stack-space version for
7 lists of grobs. This should fix the problems of lily in
8 combination with pthreads/qthreads.
10 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
12 * lily/grob.cc (mark_smob): bugfix: mark X parent too.
14 2002-06-23 Jan Nieuwenhuizen <janneke@gnu.org>
16 * Documentation/user/tutorial.itely (First steps): Add missing
19 * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
20 about guile --with-threads. Hopefully this issue can be resolved
21 rsn, but maybe we should even add warnings for the standard Debian
24 * configure.in: Warn if guile is configured to use threads. Maybe
25 we should make this an error (ie, add to REQUIRED list?)
27 * config.make.in (PACKAGE_NAME):
28 (PACKAGE, package): Don't hardcode.
30 * VERSION (PACKAGE_NAME): Typo fix.
32 2002-06-23 Han-Wen <hanwen@cs.uu.nl>
34 * input/tutorial/brahms-*.ly: new tutorial files.
36 * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
38 * scm/script.scm (default-script-alist): fermata is up.
40 * lily/dynamic-engraver.cc (stop_translation_timestep): stop
41 dynamic line spanner when there is no crescendo to connect.
43 * lily/tie.cc (get_control_points): add test to avoid flat ties.
45 2002-06-22 Han-Wen <hanwen@cs.uu.nl>
47 * lily/note-collision.cc (check_meshing_chords): don't crash if no
50 * scm/music-functions.scm (toplevel-music-functions): new
51 definition. Functions to apply automatically. Removes the need for
52 explicitly doing \apply #voicify-music
54 * lily/grob.cc (do_break_substitution): rename function, use
55 global var for criterion argument. Reduces stack usage a little.
57 * ly/engraver-init.ly (StaffContext): add Instrument_engraver
59 * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
60 visibility-lambda to break-visibility
62 2002-06-21 Jan Nieuwenhuizen <janneke@gnu.org>
64 * input/bugs/part-combiner.ly: New file.
66 * lily/include/spacing-interface.hh: New file.
68 * lily/include/spaceable-element.hh: Remove.
70 * input/test/script-priority.ly: New file.
72 2002-06-20 Han-Wen <hanwen@cs.uu.nl>
74 * lily/system.cc (output_lines): kill grobs that are only for spacing.
76 2002-06-20 Jan Nieuwenhuizen <janneke@gnu.org>
78 * lily/fingering-engraver.cc (make_script):
79 * lily/script-engraver.cc (process_music):
80 * lily/text-engraver.cc:
81 (process_acknowledged_grobs): Remove hard coded script-priority.
83 * flower/warn.cc: Cleanup.
85 * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
88 * aclocal.m4: Regenerate.
90 * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
92 * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
93 * lily/include/lily-guile.hh: Only include config.h if necessary.
95 * Changelog: cvs changes ml archive test #8.
97 * lily/slur-engraver.cc: Layout fix.
99 2002-06-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
101 * ly/engraver-init.ly (RhythmicStaffContext): add
102 Dot_column_engraver, resurrect barlines
104 * VERSION: 1.5.62 released.
106 * lily/engraver-group-engraver.cc (do_announces): rename
107 create_grobs () to process_acknowledged_grobs().
109 * lily/grob.cc (programming_error): add programming_error with
112 * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
113 fail if a beam doesn't have stems.
115 * lily/engraver-group-engraver.cc (do_announces): scary change in
116 calling convention of create_grobs(): no create_grobs() call
117 before acknowledge_grobs().
119 * lily/sequential-music-iterator.cc (skip): add support for grace
122 * lily/music.cc (Music): fix very subtle and nasty memory
123 corruption bug. Typical symptom: "programming_error: Rhythmic_req
126 * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
128 2002-06-19 Han-Wen <hanwen@cs.uu.nl>
130 * ly/engraver-init.ly (RhythmicStaffContext): add
134 * lily/parser.yy: various protection fixes. Less objects are now
137 2002-06-18 Jan Nieuwenhuizen <janneke@gnu.org>
139 * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
142 * Documentation/windows/zlily-profile.sh:
143 * Documentation/windows/post-lilypond.sh: Assume normal
144 prefix=/usr for lilypond.
146 * lily/musical-request.cc (length_mom): Display origin with error.
148 * input/test/duration-check.ly: New file.
150 * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
153 * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
154 ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
157 * autogen.sh: Regenerate.
159 * Documentation/topdocs/INSTALL.texi:
161 * stepmake/configure.in:
162 * stepmake/aclocal.m4: Revert autoconf upgrade. Autoconf 2.53 has
163 a serious bug wrt AC_CONFIG_AUX_DIR (reported). Creating
164 ./configure once again requires autoconf == 2.13.
166 * stepmake/autogen.sh: Check for autoconf == 2.13.
168 2002-06-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
170 * lily/parser.yy (open_request_parens): add input locations to
171 open and close parens.
173 2002-06-17 Chris Jackson <chris@fluffhouse.org.uk>
175 * lily/tuplet-bracket.cc:
176 * lily/text-spanner.cc:
177 * lily/piano-pedal-engraver.cc:
178 * scm/grob-description.scm:
179 * scm/grob-property-description.scm: Changed the
180 edge-width property of brackets to edge-widen. Changed the sign of
181 the left element of edge-widen so a pair of equal numbers produces
182 a symmetrical bracket.
184 2002-06-17 Han-Wen Nienhuys <hanwen@cs.uu.nl>
186 * ly/espanol.ly: added.
188 * lily/simple-spacer.cc (solve): remove assert.
190 2002-06-17 Han-Wen <hanwen@cs.uu.nl>
192 * lily/forbid-break-engraver.cc (class
193 Forbid_line_break_engraver): new engraver: forbid linebreaks
196 * lily/spacing-spanner.cc (loose_column): add another check: don't
197 move around bar lines as loose columns.
199 * scm/basic-properties.scm (default-break-barline): add pre-break
202 2002-06-16 Jan Nieuwenhuizen <janneke@gnu.org>
204 * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
205 well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
207 * scripts/lilypond-book.py (environment): Bugfix: update to new
208 TEXMF scheme, from ly2dvi.
210 * lily/lookup.cc (slur): Invoke bezier-bow.
212 * scm/tex.scm (bezier-bow):
213 * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
214 (Previously named bezier-sandwich).
216 * scm/tex.scm (bezier-sandwich):
217 * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
219 * make/lilypond.mandrake.spec.in (post):
220 * make/lilypond.suse.spec.in (post):
221 * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
223 * tex/lilyponddefs.tex: Uncomment feta character support.
225 * Documentation/user/refman.itely (Pitches): Add espanol.ly
228 * ly/catalan.ly: Add comment about (spanish) -s suffix.
230 * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
233 2002-06-14 Jan Nieuwenhuizen <janneke@gnu.org>
235 * GNUmakefile.in (short-examples):
236 (long-examples): Bugfix for --srcdir build.
237 (top-web): Rewrite weblist find command.
239 * stepmake/bin/config.sub:
240 * stepmake/bin/config.guess: Update from latest autotools.
243 * autogen.sh: Regenerate.
246 * stepmake/configure.in:
247 * stepmake/aclocal.m4: Run autoupdate. Creating ./configure now
248 requires autoconf >= 2.50.
250 * stepmake/autogen.sh: Check for autoconf >= 2.50.
252 * Documentation/user/refman.itely: Bugfix for tablature example.
254 * Documentation/windows/compiling.texi: Update for new and
257 2002-06-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
259 * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
260 introduce base-shortest-duration
262 * lily/parser.yy (music_output_def_body): don't crash when \tempo
263 in unexpected \midi{} is found.
265 2002-06-13 Jan Nieuwenhuizen <janneke@gnu.org>
267 * stepmake/GNUmakefile.in: Don't install stepmake. This breaks
268 the use of make/ly.make for use as an external makefile. Probably
269 noone except for myself ever used this anyway.
271 * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
272 to new $datadir convention (<package>/<version>).
274 2002-06-13 Han-Wen <hanwen@cs.uu.nl>
276 * VERSION: 1.5.61 released
278 * Document/user/refman.itely: tablature doc and code updates by
279 Jean-Baptiste Lamy <jiba@tuxfamily.org>
281 * input/template/piano-dynamics.ly: bugfixes.
283 * lily/key-engraver.cc (try_music): read request only once. Don't
284 overwrite lastKeySignature. Call create_key() only once. This
285 fixes a bug with multiple equal key changes on polyphonic staffs.
287 2002-06-12 Mats Bengtsson <mats.bengtsson@s3.kth.se>
289 * scm/grob-description.scm: Add side-position-interface to TextSpanner
291 * scm/grob-property-description.scm: Document the trill line type.
293 2002-06-12 Jan Nieuwenhuizen <janneke@gnu.org>
295 * stepmake/stepmake/generic-vars.make:
296 * make/lilypond-vars.make:
297 * GNUmakefile.in (builddir-setup): New setup for builddir run.
298 Fixes LilyPond run from builddir for --srcdir builds.
300 * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
303 2002-06-12 Han-Wen <hanwen@cs.uu.nl>
305 * scm/grob-description.scm (all-grob-descriptions): add
306 font-family to RehearsalMark
308 * scm/drums.scm: move over definitions from drum-pitch-init.ly
310 * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
313 2002-06-12 Heikki Junes <heikki.junes@hut.fi>
315 * lilypond-mode.el: Propose saving before applying a command:
316 for saved buffer set default command to LilyPond.
318 2002-06-11 Jan Nieuwenhuizen <janneke@gnu.org>
320 * buildscripts/mutopia-index.py (headertext_nopics): Add missing
323 * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
325 * Documentation/windows/lilypond-doc.hint: New file.
327 * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
328 Bugfixes for --srcdir html-doc build.
330 * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
331 Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
333 2002-06-10 Han-Wen <hanwen@cs.uu.nl>
335 * ly/script-init.ly (pralldown): add some scripts.
337 * Documentation/user/refman.itely: many edits.
339 2002-06-09 Han-Wen <hanwen@cs.uu.nl>
341 * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
342 direction, this breaks staffline avoidance of the bracket when
345 2002-06-08 Mats Bengtsson <mats.bengtsson@s3.kth.se>
347 * scripts/midi2ly.py: Fix handling of -o
349 2002-06-08 Han-Wen <hanwen@cs.uu.nl>
351 * lily/molecule.cc (translate): set max distance to 100 cm.
353 2002-06-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
355 * VERSION: 1.5.60 released
357 * lily/beam.cc: tremolo fix.
359 * scripts/convert-ly.py: add tuplet-X-visibility rules.
360 add VerticalExtent -> verticalExtent rules.
362 * lily/axis-group-engraver.cc: consistent case for
363 XxxxVerticalExtent properties.
365 * Documentation/user/refman.itely (Tuplets): update
366 tuplet-X-visibility properties.
368 * input/test/defaultbars.ly: Corrected (thanks Mats)
370 2002-06-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
372 * lily/beam.cc (shift_region_to_valid): fix stupido bug.
374 * buildscripts/lilypond-profile.sh: override settings if
375 LILYPONDPREFIX is set.
377 2002-06-04 Mats Bengtsson <mats.bengtsson@s3.kth.se>
379 * scripts/ly2dvi.py (non_path_environment): Fix typo
381 2002-06-03 Heikki Junes <heikki.junes@hut.fi>
383 * lilypond-mode.el: Extend "Quick notes" containing note tuples.
385 * lilypond-font-lock.el: Add fixes and comments to syntax-table.
387 2002-06-03 Han-Wen <hanwen@cs.uu.nl>
389 * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
390 beam-engraver: use different engraver so we can mix normal and
393 2002-06-01 Han-Wen <hanwen@cs.uu.nl>
395 * lily/beam.cc (shift_region_to_valid): Try to shift positions
396 after slope-damping and concaveness check, so that short-stems are
399 2002-05-31 Jan Nieuwenhuizen <janneke@gnu.org>
401 * stepmake/aclocal.m4: Fix for ash as /bin/sh.
403 2002-05-31 Han-Wen <hanwen@cs.uu.nl>
405 * VERSION: 1.5.59 released
407 * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
408 notice that missing features are exercise for user.
410 2002-05-30 Jan Nieuwenhuizen <janneke@gnu.org>
412 * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
413 (but alas, not partly precomputed) value for current_y when
414 calculating stem length demerits.
415 (calc_stem_y): Temporary precomputed factors fix.
417 * lily/stem.cc (calc_stem_info): Take multiplicity into account
420 * input/bugs/melisma-tie-rest.ly: New file.
422 2002-05-30 Han-Wen <hanwen@cs.uu.nl>
424 * lily/stem.cc (calc_stem_info): remove min_y member, rename
425 stuff. Remove kneeing stuff.
427 * lily/beam.cc (brew_molecule): remove beam direction. Lots of
430 2002-05-29 Jan Nieuwenhuizen <janneke@gnu.org>
436 * scm/tex.scm: Add check for Guile-1.4.1. Guile includes
437 patch-level of version in minor-version string. Arg.
439 2002-05-29 Han-Wen <hanwen@cs.uu.nl>
441 * ly/engraver-init.ly (TabStaffContext):
442 enable TabStaff by default.
444 * Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
446 2002-05-28 Jan Nieuwenhuizen <janneke@gnu.org>
448 * config.hh.in: Remove duplicate DIR_DATADIR entry.
450 * aclocal.m4: Regenerate.
452 * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
454 2002-05-25 Heikki Junes <heikki.junes@hut.fi>
456 * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
458 * lilypond-mode.el: Write notes with fewer keystrokes trough a
459 "Quick notes"-interface.
461 2002-05-26 Jan Nieuwenhuizen <janneke@gnu.org>
463 * input/regression/non-empty-text.ly: Update example with outdated
466 2002-05-25 Han-Wen <hanwen@cs.uu.nl>
468 * scripts/convert-ly.py: add textNonEmpty rule
470 * lily/text-engraver.cc (create_grobs): remove textNonEmpty
472 2002-05-24 Jan Nieuwenhuizen <janneke@gnu.org>
474 * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
475 using translate-robust add_molecule instead of add_at_edge.
476 Bugfix for #(lines (finger "" "1")).
478 2002-05-24 Han-Wen <hanwen@cs.uu.nl>
480 * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
483 2002-05-22 Han-Wen <hanwen@cs.uu.nl>
487 * Documentation/user/refman.itely: Bugfix: add node Repeats and
488 MIDI. Regenerate menu. Fix @end example.
490 * lily/accidental.cc: Add cautionary-style to interface.
492 * mf/feta-beugel.mf (code): use autometric macros for braces.
493 This fixes input/bugs/braces.
495 * lily/afm.cc (count): return numOfChars, not size of array
498 * lily/script.cc (before_line_breaking): postpone setting the
499 X-parent of vertical scripts. This fixes the case of scripts on
502 2002-05-21 Han-Wen <hanwen@cs.uu.nl>
504 * scm/grob-description.scm: fix alignment of barnumber: make sure
505 it doesn't hit the G-clef.
507 * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
508 startGraceMusic not startGraceContext).
510 2002-05-20 Jan Nieuwenhuizen <janneke@gnu.org>
512 * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
515 2002-05-20 Han-Wen <hanwen@cs.uu.nl>
517 * lily/accidental-engraver.cc: remove old accidental engraver,
518 move new one to accidental-engraver.cc.
520 * lily/local-key-item.cc: remove file
522 * lily/include/local-key-item.hh: remove file
524 * scripts/ly2dvi.py (make_preview): add --preview-resolution
527 * lily/accidental.cc (brew_molecule): support for cautionary
530 * lily/note-head.cc (internal_brew_molecule): warn if note head
533 * lily/time-signature.cc (special_time_signature): remove warning
534 about time signature.
536 * lily/spacing-spanner.cc (musical_column_spacing): Prevent
537 reverse springs by limiting fixed-note space.
539 2002-05-19 Jan Nieuwenhuizen <janneke@gnu.org>
541 * stepmake/aclocal.m4: Bugfix: complain if program not found.
543 * scripts/update-lily.py (next_version, prev_version, diff_name):
544 New function. Patches now named name-prev-latest.diff.gz.
545 Bugfix: import shutil.
547 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
549 * input/tutorial/sammartini.ly: fix and document autochange
552 * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
553 does produce .pdftex files.
555 * lily/note-collision.cc (check_meshing_chords): move file from
556 collision.cc, implement merged note heads (there you go, Drarn :-)
558 * input/regression/collision-heads.ly: new file
560 * VERSION: 1.5.57 released.
562 2002-05-18 Juergen Reuter <reuter@ipd.uka.de>
564 * mf/parmesan-heads.mf, scm/grob-description.scm,
565 scm/grob-property-description.scm, scm/interface-description,
566 lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
567 lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
568 lily/include/ligature-engraver.hh,
569 lily/include/ligature-bracket.hh, lily/parser.yy,
570 lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
571 lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
572 lily/ligature-head.cc, lily/ligature-engraver.cc,
573 lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
574 implemented white mensural ligatures (still with a big list of
578 2002-05-19 Han-Wen <hanwen@cs.uu.nl>
580 * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
581 Documentation/user/internals.itely.
583 * lily/function-documentation.cc: new file. Infrastructure for
584 self documenting Scheme functions.
586 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
588 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
590 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
592 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
593 and * (as in "([^>]*)?")
595 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
597 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
598 Add info about CVS. Stable/development are currently 1.4/1.5,
599 both at lilypond.org.
601 * autogen.sh: Generate.
603 * stepmake/configure:
604 * configure: Regenerate.
606 * stepmake/stepmake/automatically-generated.sub.make: Keep
609 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
611 * stepmake/stepmake/generic-targets.make (configure): Generate
614 * GNUmakefile.in (SCRIPTS):
615 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
617 * stepmake/autogen.sh: New file.
619 * configure: Check for g++ >= 2.95.
621 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
622 c/c++ version checking.
624 * flower/include/string.hh: Typo fix.
626 * lily/include/midi-item.hh: Remove stray i.
628 * Documentation/windows/GNUmakefile: Avoid collapsed directory
631 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
632 constructs '//' from arguments.
634 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
636 * scm/lily.scm (ly-load): show SCM filenames if verbose.
638 * lily/lily-guile.cc (init_functions): add ly-verbose function.
640 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
642 * flower/include/{pointer,tuple}*: removed.
644 * VERSION: released 1.5.56
646 * scm/music-functions.scm (check-start-chords): function to check
647 for chords without \context. Apply automatically from parser.
649 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
651 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
654 * scm/output-lib.scm: fix ez notation stems.
656 * lily/paper-outputter.cc: various fixes to speed up compilation.
658 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
660 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
662 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
664 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
665 determine latex input.
667 * stepmake/bin/install-sh: Include latest from libtool.
669 * stepmake/configure:
670 * configure: Regenerate.
672 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
673 (USER_CFLAGS): Bugfix, include CPPFLAGS.
675 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
677 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
678 REQUIRED programs and version. Try to continue configuring, list
679 missing programs at the end, but don't generate a GNUmakefile if
680 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
681 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
682 fancy for some older systems.
684 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
686 * lily/score-engraver.cc (typeset_all): sanity check for items
687 that are Y parent to spanner.
689 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
692 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
694 * lily/*.cc: remove as many iostream use as possible.
696 * flower/ : remove text-db, text-stream, data-file.
698 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
700 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
701 (completize_preamble): don't barf if no preamble present.
702 (do_file): allow extensions on --output
704 * scripts/ly2dvi.py (make_preview): make automatic preview of
705 first system. Small cleanups.
707 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
709 * scripts/lilypond-book.py (make_pixmap): output png directly.
711 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
714 * lily/parser.yy (My_lily_parser): comment out code. (Causes
715 problems with recent bison releases).
717 * make/lilypond.redhat.spec.in: add pfa fonts to X.
719 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
721 * lilypond-font-lock.el: Fixes the order of the note name list.
723 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
725 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
726 capability, --verbose option, rlimit hack.
728 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
730 * lily/piano-pedal-engraver.cc: cleanups.
732 * lily/accidental.cc (after_line_breaking): add break tie
735 * lily/text-engraver.cc (try_music): don't typeset fingerings
737 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
739 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
741 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
743 * lily/*.cc: change gh_str02scm() to ly_str02scm().
745 * lily/spacing-spanner.cc (note_spacing): Bound
746 shortest-playing-length by the distance to next note. This should
747 fix chord tremolo spacing.
749 * VERSION: 1.5.55 released
751 * lily/stem.cc (off_callback): invisible stem over whole note is
752 centered on note now.
754 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
755 stem-tremolo is stem now.
757 * input/mozart-hrn*.ly: many corrections.
759 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
760 support for dynamic scripts.
762 * lily/accidental-placement.cc (position_accidentals): check for
763 collisions as well: should avoid those heads too.
765 * lily/beam.cc (check_concave): allow undefined gap and
766 threshold. Change the meaning of threshold/gap == 0.0.
767 (check_concave): skip Stolba concaveness check if we have a knee
770 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
772 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
773 tremolos of dotted duration.
775 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
777 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
778 downstroke again. Sigh.
780 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
783 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
785 * lily/slur.cc (add_column): allow slur over rest.
787 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
789 * lily/beam.cc: move scoring constants out of code
791 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
793 * mf/feta-nummer.mf: scalability fixes.
795 * mf/feta-nummer-code.mf: fixes for 5, 8.
797 * mf/feta-klef.mf: G clef fixes.
799 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
801 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
803 * scripts/lilypond-book.py: %Newline, rather than glue macros
804 after \end{verbatim}.
806 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
808 * Documentation/user/lilypond-book.itely:
809 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
812 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
814 * scm/grob-property-description.scm (beam-space): Junk.
816 * lily/beam.cc (space_function): New method.
817 (get_interbeam): Call space-function.
819 * scm/grob-description.scm (Beam): Initialize space-function with
820 Beam::space_function.
822 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
823 Beam.space-function. Don't quantise grace beams.
825 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
827 * VERSION: 1.5.54 released
829 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
832 * Documentation/index.texi: add PDF links.
834 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
836 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
837 compare #'glyph as strings.
839 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
841 * scripts/ly2dvi.py (setup_environment): fix by Mats.
843 * lily/stem.cc (head_count): Change function name. Change property
844 to #'note-heads i.s.o. #'heads.
845 (position_noteheads): Kern noteheads for invisible stems.
846 (before_line_breaking): Do position_noteheads() for whole note
849 * lily/accidental-placement.cc (position_accidentals): First
850 determine refpoints, only then determine extents.
852 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
854 * lily/accidental-placement.cc (position_accidentals): use all
855 note heads for note head-skyline.
857 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
859 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
861 * Documentation/windows/setup.hint (requires): Add gsview dependency.
863 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
865 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
867 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
869 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
871 * mf/feta-schrift.mf: lighter staccato.
873 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
875 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
877 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
879 * VERSION: 1.5.53 released
881 * scm/lily.scm (ly-load): use primitive-load for loading.
883 * lily/misc.cc: remove quantise_iv()
885 * lily/*.cc: pass read-only arrays by reference.
887 * lily/grob.cc (common_refpoint_of_array): new function. Try to
888 use common_refpoint_of_{array, list} when possible.
890 * lily/include/accidental-placement.hh: new file.
892 * lily/accidental-placement.cc (alignment_callback): position
893 accidentals in a better way.
895 * lily/skyline.cc: new file. Compute distances for collections of
898 * lily/include/skyline.hh: new file
900 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
902 * lily/accidental.cc (class Accidental_interface): grob for a
905 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
908 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
909 together with new accidental-interface.
911 * lily/include/*.hh: remove spurious set_interface() decls.
913 * lily/key-signature-interface.cc (brew_molecule): add padding for
914 natural signs. Make natural typesetting like the sharp.
917 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
918 is now slightly curved, not straight.
921 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
923 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
925 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
926 more strictly. Use more clever regular expressions. Commented regexps.
928 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
930 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
932 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
934 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
935 to control width of staff symbol in ragged-right mode (by request
938 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
939 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
940 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
941 added support for ligature brackets (needed when transcribing
944 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
946 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
947 Fontify notes more strictly.
949 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
951 * mf/feta-din-code.mf: dynamic z sign.
953 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
955 * lilypond-mode.el: Prevent recoloring strings and comments.
957 * lilypond-font-lock.el: Handle block comments: block comments
958 can have also ordinary comments inside.
960 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
962 * lily/stem.cc (get_default_dir): set direction to CENTER if
963 invisible. Various other fixes to deal with invisible stems and
964 stem-direction == CENTER.
966 * lily/rest-collision.cc (do_shift): take direction from note if
969 * input/regression/tie-grace.ly: new file.
971 * lily/tie-engraver.cc (create_grobs): fix tied graces.
973 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
974 knee correction. Fixes tight spacing for knees.
976 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
978 * VERSION: 1.5.52 released
980 * lily/*.cc: add some undocced properties.
981 scm/grob-description.scm: idem.
983 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
985 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
986 multi-measure rests like "R1 *4" and scheme (typically has '#'
987 in the beginning). Small fixes. Add few reserved words.
989 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
991 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
994 * Documentation/windows/installing.texi: Suggest gswin32c (console
995 program) for getting the version. Layout fixes.
997 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
999 * Documentation/user/tutorial.itely (Running LilyPond): Separate
1000 windows viewing commands, remove silly comment about Yap.
1002 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
1004 * Documentation/topdocs/INSTALL.texi: Describe how to learn
1005 configure to find kpathsea on for example Slackware 8.0.
1007 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1009 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1010 by default: avoid "1" over single bar rests.
1012 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1013 and correct the handling of geometry options.
1015 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1017 * lily/include/grob-interface.hh (ADD_INTERFACE): make
1018 implementation for Class::has_interface automatically. Junk all
1019 other implementations.
1021 * lily/grob.cc (internal_get_grob_property): also typecheck
1022 property reads. Catches even more undocced properties. Bugfixing
1023 left for the uninspired masses.
1025 * lily/beam.cc: remove end_after_line_breaking().
1027 * lily/grob.cc (calculate_dependencies): remove list support for
1030 * lily/font-size-engraver.cc: only do font-interface.
1032 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
1034 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1037 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1039 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1040 brackets using arpeggio requests.
1042 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1043 molecule-callback to use for drawing the brackets.
1045 * Documentation/user/refman.itely:
1046 * input/test/chord-bracket.ly: Chord brackets documented
1048 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
1050 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
1052 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1054 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1056 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1057 direction tuplets on beams.
1059 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
1061 * lilypond-indent.el: Bugfix of indentation of final point in buffer
1063 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
1065 * lilypond-mode.el: new command: LilyPond-un-comment-region.
1066 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
1067 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1068 submenu to "LilyPond"-menu.
1070 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1071 an interface to play midi.
1073 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1075 * input/regression/script-stack-order.ly: new file.
1077 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
1079 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1081 * mf/feta-din-code.mf: kerning for dynamics.
1083 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
1085 * input/regression/dynamics-glyphs.ly: new file
1087 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1089 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1090 forte f for the 2 number. Some fixes for the other bulbed glyphs.
1092 * Documentation/windows/gs-profile.sh:
1093 * Documentation/windows/gsview-profile.sh: Remove. Functionality
1094 moved to gs/gsview windows packages.
1096 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
1098 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1099 finding out the duration. Fixes chord tremolo bug.
1101 * lily/completion-note-heads-engraver.cc (process_music): Set
1102 correct duration for all requests of the broken notes.
1104 * input/regression/completion-heads.ly: Added example of
1105 Completion_heads_engraver.
1107 * lilypond-mode.el: Added "2Midi" command
1109 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
1111 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1112 edge-width, edge-height and shorten-pair properties for tuplet
1115 * lilypond-indent.el: Support for blinking of matching parentheses
1117 * lilypond-font-lock.el: Fix fontification of closing > on its own line
1119 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1120 cleanups of piano pedal brackets.
1122 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
1124 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1126 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
1128 * mf/feta-new-code.mf: new dynamic f sign.
1131 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
1133 * mf/feta-new-code.mf: new dynamic p sign.
1135 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1137 * lily/note-spacing.cc (stem_dir_correction): only do
1138 beam-correction if a beam is there.
1140 * lily/stem.cc (duration_log): change from flag_i (); better
1142 (get_default_stem_end_position): fix dot/flag collision code.
1144 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
1146 * VERSION: release 1.5.50
1148 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1149 unit spring here. Reduces number of warning messages.
1151 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1153 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1155 * scm/generic-property.scm: remove generic-property, property-engraver
1157 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1159 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1161 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1163 * scm/*.scm: remove volta, hairpin and tuplet functions.
1165 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1166 note column for notes/stems/dots that already have parents. Fixes
1167 nested grace contexts.
1169 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1171 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1172 get too curved slurs.
1174 * scm/slur.scm (default-slur-extremity-offset-alist)
1175 (default-phrasing-slur-extremity-offset-alist): Move slur
1176 attachments further away from note-head, vertically. Also, leave
1177 a horizontal gap between slur and stem end.
1179 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1181 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1183 * input/regression/spacing-grace-duration.ly: new file
1185 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1186 for shortest durations.
1188 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1189 extent of the mm rest.
1191 * lily/spacing-spanner.cc (get_duration_space): better spacing for
1194 * lily/tuplet-bracket.cc (make_bracket): new function
1195 (get_x_offset): new function; make tuplet brackets align on stems
1196 if stem has same direction.
1197 (parallel_beam): be anal about matching bracket to tuplet.
1199 * lily/lookup.cc (line): new function Lookup::line().
1201 * scm/tex.scm (dashed-line): change -line to -system in names.
1203 * lily/box.cc (add_point): new function.
1205 * flower/include/interval.hh: new function add_point ().
1206 new function widen()
1208 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1210 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1212 * scm/grob-property-description.scm (number-threshold): Add
1215 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1216 rest if #measures > number-threshold. Use padding (well, fake
1219 * scm/font.scm (make-style-sheet): New styles: mark-number,
1221 (paper20-style-sheet-alist): Add bigger bold fonts.
1223 * lily/mark-engraver.cc (process_music): Use style mark-number or
1226 * .cvsignore: Ignore all kinds of lilypond input and output.
1228 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1230 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
1232 * lily/staff-symbol.cc (brew_molecule): make line thickness
1235 * lily/*.cc: replace stafflinethickness by linethickness.
1237 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
1239 * input/regression/beam-concave.ly: Add to-be-considered-concave
1242 * lily/beam.cc (check_concave): Add check for large gap between an
1243 inner notehead and the line through outer noteheads.
1245 * scm/grob-description.scm (Beam): Add concaveness-gap, default
1246 value 2.0 staff-space.
1248 * scm/grob-property-description.scm (concaveness-gap): Add
1251 * input/mozart-hrn3-allegro.ly: Fix typo.
1253 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
1255 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1256 lily/note-head-engraver: improved implementation of roundfilledbox
1257 (according to Han-Wen's request)
1259 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1260 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1261 lily/simple-spacer.cc: ragged-right alignment
1263 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
1265 * input/regression/spacing-note-flags.ly: new file
1267 * input/regression/spacing-rest.ly: new file
1269 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1271 * lily/spacing-spanner.cc (note_spacing): make note spacing after
1272 all grace notes tight (not only the column directly following a
1275 * scm/grob-description.scm (all-grob-descriptions): don't make
1276 mm-rests larger than normal.
1278 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1279 curved. Remove white space at the right of flags.
1281 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1283 * ports/ports.make: Bugfix: ignore CVS directories.
1285 * stepmake/.cvsignore: New file.
1287 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
1289 * lily/note-spacing.cc (stem_dir_correction): don't correct when
1290 there is a flag on the stem.
1292 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1294 * scm/grob-property-description.scm (measure-length):
1295 measure-length grob property.
1297 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1298 better spacing for breakable columns when they're juxtaposed: use
1299 measure length if applicable
1301 * lily/timing-engraver.cc (start_translation_timestep): store
1302 measure length in breakable column at start of measure.
1304 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
1306 * ROADMAP: Add description for ports dir, to check email upon
1309 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
1311 * VERSION: 1.5.48 released
1313 * lily/multi-measure-rest.cc (symbol_molecule): split off from
1315 (set_spacing_rods): Use symbol_molecule() to determine minimum
1317 (church_rest): split off from brew_molecule()
1318 (big_rest): split off from brew_molecule(). Construct using
1321 * mf/feta-eindelijk.mf: junk multi measure rest.
1323 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
1325 * lily/multi-measure-rest.cc (add_column): remove columns property.
1327 * lily/dynamic-engraver.cc (process_music): add more verbose warning
1329 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1332 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
1334 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1335 keywords covered, dropped some non-keywords, include R- and 128-notes
1337 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1339 * Code clean-up: Junk multiple implementations of ledger line
1340 creation in note_head, custos, and porrectus. This is important
1341 since there soon will be some more applications of ledger lines to
1342 come (e.g. ambitus engraver).
1344 * Make thickness of ledger lines adjustable. This is essential
1345 for mensural notation.
1347 * Fix some bugs in the current ledger_line implementation, most
1348 notably that of the horizontal extent of ledger lines which equals
1349 at least the extent of the metafont ledger_line character, and
1350 which grows(!) if the desired extent shrinks below this limit.
1352 * roundfilledbox: variable blotdiameter
1354 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
1356 * VERSION: 1.5.47 released
1358 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1360 * lily/porrectus.cc: change line-thickness to thickness, change
1361 stem-direction to direction.
1363 * scm/backend-documentation-lib.scm (check-dangling-properties):
1364 Automatically detect doc'ed properties that are not in an interface
1366 * scm/grob-property-description.scm: property cleanup. Remove many
1367 paper-column props that are non-existent.
1369 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1370 the grob has a molecule-callback.
1372 * lily/*.cc: remove many set_interface() calls, and their
1375 * input/regression/spacing-knee.ly: new file
1377 * input/regression/spacing-clef-first-note.ly: new file
1379 * lily/staff-spacing.cc (get_spacing_params): different spacing
1380 for pref matter to note at start of line, halfway during line.
1382 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1383 correction only if stems have same direction (i.e. not for
1384 stem-clef combination).
1385 (stem_dir_correction): maximal correction for knees.
1387 * lily/*.cc: many updates to interface descriptions.
1389 * lily/grob.cc (internal_set_grob_property): add interface check
1390 for every set_grob_property call
1392 * lily/*.cc: document interface stuff in C++
1394 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
1396 * lily/volta-bracket.cc: naming: change volta spanner to
1399 * input/bugs/*.ly: cleanup, remove lots of files.
1401 * buildscripts/mf-to-table.py (write_ps_encoding): generate
1402 .encoding file. WARNING: upgrade to pktrace 1.0.3
1404 * mf/feta-toevallig.mf: change PS name for parentheses.
1406 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1408 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1411 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
1413 * lily/scope.cc: remove file .
1415 * lily/include/scope.hh: remove file. Remove Scope class
1419 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1420 score_forbidden_quants): ): take out of SCM, pass parameters so
1421 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1423 (calc_stem_y): robustness: take care of last_visible_stem == 0.
1426 * lily/lily-guile.cc (ly_unit): return internal unit.
1428 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
1430 * lily/paper-outputter.cc (output_version): output internal unit
1431 from Paper_outputter
1433 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1435 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1437 * scripts/ly2dvi.py: clean up old .*pk font caching code.
1439 * scm/ps.scm: Use uppercase postscript font names for the standard
1442 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1443 Add all available TeX Type1 fonts, including Feta, to the
1444 Ghostscript font path.
1446 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1447 version (affects the FontName) in lilypond.map.
1449 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1450 documentation file to fetaNNlist.ly to avoid name collisions between
1451 lilypond generated .tex file and font .tex macros file.
1454 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
1456 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1457 made mensural longa and (semi-)brevis leaner
1459 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1461 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1462 clean-up: moved bezier shape and slope from porrectus to lookup
1464 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1465 and /usr/share/texmf/fonts
1467 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1469 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
1471 * lily/text-spanner.cc (brew_molecule): add #'thickness
1472 (brew_molecule): add corrections for thickness in molecule padding.
1474 * lily/line-spanner.cc (line_atom): make function private
1476 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1477 discover bounding box. This solves the cropping problem.
1479 * lily/bar-check-iterator.cc (process): Only resynchronize bar
1480 check when it fails. This fixes the combination of grace notes
1483 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
1485 * lily/repeated-music.cc (minimum_start): new Scheme callable function
1486 (first_start): new Scheme callable. This will fix repeated music
1487 starting with grace notes.
1489 * lily/music.cc (start_mom): check start-moment-function grob property.
1491 * VERSION: 1.5.45 released
1493 * input/regression/system-extents.ly: new regression test. Test
1496 * lily/system.cc: rename LineOfScore into System
1498 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1500 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1501 (ly_get_extent): new Scheme function ly-get-extent
1503 * ps/lilyponddefs.ps: use output-scale for line-x
1506 * scm/ps.scm (font-load-command):
1509 2002-03-20 Rune Zedeler <rune@zedeler.dk>
1511 * lily/beaming-info.cc: Stupid typo fixed
1513 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1514 support for cross-context auto-accidentals.
1515 Now the engraver can stay in Staff-context and see other contexts
1517 Changed properties: autoAccidentals, autoCautionaries
1519 * lily/translator-group.cc (set_children_property):
1520 Function added recursively setting the same property (deep_copied)
1521 for all children of a Translator_group.
1523 * ly/property-init.ly: added commands
1524 \pianoAccidentals \voiceAccidentals
1525 \modernVoiceAccidentals \modernVoiceCautionaries
1527 * ly/engraver-init.ly: Correct initialization of new accidentals.
1529 * scm/translator-property-description.scm: Updated
1531 * input/regression/accidental-voice.ly: Added
1533 * Documentation/regression-test.tely: Added new test
1535 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1537 * VERSION: 1.5.44 released
1539 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1541 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1543 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1546 * tex/feta*.tex: remove.
1548 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1549 all software dealing with it.
1551 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
1553 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1554 (this fixes pdf output). Drop awk dependency.
1556 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1557 dimensions (linewidth) are in mm.
1559 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1561 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1563 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1565 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
1567 * VERSION: 1.5.43 released
1569 * scm/beam.scm (beam-dir-majority-median): if majority is
1570 undecided, use median. Removes a forced dir in sarabande.
1572 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1574 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1576 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1577 widths, heights and shortens are now customisable properties.
1579 * scm/grob-description.scm, scm/grob-property-description.scm: New
1580 properties added to PianoPedalBracket, unnecessary
1581 Y-offset-callbacks removed from *Pedal, undocumented properties
1584 * Documentation/user/refman.itely: Piano pedal updates.
1586 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
1588 * scm/grob-property-description.scm:
1589 * scm/interface-description.scm: Remove old stuff.
1591 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1592 0.48 (previously 0.42).
1593 (Beam): Remove old stuff.
1596 * lily/stem-tremolo.cc:
1598 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1599 (previously space-function).
1601 * stepmake/bin/add-html-footer.py: Website title fix.
1603 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1605 * scripts/ly2dvi.py (environment): use new font searching setup.
1607 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1609 * lily/tfm.cc (dimensions): make code dimension independent
1611 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1614 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1616 * lily/include/dimensions.hh: try MM as internal unit.
1618 * scm/*.scm: remove invoke-dim1
1620 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1622 * GNUmakefile.in (fontpaths): add fontpaths target,
1624 * make/mutopia-targets.make: add PDF rules.
1626 * make/mutopia-rules.make: add pdf rule.
1628 * buildscripts/mutopia-index.py (list_item): add PDF.
1630 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1632 * make/lilypond-vars.make: set TEXMF for the new font setup.
1634 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1636 * VERSION: 1.5.42 released
1638 * mf/feta-schrift.mf: endless twiddling of Tr.
1640 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1641 endless twiddling with the bulb shape.
1643 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1644 little smaller if there is an accidental.
1646 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1648 * buildscripts/lilypond-profile.sh:
1650 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1651 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1652 Implement new font installation strategy
1654 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1655 the new font installation strategy.
1657 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1660 * input/test/staff-size.ly: Simplified using StaffContainer
1662 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1665 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1667 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1669 * lily/beam.cc (score_stem_lengths): new quanting stuff
1670 (score_forbidden_quants): Second and third beam quant stuff.
1672 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1674 * lily/beam.cc (least_squares): Remember least-squares-dy for
1676 (quantise_interval): Don't quant to dy steeper that
1677 least-squares-dy. Return empty interval if no sane quants found.
1678 (quantise_position): Try quantise_interval until we have
1679 acceptable solution.
1681 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1683 * scm/interface-description.scm (beam-interface): Update.
1685 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1687 * VERSION: 1.5.41 released
1689 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1690 optima serifs on top of t, bottom of r.
1692 * mf/feta-bolletjes.mf: make ledger line rounder.
1694 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1696 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1699 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1701 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1702 well as text pedal indications and a combination of both. All
1703 pedal indications are horizontally aligned on a line spanner.
1705 * lily/text-spanner.cc: Edge-width property added to use in
1706 bracketed piano pedals. Function setup_sustain_pedal added to set
1707 the dimensions of the brackets.
1709 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1710 some of the *Pedal properties tweaked.
1712 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1713 edge-width (TextSpanner) properties.
1715 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1717 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1718 fontified identifiers list.
1720 * input/test/pedal.ly: New pedal features added.
1722 * Documentation/user/refman.itely: New pedal features documented.
1725 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1727 * lily/include/new-beam.hh: Previously new-beam.hh
1728 * lily/beam.cc: Previously new-beam.cc
1729 (least_squares): Bugfix: don't barf on beams with less than two
1730 visible stems (tremolos).
1733 * scm/grob-description.scm (Beam): Junk old beam stuff.
1736 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1740 * mf/feta-eindelijk.mf: new 8th rest.
1742 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1743 stick out of staffline
1745 * scripts/lilypond-book.py: fixes for texi regular expressions.
1747 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1749 * lily/include/new-beam.hh:
1750 * lily/new-beam.cc: New file.
1752 * flower/include/interval.hh:
1753 * flower/include/interval.tcc (delta): New method.
1754 (swap): Now public (previously private).
1756 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1757 1 staff-line-thickness. Sadly, this makes dy quanting problems
1758 (dy quants allowed should depend on actual left y) more visible.
1760 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1762 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1764 * scm/grob-property-description.scm (concaveness-threshold): Add
1765 typecheck and description.
1767 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1768 concaveness-threshold (previously concaveness).
1770 * lily/beam.cc (check_concave): Remove choices and debugging
1771 stuff: use best concaveness calculation.
1772 (quantise_dy): Remove choice. Try to never make a slope steeper
1773 by quantising, but certainly never quantise a slope away.
1774 (check_stem_length_f): Remove choice. In case of lengthening
1775 alowed, always lengthen to ideal length.
1777 * Documentation/index.texi: Fix FAQ url.
1779 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1780 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1782 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1784 * VERSION: 1.5.39 released
1786 * lily/simple-spacer.cc (add_rod): rods take precedence over
1787 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1789 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1791 * lily/note-spacing.cc (get_spacing): only insert space for
1792 accidentals if necessary.
1794 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1796 * lily/spacing-spanner.cc (musical_column_spacing): new
1797 function. Have correct spacing from note to end-of-line as well.
1799 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1801 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1803 * darwin.patch: New file.
1805 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1806 code. Shorten stems by fraction of stems to be shortened.
1808 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1809 of shorten value for boundary cases.
1811 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1812 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1814 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1816 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1818 * scm/grob-description.scm (Beam): Add concaveness. Replace
1819 Beam::cancel_suspect_slope with Beam::check_concave.
1821 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1822 set slope to horizontal if concaveness > Beam.concaveness. This
1823 handles cases that kludgy cancel_suspect_slope was meant to catch
1825 (cancel_suspect_slope): Remove.
1827 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1829 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1830 stemLeftBeamCount and stemRightBeamCount to equal 0.
1833 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1835 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1836 fixed spacing for pref matter, if the next column is musical, and
1839 * lily/note-spacing.cc (stem_dir_correction): Use correct
1840 discretionary for stem-bar spacing.
1842 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1844 * VERSION: 1.5.38 released
1846 * lily/grob.cc (warning): Use cause tracking to give more
1847 meaningful errors from the backend.
1849 * lily/property-iterator.cc (check_grob): Warn if setting grob
1850 property in unknown grob.
1852 * mf/feta-toevallig.mf: brushed stems for natural sign.
1854 * lily/molecule.cc (align_to): don't translate empty molecule.
1855 (this triggers a very subtle bug in time-signature.)
1857 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1859 * lily/spring.cc: remove file.
1861 * input/regression/spacing-stem-bar.ly: new file
1863 * lily/score.cc (run_translator): resurrect point-and-click
1865 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1868 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1869 spacing is now globally determined, using the most common shortest
1870 note. Notes that are shorter are spaced geometrically, and with
1871 expand hints. This makes spacing more even, and measures that have
1872 very short notes won't be that stretched out.
1874 * mf/feta-klef.mf: F-clef fixes, documentation on the
1875 shape. (WARNING: font changed.)
1877 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1879 * lily/simple-spacer.cc (add_columns): support for infinitely
1882 * lily/staff-spacing.cc (get_spacing_params): space after
1883 prefatory matter is fixed.
1885 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1887 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1888 barline following an upstem.
1890 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1891 function from next_notes_correction().
1892 (bar_y_positions): idem.
1894 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1896 * input/regression/break.ly (texidoc): bugfix: escape \ in
1899 * lily/staff-spacing.cc (next_notes_correction): Correct the
1900 spacing of a note following a barline.
1903 2002-03-04 Glen Prideaux
1905 * mf/feta-solfa.mf: Shaped note heads
1907 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1909 * VERSION: 1.5.37 released
1911 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1912 left-align molecule.
1914 * lily/break-align-interface.cc (do_alignment): completely
1915 rewritten. Now it does not use Align_interface anymore, but a
1916 separate routine. Like StaffSpacing, it reads space-alist from the
1917 breakable grobs. This allows you to set spacing using
1919 \property Staff.Clef \override #'space-alist = '(....stuff....)
1921 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1922 to Bar_line. Move files around as well.
1924 * lily/time-signature.cc (time_signature): left align time signatures.
1926 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1927 Corrections of the glyph shape C. Comments added.
1929 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1931 * lily/spacing-spanner.cc: move from third-try.cc; rename
1932 Third_spacing_spanner to Spacing_spanner.
1934 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1935 spacing stuff. Much cleaner now, and we prepare for neat spacing
1936 tricks around bar lines and such.
1938 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1939 variables with themselves. (Ouch.)
1941 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1944 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1948 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1951 * lily/music.cc (ly_get_mus_property): typechecking
1952 (ly_set_mus_property): idem
1953 (ly_make_music): idem
1954 (ly_music_name): idem
1956 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1958 * lily/note-spacing.cc (stem_dir_correction): correction for
1959 same stem notes as well.
1961 * lily/pitch.cc (pitch_transpose): stricter typechecking
1963 * mf/parmesan*mf: magnification fixes.
1965 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1967 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1969 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1970 documenting the font. (Doesn't work for parmesan at the moment)
1972 * Documentation/user/appendices.itely (The Feta font): Add list of
1973 Feta font symbols with names.
1975 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1978 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1980 * lily/translator-group.cc (ly_set_trans_property): typechecking
1981 (ly_get_trans_property): typechecking.
1983 * lily/font-metric.cc (ly_text_dimension): typechecking
1984 (ly_find_glyph_by_name): idem.
1986 * scm/bass-figure.scm (brew-complete-figure): support for
1989 * lily/grob.cc (ly_get_paper_var): new function
1991 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1993 * VERSION (PATCH_LEVEL): 1.5.35 released.
1995 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1996 (bracket): New function.
1998 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1999 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
2001 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2004 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2007 * lily/grob.cc (ly_get_grob_property): be anal about types.
2008 (ly_set_grob_property): idem
2010 * lily/figured-bass-engraver.cc (process_music): move molecule
2011 building completely to Scheme
2013 * lily/include/musical-request.hh (class Bass_figure_req): Add
2016 * lily/parser.yy (bass_figure): add support for space figure.
2018 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
2020 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2022 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2023 (ly_align_to_x): new function ly-align-to!
2025 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2026 function ly-get-font
2028 * mf/feta-nummer.mf: include normal-space dimension.
2030 * lily/collision.cc (check_meshing_chords): don't merge collisions
2033 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2036 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
2038 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2040 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
2042 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
2045 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2048 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2049 scm/grob-description.scm: added mensural fermata symbol
2051 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2053 * VERSION: 1.5.34 released.
2055 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2057 * lily/staff-symbol-referencer.cc (callback): assume that
2058 staff-position is unset in general.
2060 * input/regression/rest-pitch.ly: new file.
2062 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2065 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2067 * lily/scm-option.cc (set_lily_option): add internal-type-checks
2068 as Scheme option. Run regression test by default with
2069 internal-type-checking.
2071 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
2073 * lily/lily-guile.cc (type_check_assignment): changed functions.
2075 * scm/*description*.scm: be anal about typechecks. Some changes
2076 for internal variable names.
2078 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2080 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
2082 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
2084 * VERSION: 1.5.33 released.
2086 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2087 flare_path everywhere (c-clef, numbers).
2089 * lily/bar-number-engraver.cc (process_music): also print bar
2090 number if measure starts with grace note.
2092 * input/regression/grace-bar-number.ly: new test.
2094 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
2096 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2099 * scm/music-functions.scm (voicify-music): split chords into
2100 different voices automatically.
2102 * lily/music.cc (ly_music_list_p): new function
2104 * lily/music-sequence.cc (do_relative_octave): robustification
2106 * scm/music-functions.scm: many utility functions
2108 * lily/music.cc (ly_set_mus_property): add type checks to the
2109 Scheme property assignment.
2111 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2114 * mf/lilypond.map: .map file from Mats' page.
2116 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
2118 * Some more parmesan related fixes;
2120 * Custos: varying shape (in particular, stem length), depending on the
2121 vertical position of the custos (on staffline / between stafflines);
2123 * Custos: added grob property "neutral-direction" (same semantics as
2124 with stem); introduced new grob property "neutral-position";
2126 * Time-signature: print a warning when resorting to default layout.
2128 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2130 * lily/translator-group.cc (add_fresh_simple_translator): remove
2131 function; initialize() is called through
2132 Translator_group::initialize().
2134 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2135 for the neighbors of a loose column.
2137 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2138 position loose columns so that they don't collide.
2140 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2142 * VERSION: 1.5.32 released.
2144 * scm/font.scm: remove font-name symbol.
2146 * mf/GNUmakefile: use pktrace for making PFAs
2148 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2150 * lily/rest-collision.cc (do_shift): read direction field from
2151 rest-column in case of note-rest collision. This should fix some
2152 problems with rest collisions.
2154 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2156 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2159 * lily/note-head.cc (brew_ez_molecule): Remove note-character
2160 property. Read pitch directly from #'cause.
2162 * mf/feta-puntje.mf: bugfix
2164 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
2166 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2168 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
2170 * Documentation/windows/compiling.texi: Update.
2172 * Documentation/index.texi: Add link to orphaned compiling for
2175 * Documentation/footer.html.in: Comment fix.
2177 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2179 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
2181 * VERSION: 1.5.31 released
2183 * lily/new-spacing-spanner.cc: remove file.
2185 * lily/third-try.cc (do_measure): only take spacings into account
2186 if they pertain to the column pair under consideration. This fixes
2187 spacing bug when mixing eighths triplets and normal eighths.
2189 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2190 lines don't take up space anymore. Document why in note-head.cc
2193 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
2195 * lily/font-interface.cc (get_font): reinstate
2196 #'font-magnification. See input/regression/font-magnification.ly
2197 (get_font): Change the definition of #'font-name grob property.
2199 * lily/grob.cc (get_uncached_molecule): output origin for grobs
2200 that have a #'cause field.
2202 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2204 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
2206 * mf/GNUmakefile: remove metapost stuff
2208 * stepmake/aclocal.m4: remove metapost detection stuff.
2210 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
2212 * mf/GNUmakefile (FET_FILES):
2213 (FONT_FILES): Include parmesan.
2215 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
2218 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2220 * Documentation/user/refman.itely (Paper size): Quote braces.
2222 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2224 * stepmake/aclocal.m4: fixed bison version check to be more
2227 * lily/stem.cc (position_noteheads): fix for cluster chords.
2229 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
2231 * python 2.2 support.
2233 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
2235 * VERSION: 1.5.30 released
2237 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2239 * Documentation/user/refman.itely (Dynamics): add a note about
2242 * scm/grob-description.scm: add a 'translator-type? object
2243 property, so that \property Foo.Bar =\turnOff doesn't cause
2246 * lily/translator-group.cc (add_fresh_group_translator): make
2247 new add-translator functions to make distinction between fresh and
2248 used group-translators. Fixes problem with scripts on auto-changing voice
2250 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2251 add to Score_performer. Fixes bar checks in MIDI
2253 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2254 heads. Fixes many quirks with ties.
2256 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2257 in the grob property #'cause, instead of using Grob_info.
2259 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2260 staff context, fixing dot alignment on collisions.
2262 * lily/beam-engraver.cc (try_music): remove can't find beam start
2263 warning, so that skipTypesetting won't complain.
2265 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2267 * Documentation/user/refman.itely (Paper size): Documentation fix,
2270 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2272 * scm/grob-description.scm: \breathe: Use feta font comma by default
2274 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2276 * input/template/piano-dynamics.ly (pedal): Simplified
2278 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
2280 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2282 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
2284 * lilypond-mode.el (LilyPond-command-query): ignore case.
2286 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2288 * VERSION: 1.5.29 released
2290 * all files: change 2001 to 2002 in headers globally
2292 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2293 cheese") font. WARNING: fonts changed.
2295 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
2297 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2299 * mf/*.mf: Added some more vaticana/solesmes style font symbols
2301 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2303 * mf/*.mf: Fixed a few typos in various .mf files
2305 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2307 * mf/: added macro soft_penstroke
2309 softened some glyphs
2310 redrawn triangular noteheads
2312 added classical quarter rest
2314 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2316 * lily/bar.cc: Bugfix: repeat dots when even number of staff
2317 lines and staff_space>=2
2319 * lily/rest.cc: Use default rests when current style glyphs not
2321 \property Staff.Rest \override #'style = #'classical
2323 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
2325 * input/bugs/first-tie.ly: New file.
2327 * input/bugs/spacing-clash.ly: New file.
2329 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
2333 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2335 * lilypond-indent.el: New file providing indentation for
2336 parenthesised blocks of lilypond code in Emacs
2338 * lilypond-font-lock.el: Changes to the syntax table to facilitate
2339 indentation and handle block comments properly. Distinguish
2340 accents from close-brackets in fontification.
2342 * lilypond-mode.el: LilyPond-indent-command set appropriately.
2344 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
2346 * Documentation/windows/installing.texi:
2347 * Documentation/windows/compiling.texi: Include from 1.4.10.
2349 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2351 * input/bugs/first-midi-tie.ly: New file.
2353 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
2355 * VERSION: 1.5.28 released
2357 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2358 illicit beams on [c4 c4] etc.
2360 * lily/bar-check-iterator.cc (Bar_check_iterator): new
2361 file. Make separate iterator for Bar_checks. Bar_check now happen
2362 outside engravers, meaning that you can use them with
2363 skipTypesetting. Associated changes in other files.
2365 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2368 * lily/spacing-spanner.cc (stem_dir_correction): removed function
2370 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2372 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2374 * lily/stem.cc (set_spacing_hints): removed function
2376 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2377 correction for spacing; now take vertical extents of the stem into
2380 * lily/third-try.cc: More hacking to get spacing working.
2382 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2383 sits at staff level and creates note spacing objects. Scrap it
2384 again, and document why.
2386 * lily/include/group-interface.hh: rename functions.
2388 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
2390 * stepmake/stepmake/c++-rules.make:
2391 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2393 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
2395 * make/lilypond-vars.make:
2396 * scripts/ly2dvi.py (setup_environment):
2397 * scripts/lilypond-book.py (setup_environment): Also set tex
2400 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2402 * VERSION: 1.5.27 released.
2404 * Documentation/user/refman.itely (Bar numbers): added bar number
2407 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2410 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
2412 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2413 spread the last few lines all over the last page of a score.
2415 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
2417 * lily/third-try.cc: 3rd try at revising spacing
2418 engine. Not yet finished.
2420 * lily/paper-column.cc (brew_molecule): print debugging marks on a
2423 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2424 collecting past note heads.
2426 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2429 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2430 class. Keep a queue of grobs that are still playing in busyGrobs.
2432 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2433 function. Use busyGrobs to detect playing notes.
2435 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
2437 * Documentation/topdocs/INSTALL.texi: Added note about broken
2438 python-2.1. Updated note for Debian's broken (well, broken for
2439 our use anyway) tex configuration.
2441 * scripts/lilypond-book.py (re_dict): python2.2 fix.
2443 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
2444 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2446 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2447 (But left margin of png's still misses a few pixels. Arg.)
2449 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
2451 * lilypond-mode.el (LilyPond-command-next-midi): Make
2452 possible to kill midi-process (using "C-c C-m").
2454 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
2456 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2457 Convert strings with dimensions to numbers.
2459 * lily/volta-engraver.cc: only make a bracket for the top staff,
2460 as found in stavesFound.
2462 * lily/bar-number-engraver.cc: remove staff administration.
2464 * lily/mark-engraver.cc (acknowledge_grob): remove staff
2465 administration. This breaks support for invisible-staff.
2467 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2468 symbols into stavesFound.
2470 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2471 grobs, and put them into columns.
2473 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2474 Engraver_group_engraver as a potential candidate for ack'ing grobs.
2476 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
2478 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2479 midi section in the Emacs-mode, so it is possible to play certain
2480 score in a multiscore lilypond-file.
2482 2001-12-09 Rune Zedeler <rune@zedeler.dk>
2483 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2484 (FIXME: not accessible from guile)
2486 * lily/accidental-engraver.cc: rewrote accidental-routines to get
2487 better support for Kurt Stone's suggestions.
2488 Removed properties: noResetKey, forgetAccidentals, autoReminders,
2490 Changed property: localKeySignature.
2491 Added properties: extraNatural, autoAccidentals,
2494 (BUGFIX: broken-tie-support destroyed in 1.5.16)
2496 * ly/property-init.ly: added commands
2497 \defaultAccidentals \modernAccidentals \modernCautionaries
2498 \noResetKey \forgetAccidentals
2500 * ly/engraver-init.ly: Correct initialization of new accidentals.
2502 * scm/translator-property-description.scm: The new properties
2505 * input/: Some examples added, some changed.
2507 * Documentation/regression-test.tely: Added quick test of new
2510 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2512 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2515 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2517 * lily/beam.cc (before_line_breaking): Make beams without stems
2518 or with only one stem disappear.
2520 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2522 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2523 files to have standardised HTML bibliography output. Update build
2524 docs to reflect this.
2526 * lily/include/simple-spacer.hh (struct Simple_spacer): add
2527 active_count_, so that we don't have to look for active springs
2530 * scm/interface-description.scm,scm/grob-property-description.scm:
2533 * lily/simple-spacer.cc (solve): Handle forced line breaks
2534 here. Fixes problems when combining linebreaks with non-fitting
2537 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
2539 * 1.4.9.jcn3 forward ports.
2541 * Really included .cvsignore.
2543 * Included Han-Wen's uu1 windows fixes.
2545 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2547 * Added Cygwin setup.hint
2549 * Removed tex, python wrappers and postinstalls to go with Cywgin's
2550 tetex/texmf, python installations.
2552 * Updated cygwin installer.
2554 * ly2dvi: Don't accept filenames with spaces (+ fix).
2556 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
2558 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2560 * lily/translator-def.cc: Remove manual symbol caching.
2562 * lily/script-column.cc (before_line_breaking): robustness check:
2563 don't crash if no direction set.
2565 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2567 * scripts/pmx2ly.py (Parser.parse_header): more generic header
2571 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
2573 * lily/note-head.cc (head_extent): added to compute width without
2574 ledger lines. By default, ledger lines take up width now.
2576 * input/regression/fingering.ly: demonstrate auto fingering.
2577 Horizontal placement is still buggy.
2579 * lily/fingering-engraver.cc (class Fingering_engraver):
2580 added. Provides support for horizontal fingering scripts
2582 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2584 * lily/side-position-interface.cc (add_staff_support): add staff
2585 only for Y-axis side positions.
2587 * lily/parser.yy (request_chord): Fix mem leak.
2589 * lily/musical-request.cc (transpose): moved to Music::transpose()
2591 * lily/include/grob-info.hh: Change music pointer to SCM, so we
2592 can store grobs as grob-creation cause as well.
2594 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2595 handle when adding. Use precomputed symbols throughout lily.
2597 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2598 track of spacing issues.
2600 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2601 to keep track of staff spacing
2603 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2605 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2606 code clean from conditionals and have a concentrated sets of
2607 compatibility fixes for old guile versions.
2609 * Fixes for guile 1.4, including embedded ps.
2611 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2613 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2614 well for markup texts.
2616 * lily/musical-request.cc (length_mom): kludge for null pointer.
2618 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2620 * scm/lily.scm (sign): bugfix
2622 * CHANGES: Change log instated.
2624 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.