1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
6 * autogen.sh: Generate.
9 * configure: Regenerate.
11 * stepmake/stepmake/automatically-generated.sub.make: Keep
14 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
16 * stepmake/stepmake/generic-targets.make (configure): Generate
19 * GNUmakefile.in (SCRIPTS):
20 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
22 * stepmake/autogen.sh: New file.
24 * configure: Check for g++ >= 2.95.
26 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
27 c/c++ version checking.
29 * flower/include/string.hh: Typo fix.
31 * lily/include/midi-item.hh: Remove stray i.
33 * Documentation/windows/GNUmakefile: Avoid collapsed directory
36 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
37 constructs '//' from arguments.
39 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
41 * scm/lily.scm (ly-load): show SCM filenames if verbose.
43 * lily/lily-guile.cc (init_functions): add ly-verbose function.
45 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
47 * flower/include/{pointer,tuple}*: removed.
49 * VERSION: released 1.5.56
51 * scm/music-functions.scm (check-start-chords): function to check
52 for chords without \context. Apply automatically from parser.
54 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
56 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
59 * scm/output-lib.scm: fix ez notation stems.
61 * lily/paper-outputter.cc: various fixes to speed up compilation.
63 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
65 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
67 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
69 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
70 determine latex input.
72 * stepmake/bin/install-sh: Include latest from libtool.
75 * configure: Regenerate.
77 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
78 (USER_CFLAGS): Bugfix, include CPPFLAGS.
80 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
82 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
83 REQUIRED programs and version. Try to continue configuring, list
84 missing programs at the end, but don't generate a GNUmakefile if
85 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
86 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
87 fancy for some older systems.
89 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
91 * lily/score-engraver.cc (typeset_all): sanity check for items
92 that are Y parent to spanner.
94 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
97 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
99 * lily/*.cc: remove as many iostream use as possible.
101 * flower/ : remove text-db, text-stream, data-file.
103 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
105 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
106 (completize_preamble): don't barf if no preamble present.
107 (do_file): allow extensions on --output
109 * scripts/ly2dvi.py (make_preview): make automatic preview of
110 first system. Small cleanups.
112 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
114 * scripts/lilypond-book.py (make_pixmap): output png directly.
116 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
119 * lily/parser.yy (My_lily_parser): comment out code. (Causes
120 problems with recent bison releases).
122 * make/lilypond.redhat.spec.in: add pfa fonts to X.
124 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
126 * lilypond-font-lock.el: Fixes the order of the note name list.
128 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
130 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
131 capability, --verbose option, rlimit hack.
133 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
135 * lily/piano-pedal-engraver.cc: cleanups.
137 * lily/accidental.cc (after_line_breaking): add break tie
140 * lily/text-engraver.cc (try_music): don't typeset fingerings
142 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
144 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
146 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
148 * lily/*.cc: change gh_str02scm() to ly_str02scm().
150 * lily/spacing-spanner.cc (note_spacing): Bound
151 shortest-playing-length by the distance to next note. This should
152 fix chord tremolo spacing.
154 * VERSION: 1.5.55 released
156 * lily/stem.cc (off_callback): invisible stem over whole note is
157 centered on note now.
159 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
160 stem-tremolo is stem now.
162 * input/mozart-hrn*.ly: many corrections.
164 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
165 support for dynamic scripts.
167 * lily/accidental-placement.cc (position_accidentals): check for
168 collisions as well: should avoid those heads too.
170 * lily/beam.cc (check_concave): allow undefined gap and
171 threshold. Change the meaning of threshold/gap == 0.0.
172 (check_concave): skip Stolba concaveness check if we have a knee
175 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
177 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
178 tremolos of dotted duration.
180 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
182 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
183 downstroke again. Sigh.
185 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
188 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
190 * lily/slur.cc (add_column): allow slur over rest.
192 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
194 * lily/beam.cc: move scoring constants out of code
196 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
198 * mf/feta-nummer.mf: scalability fixes.
200 * mf/feta-nummer-code.mf: fixes for 5, 8.
202 * mf/feta-klef.mf: G clef fixes.
204 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
206 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
208 * scripts/lilypond-book.py: %Newline, rather than glue macros
209 after \end{verbatim}.
211 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
213 * Documentation/user/lilypond-book.itely:
214 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
217 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
219 * scm/grob-property-description.scm (beam-space): Junk.
221 * lily/beam.cc (space_function): New method.
222 (get_interbeam): Call space-function.
224 * scm/grob-description.scm (Beam): Initialize space-function with
225 Beam::space_function.
227 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
228 Beam.space-function. Don't quantise grace beams.
230 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
232 * VERSION: 1.5.54 released
234 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
237 * Documentation/index.texi: add PDF links.
239 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
241 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
242 compare #'glyph as strings.
244 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
246 * scripts/ly2dvi.py (setup_environment): fix by Mats.
248 * lily/stem.cc (head_count): Change function name. Change property
249 to #'note-heads i.s.o. #'heads.
250 (position_noteheads): Kern noteheads for invisible stems.
251 (before_line_breaking): Do position_noteheads() for whole note
254 * lily/accidental-placement.cc (position_accidentals): First
255 determine refpoints, only then determine extents.
257 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
259 * lily/accidental-placement.cc (position_accidentals): use all
260 note heads for note head-skyline.
262 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
264 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
266 * Documentation/windows/setup.hint (requires): Add gsview dependency.
268 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
270 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
272 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
274 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
276 * mf/feta-schrift.mf: lighter staccato.
278 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
280 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
282 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
284 * VERSION: 1.5.53 released
286 * scm/lily.scm (ly-load): use primitive-load for loading.
288 * lily/misc.cc: remove quantise_iv()
290 * lily/*.cc: pass read-only arrays by reference.
292 * lily/grob.cc (common_refpoint_of_array): new function. Try to
293 use common_refpoint_of_{array, list} when possible.
295 * lily/include/accidental-placement.hh: new file.
297 * lily/accidental-placement.cc (alignment_callback): position
298 accidentals in a better way.
300 * lily/skyline.cc: new file. Compute distances for collections of
303 * lily/include/skyline.hh: new file
305 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
307 * lily/accidental.cc (class Accidental_interface): grob for a
310 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
313 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
314 together with new accidental-interface.
316 * lily/include/*.hh: remove spurious set_interface() decls.
318 * lily/key-signature-interface.cc (brew_molecule): add padding for
319 natural signs. Make natural typesetting like the sharp.
322 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
323 is now slightly curved, not straight.
326 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
328 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
330 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
331 more strictly. Use more clever regular expressions. Commented regexps.
333 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
335 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
337 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
339 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
340 to control width of staff symbol in ragged-right mode (by request
343 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
344 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
345 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
346 added support for ligature brackets (needed when transcribing
349 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
351 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
352 Fontify notes more strictly.
354 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
356 * mf/feta-din-code.mf: dynamic z sign.
358 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
360 * lilypond-mode.el: Prevent recoloring strings and comments.
362 * lilypond-font-lock.el: Handle block comments: block comments
363 can have also ordinary comments inside.
365 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
367 * lily/stem.cc (get_default_dir): set direction to CENTER if
368 invisible. Various other fixes to deal with invisible stems and
369 stem-direction == CENTER.
371 * lily/rest-collision.cc (do_shift): take direction from note if
374 * input/regression/tie-grace.ly: new file.
376 * lily/tie-engraver.cc (create_grobs): fix tied graces.
378 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
379 knee correction. Fixes tight spacing for knees.
381 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
383 * VERSION: 1.5.52 released
385 * lily/*.cc: add some undocced properties.
386 scm/grob-description.scm: idem.
388 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
390 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
391 multi-measure rests like "R1 *4" and scheme (typically has '#'
392 in the beginning). Small fixes. Add few reserved words.
394 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
396 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
399 * Documentation/windows/installing.texi: Suggest gswin32c (console
400 program) for getting the version. Layout fixes.
402 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
404 * Documentation/user/tutorial.itely (Running LilyPond): Separate
405 windows viewing commands, remove silly comment about Yap.
407 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
409 * Documentation/topdocs/INSTALL.texi: Describe how to learn
410 configure to find kpathsea on for example Slackware 8.0.
412 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
414 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
415 by default: avoid "1" over single bar rests.
417 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
418 and correct the handling of geometry options.
420 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
422 * lily/include/grob-interface.hh (ADD_INTERFACE): make
423 implementation for Class::has_interface automatically. Junk all
424 other implementations.
426 * lily/grob.cc (internal_get_grob_property): also typecheck
427 property reads. Catches even more undocced properties. Bugfixing
428 left for the uninspired masses.
430 * lily/beam.cc: remove end_after_line_breaking().
432 * lily/grob.cc (calculate_dependencies): remove list support for
435 * lily/font-size-engraver.cc: only do font-interface.
437 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
439 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
442 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
444 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
445 brackets using arpeggio requests.
447 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
448 molecule-callback to use for drawing the brackets.
450 * Documentation/user/refman.itely:
451 * input/test/chord-bracket.ly: Chord brackets documented
453 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
455 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
457 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
459 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
461 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
462 direction tuplets on beams.
464 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
466 * lilypond-indent.el: Bugfix of indentation of final point in buffer
468 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
470 * lilypond-mode.el: new command: LilyPond-un-comment-region.
471 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
472 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
473 submenu to "LilyPond"-menu.
475 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
476 an interface to play midi.
478 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
480 * input/regression/script-stack-order.ly: new file.
482 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
484 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
486 * mf/feta-din-code.mf: kerning for dynamics.
488 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
490 * input/regression/dynamics-glyphs.ly: new file
492 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
494 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
495 forte f for the 2 number. Some fixes for the other bulbed glyphs.
497 * Documentation/windows/gs-profile.sh:
498 * Documentation/windows/gsview-profile.sh: Remove. Functionality
499 moved to gs/gsview windows packages.
501 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
503 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
504 finding out the duration. Fixes chord tremolo bug.
506 * lily/completion-note-heads-engraver.cc (process_music): Set
507 correct duration for all requests of the broken notes.
509 * input/regression/completion-heads.ly: Added example of
510 Completion_heads_engraver.
512 * lilypond-mode.el: Added "2Midi" command
514 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
516 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
517 edge-width, edge-height and shorten-pair properties for tuplet
520 * lilypond-indent.el: Support for blinking of matching parentheses
522 * lilypond-font-lock.el: Fix fontification of closing > on its own line
524 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
525 cleanups of piano pedal brackets.
527 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
529 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
531 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
533 * mf/feta-new-code.mf: new dynamic f sign.
536 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
538 * mf/feta-new-code.mf: new dynamic p sign.
540 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
542 * lily/note-spacing.cc (stem_dir_correction): only do
543 beam-correction if a beam is there.
545 * lily/stem.cc (duration_log): change from flag_i (); better
547 (get_default_stem_end_position): fix dot/flag collision code.
549 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
551 * VERSION: release 1.5.50
553 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
554 unit spring here. Reduces number of warning messages.
556 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
558 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
560 * scm/generic-property.scm: remove generic-property, property-engraver
562 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
564 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
566 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
568 * scm/*.scm: remove volta, hairpin and tuplet functions.
570 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
571 note column for notes/stems/dots that already have parents. Fixes
572 nested grace contexts.
574 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
576 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
577 get too curved slurs.
579 * scm/slur.scm (default-slur-extremity-offset-alist)
580 (default-phrasing-slur-extremity-offset-alist): Move slur
581 attachments further away from note-head, vertically. Also, leave
582 a horizontal gap between slur and stem end.
584 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
586 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
588 * input/regression/spacing-grace-duration.ly: new file
590 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
591 for shortest durations.
593 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
594 extent of the mm rest.
596 * lily/spacing-spanner.cc (get_duration_space): better spacing for
599 * lily/tuplet-bracket.cc (make_bracket): new function
600 (get_x_offset): new function; make tuplet brackets align on stems
601 if stem has same direction.
602 (parallel_beam): be anal about matching bracket to tuplet.
604 * lily/lookup.cc (line): new function Lookup::line().
606 * scm/tex.scm (dashed-line): change -line to -system in names.
608 * lily/box.cc (add_point): new function.
610 * flower/include/interval.hh: new function add_point ().
613 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
615 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
617 * scm/grob-property-description.scm (number-threshold): Add
620 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
621 rest if #measures > number-threshold. Use padding (well, fake
624 * scm/font.scm (make-style-sheet): New styles: mark-number,
626 (paper20-style-sheet-alist): Add bigger bold fonts.
628 * lily/mark-engraver.cc (process_music): Use style mark-number or
631 * .cvsignore: Ignore all kinds of lilypond input and output.
633 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
635 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
637 * lily/staff-symbol.cc (brew_molecule): make line thickness
640 * lily/*.cc: replace stafflinethickness by linethickness.
642 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
644 * input/regression/beam-concave.ly: Add to-be-considered-concave
647 * lily/beam.cc (check_concave): Add check for large gap between an
648 inner notehead and the line through outer noteheads.
650 * scm/grob-description.scm (Beam): Add concaveness-gap, default
651 value 2.0 staff-space.
653 * scm/grob-property-description.scm (concaveness-gap): Add
656 * input/mozart-hrn3-allegro.ly: Fix typo.
658 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
660 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
661 lily/note-head-engraver: improved implementation of roundfilledbox
662 (according to Han-Wen's request)
664 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
665 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
666 lily/simple-spacer.cc: ragged-right alignment
668 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
670 * input/regression/spacing-note-flags.ly: new file
672 * input/regression/spacing-rest.ly: new file
674 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
676 * lily/spacing-spanner.cc (note_spacing): make note spacing after
677 all grace notes tight (not only the column directly following a
680 * scm/grob-description.scm (all-grob-descriptions): don't make
681 mm-rests larger than normal.
683 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
684 curved. Remove white space at the right of flags.
686 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
688 * ports/ports.make: Bugfix: ignore CVS directories.
690 * stepmake/.cvsignore: New file.
692 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
694 * lily/note-spacing.cc (stem_dir_correction): don't correct when
695 there is a flag on the stem.
697 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
699 * scm/grob-property-description.scm (measure-length):
700 measure-length grob property.
702 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
703 better spacing for breakable columns when they're juxtaposed: use
704 measure length if applicable
706 * lily/timing-engraver.cc (start_translation_timestep): store
707 measure length in breakable column at start of measure.
709 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
711 * ROADMAP: Add description for ports dir, to check email upon
714 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
716 * VERSION: 1.5.48 released
718 * lily/multi-measure-rest.cc (symbol_molecule): split off from
720 (set_spacing_rods): Use symbol_molecule() to determine minimum
722 (church_rest): split off from brew_molecule()
723 (big_rest): split off from brew_molecule(). Construct using
726 * mf/feta-eindelijk.mf: junk multi measure rest.
728 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
730 * lily/multi-measure-rest.cc (add_column): remove columns property.
732 * lily/dynamic-engraver.cc (process_music): add more verbose warning
734 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
737 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
739 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
740 keywords covered, dropped some non-keywords, include R- and 128-notes
742 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
744 * Code clean-up: Junk multiple implementations of ledger line
745 creation in note_head, custos, and porrectus. This is important
746 since there soon will be some more applications of ledger lines to
747 come (e.g. ambitus engraver).
749 * Make thickness of ledger lines adjustable. This is essential
750 for mensural notation.
752 * Fix some bugs in the current ledger_line implementation, most
753 notably that of the horizontal extent of ledger lines which equals
754 at least the extent of the metafont ledger_line character, and
755 which grows(!) if the desired extent shrinks below this limit.
757 * roundfilledbox: variable blotdiameter
759 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
761 * VERSION: 1.5.47 released
763 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
765 * lily/porrectus.cc: change line-thickness to thickness, change
766 stem-direction to direction.
768 * scm/backend-documentation-lib.scm (check-dangling-properties):
769 Automatically detect doc'ed properties that are not in an interface
771 * scm/grob-property-description.scm: property cleanup. Remove many
772 paper-column props that are non-existent.
774 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
775 the grob has a molecule-callback.
777 * lily/*.cc: remove many set_interface() calls, and their
780 * input/regression/spacing-knee.ly: new file
782 * input/regression/spacing-clef-first-note.ly: new file
784 * lily/staff-spacing.cc (get_spacing_params): different spacing
785 for pref matter to note at start of line, halfway during line.
787 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
788 correction only if stems have same direction (i.e. not for
789 stem-clef combination).
790 (stem_dir_correction): maximal correction for knees.
792 * lily/*.cc: many updates to interface descriptions.
794 * lily/grob.cc (internal_set_grob_property): add interface check
795 for every set_grob_property call
797 * lily/*.cc: document interface stuff in C++
799 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
801 * lily/volta-bracket.cc: naming: change volta spanner to
804 * input/bugs/*.ly: cleanup, remove lots of files.
806 * buildscripts/mf-to-table.py (write_ps_encoding): generate
807 .encoding file. WARNING: upgrade to pktrace 1.0.3
809 * mf/feta-toevallig.mf: change PS name for parentheses.
811 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
813 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
816 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
818 * lily/scope.cc: remove file .
820 * lily/include/scope.hh: remove file. Remove Scope class
824 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
825 score_forbidden_quants): ): take out of SCM, pass parameters so
826 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
828 (calc_stem_y): robustness: take care of last_visible_stem == 0.
831 * lily/lily-guile.cc (ly_unit): return internal unit.
833 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
835 * lily/paper-outputter.cc (output_version): output internal unit
838 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
840 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
842 * scripts/ly2dvi.py: clean up old .*pk font caching code.
844 * scm/ps.scm: Use uppercase postscript font names for the standard
847 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
848 Add all available TeX Type1 fonts, including Feta, to the
849 Ghostscript font path.
851 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
852 version (affects the FontName) in lilypond.map.
854 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
855 documentation file to fetaNNlist.ly to avoid name collisions between
856 lilypond generated .tex file and font .tex macros file.
859 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
861 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
862 made mensural longa and (semi-)brevis leaner
864 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
866 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
867 clean-up: moved bezier shape and slope from porrectus to lookup
869 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
870 and /usr/share/texmf/fonts
872 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
874 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
876 * lily/text-spanner.cc (brew_molecule): add #'thickness
877 (brew_molecule): add corrections for thickness in molecule padding.
879 * lily/line-spanner.cc (line_atom): make function private
881 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
882 discover bounding box. This solves the cropping problem.
884 * lily/bar-check-iterator.cc (process): Only resynchronize bar
885 check when it fails. This fixes the combination of grace notes
888 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
890 * lily/repeated-music.cc (minimum_start): new Scheme callable function
891 (first_start): new Scheme callable. This will fix repeated music
892 starting with grace notes.
894 * lily/music.cc (start_mom): check start-moment-function grob property.
896 * VERSION: 1.5.45 released
898 * input/regression/system-extents.ly: new regression test. Test
901 * lily/system.cc: rename LineOfScore into System
903 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
905 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
906 (ly_get_extent): new Scheme function ly-get-extent
908 * ps/lilyponddefs.ps: use output-scale for line-x
911 * scm/ps.scm (font-load-command):
914 2002-03-20 Rune Zedeler <rune@zedeler.dk>
916 * lily/beaming-info.cc: Stupid typo fixed
918 * lily/accidental-engraver.cc: rewrote accidental-routines to get
919 support for cross-context auto-accidentals.
920 Now the engraver can stay in Staff-context and see other contexts
922 Changed properties: autoAccidentals, autoCautionaries
924 * lily/translator-group.cc (set_children_property):
925 Function added recursively setting the same property (deep_copied)
926 for all children of a Translator_group.
928 * ly/property-init.ly: added commands
929 \pianoAccidentals \voiceAccidentals
930 \modernVoiceAccidentals \modernVoiceCautionaries
932 * ly/engraver-init.ly: Correct initialization of new accidentals.
934 * scm/translator-property-description.scm: Updated
936 * input/regression/accidental-voice.ly: Added
938 * Documentation/regression-test.tely: Added new test
940 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
942 * VERSION: 1.5.44 released
944 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
946 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
948 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
951 * tex/feta*.tex: remove.
953 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
954 all software dealing with it.
956 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
958 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
959 (this fixes pdf output). Drop awk dependency.
961 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
962 dimensions (linewidth) are in mm.
964 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
966 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
968 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
970 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
972 * VERSION: 1.5.43 released
974 * scm/beam.scm (beam-dir-majority-median): if majority is
975 undecided, use median. Removes a forced dir in sarabande.
977 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
979 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
981 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
982 widths, heights and shortens are now customisable properties.
984 * scm/grob-description.scm, scm/grob-property-description.scm: New
985 properties added to PianoPedalBracket, unnecessary
986 Y-offset-callbacks removed from *Pedal, undocumented properties
989 * Documentation/user/refman.itely: Piano pedal updates.
991 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
993 * scm/grob-property-description.scm:
994 * scm/interface-description.scm: Remove old stuff.
996 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
997 0.48 (previously 0.42).
998 (Beam): Remove old stuff.
1001 * lily/stem-tremolo.cc:
1003 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1004 (previously space-function).
1006 * stepmake/bin/add-html-footer.py: Website title fix.
1008 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1010 * scripts/ly2dvi.py (environment): use new font searching setup.
1012 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1014 * lily/tfm.cc (dimensions): make code dimension independent
1016 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1019 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1021 * lily/include/dimensions.hh: try MM as internal unit.
1023 * scm/*.scm: remove invoke-dim1
1025 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1027 * GNUmakefile.in (fontpaths): add fontpaths target,
1029 * make/mutopia-targets.make: add PDF rules.
1031 * make/mutopia-rules.make: add pdf rule.
1033 * buildscripts/mutopia-index.py (list_item): add PDF.
1035 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1037 * make/lilypond-vars.make: set TEXMF for the new font setup.
1039 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1041 * VERSION: 1.5.42 released
1043 * mf/feta-schrift.mf: endless twiddling of Tr.
1045 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1046 endless twiddling with the bulb shape.
1048 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1049 little smaller if there is an accidental.
1051 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1053 * buildscripts/lilypond-profile.sh:
1055 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1056 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1057 Implement new font installation strategy
1059 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1060 the new font installation strategy.
1062 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1065 * input/test/staff-size.ly: Simplified using StaffContainer
1067 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1070 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1072 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1074 * lily/beam.cc (score_stem_lengths): new quanting stuff
1075 (score_forbidden_quants): Second and third beam quant stuff.
1077 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1079 * lily/beam.cc (least_squares): Remember least-squares-dy for
1081 (quantise_interval): Don't quant to dy steeper that
1082 least-squares-dy. Return empty interval if no sane quants found.
1083 (quantise_position): Try quantise_interval until we have
1084 acceptable solution.
1086 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1088 * scm/interface-description.scm (beam-interface): Update.
1090 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1092 * VERSION: 1.5.41 released
1094 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1095 optima serifs on top of t, bottom of r.
1097 * mf/feta-bolletjes.mf: make ledger line rounder.
1099 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1101 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1104 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1106 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1107 well as text pedal indications and a combination of both. All
1108 pedal indications are horizontally aligned on a line spanner.
1110 * lily/text-spanner.cc: Edge-width property added to use in
1111 bracketed piano pedals. Function setup_sustain_pedal added to set
1112 the dimensions of the brackets.
1114 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1115 some of the *Pedal properties tweaked.
1117 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1118 edge-width (TextSpanner) properties.
1120 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1122 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1123 fontified identifiers list.
1125 * input/test/pedal.ly: New pedal features added.
1127 * Documentation/user/refman.itely: New pedal features documented.
1130 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1132 * lily/include/new-beam.hh: Previously new-beam.hh
1133 * lily/beam.cc: Previously new-beam.cc
1134 (least_squares): Bugfix: don't barf on beams with less than two
1135 visible stems (tremolos).
1138 * scm/grob-description.scm (Beam): Junk old beam stuff.
1141 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1145 * mf/feta-eindelijk.mf: new 8th rest.
1147 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1148 stick out of staffline
1150 * scripts/lilypond-book.py: fixes for texi regular expressions.
1152 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1154 * lily/include/new-beam.hh:
1155 * lily/new-beam.cc: New file.
1157 * flower/include/interval.hh:
1158 * flower/include/interval.tcc (delta): New method.
1159 (swap): Now public (previously private).
1161 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1162 1 staff-line-thickness. Sadly, this makes dy quanting problems
1163 (dy quants allowed should depend on actual left y) more visible.
1165 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1167 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1169 * scm/grob-property-description.scm (concaveness-threshold): Add
1170 typecheck and description.
1172 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1173 concaveness-threshold (previously concaveness).
1175 * lily/beam.cc (check_concave): Remove choices and debugging
1176 stuff: use best concaveness calculation.
1177 (quantise_dy): Remove choice. Try to never make a slope steeper
1178 by quantising, but certainly never quantise a slope away.
1179 (check_stem_length_f): Remove choice. In case of lengthening
1180 alowed, always lengthen to ideal length.
1182 * Documentation/index.texi: Fix FAQ url.
1184 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1185 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1187 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1189 * VERSION: 1.5.39 released
1191 * lily/simple-spacer.cc (add_rod): rods take precedence over
1192 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1194 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1196 * lily/note-spacing.cc (get_spacing): only insert space for
1197 accidentals if necessary.
1199 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1201 * lily/spacing-spanner.cc (musical_column_spacing): new
1202 function. Have correct spacing from note to end-of-line as well.
1204 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1206 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1208 * darwin.patch: New file.
1210 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1211 code. Shorten stems by fraction of stems to be shortened.
1213 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1214 of shorten value for boundary cases.
1216 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1217 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1219 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1221 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1223 * scm/grob-description.scm (Beam): Add concaveness. Replace
1224 Beam::cancel_suspect_slope with Beam::check_concave.
1226 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1227 set slope to horizontal if concaveness > Beam.concaveness. This
1228 handles cases that kludgy cancel_suspect_slope was meant to catch
1230 (cancel_suspect_slope): Remove.
1232 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1234 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1235 stemLeftBeamCount and stemRightBeamCount to equal 0.
1238 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1240 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1241 fixed spacing for pref matter, if the next column is musical, and
1244 * lily/note-spacing.cc (stem_dir_correction): Use correct
1245 discretionary for stem-bar spacing.
1247 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1249 * VERSION: 1.5.38 released
1251 * lily/grob.cc (warning): Use cause tracking to give more
1252 meaningful errors from the backend.
1254 * lily/property-iterator.cc (check_grob): Warn if setting grob
1255 property in unknown grob.
1257 * mf/feta-toevallig.mf: brushed stems for natural sign.
1259 * lily/molecule.cc (align_to): don't translate empty molecule.
1260 (this triggers a very subtle bug in time-signature.)
1262 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1264 * lily/spring.cc: remove file.
1266 * input/regression/spacing-stem-bar.ly: new file
1268 * lily/score.cc (run_translator): resurrect point-and-click
1270 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1273 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1274 spacing is now globally determined, using the most common shortest
1275 note. Notes that are shorter are spaced geometrically, and with
1276 expand hints. This makes spacing more even, and measures that have
1277 very short notes won't be that stretched out.
1279 * mf/feta-klef.mf: F-clef fixes, documentation on the
1280 shape. (WARNING: font changed.)
1282 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1284 * lily/simple-spacer.cc (add_columns): support for infinitely
1287 * lily/staff-spacing.cc (get_spacing_params): space after
1288 prefatory matter is fixed.
1290 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1292 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1293 barline following an upstem.
1295 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1296 function from next_notes_correction().
1297 (bar_y_positions): idem.
1299 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1301 * input/regression/break.ly (texidoc): bugfix: escape \ in
1304 * lily/staff-spacing.cc (next_notes_correction): Correct the
1305 spacing of a note following a barline.
1308 2002-03-04 Glen Prideaux
1310 * mf/feta-solfa.mf: Shaped note heads
1312 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1314 * VERSION: 1.5.37 released
1316 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1317 left-align molecule.
1319 * lily/break-align-interface.cc (do_alignment): completely
1320 rewritten. Now it does not use Align_interface anymore, but a
1321 separate routine. Like StaffSpacing, it reads space-alist from the
1322 breakable grobs. This allows you to set spacing using
1324 \property Staff.Clef \override #'space-alist = '(....stuff....)
1326 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1327 to Bar_line. Move files around as well.
1329 * lily/time-signature.cc (time_signature): left align time signatures.
1331 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1332 Corrections of the glyph shape C. Comments added.
1334 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1336 * lily/spacing-spanner.cc: move from third-try.cc; rename
1337 Third_spacing_spanner to Spacing_spanner.
1339 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1340 spacing stuff. Much cleaner now, and we prepare for neat spacing
1341 tricks around bar lines and such.
1343 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1344 variables with themselves. (Ouch.)
1346 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1349 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1353 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1356 * lily/music.cc (ly_get_mus_property): typechecking
1357 (ly_set_mus_property): idem
1358 (ly_make_music): idem
1359 (ly_music_name): idem
1361 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1363 * lily/note-spacing.cc (stem_dir_correction): correction for
1364 same stem notes as well.
1366 * lily/pitch.cc (pitch_transpose): stricter typechecking
1368 * mf/parmesan*mf: magnification fixes.
1370 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1372 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1374 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1375 documenting the font. (Doesn't work for parmesan at the moment)
1377 * Documentation/user/appendices.itely (The Feta font): Add list of
1378 Feta font symbols with names.
1380 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1383 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1385 * lily/translator-group.cc (ly_set_trans_property): typechecking
1386 (ly_get_trans_property): typechecking.
1388 * lily/font-metric.cc (ly_text_dimension): typechecking
1389 (ly_find_glyph_by_name): idem.
1391 * scm/bass-figure.scm (brew-complete-figure): support for
1394 * lily/grob.cc (ly_get_paper_var): new function
1396 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1398 * VERSION (PATCH_LEVEL): 1.5.35 released.
1400 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1401 (bracket): New function.
1403 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1404 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1406 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1409 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1412 * lily/grob.cc (ly_get_grob_property): be anal about types.
1413 (ly_set_grob_property): idem
1415 * lily/figured-bass-engraver.cc (process_music): move molecule
1416 building completely to Scheme
1418 * lily/include/musical-request.hh (class Bass_figure_req): Add
1421 * lily/parser.yy (bass_figure): add support for space figure.
1423 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1425 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1427 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1428 (ly_align_to_x): new function ly-align-to!
1430 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1431 function ly-get-font
1433 * mf/feta-nummer.mf: include normal-space dimension.
1435 * lily/collision.cc (check_meshing_chords): don't merge collisions
1438 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1441 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1443 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1445 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1447 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1450 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1453 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1454 scm/grob-description.scm: added mensural fermata symbol
1456 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1458 * VERSION: 1.5.34 released.
1460 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1462 * lily/staff-symbol-referencer.cc (callback): assume that
1463 staff-position is unset in general.
1465 * input/regression/rest-pitch.ly: new file.
1467 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1470 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1472 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1473 as Scheme option. Run regression test by default with
1474 internal-type-checking.
1476 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1478 * lily/lily-guile.cc (type_check_assignment): changed functions.
1480 * scm/*description*.scm: be anal about typechecks. Some changes
1481 for internal variable names.
1483 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1485 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1487 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1489 * VERSION: 1.5.33 released.
1491 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1492 flare_path everywhere (c-clef, numbers).
1494 * lily/bar-number-engraver.cc (process_music): also print bar
1495 number if measure starts with grace note.
1497 * input/regression/grace-bar-number.ly: new test.
1499 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1501 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1504 * scm/music-functions.scm (voicify-music): split chords into
1505 different voices automatically.
1507 * lily/music.cc (ly_music_list_p): new function
1509 * lily/music-sequence.cc (do_relative_octave): robustification
1511 * scm/music-functions.scm: many utility functions
1513 * lily/music.cc (ly_set_mus_property): add type checks to the
1514 Scheme property assignment.
1516 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1519 * mf/lilypond.map: .map file from Mats' page.
1521 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1523 * Some more parmesan related fixes;
1525 * Custos: varying shape (in particular, stem length), depending on the
1526 vertical position of the custos (on staffline / between stafflines);
1528 * Custos: added grob property "neutral-direction" (same semantics as
1529 with stem); introduced new grob property "neutral-position";
1531 * Time-signature: print a warning when resorting to default layout.
1533 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1535 * lily/translator-group.cc (add_fresh_simple_translator): remove
1536 function; initialize() is called through
1537 Translator_group::initialize().
1539 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1540 for the neighbors of a loose column.
1542 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1543 position loose columns so that they don't collide.
1545 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1547 * VERSION: 1.5.32 released.
1549 * scm/font.scm: remove font-name symbol.
1551 * mf/GNUmakefile: use pktrace for making PFAs
1553 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1555 * lily/rest-collision.cc (do_shift): read direction field from
1556 rest-column in case of note-rest collision. This should fix some
1557 problems with rest collisions.
1559 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1561 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1564 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1565 property. Read pitch directly from #'cause.
1567 * mf/feta-puntje.mf: bugfix
1569 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1571 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1573 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1575 * Documentation/windows/compiling.texi: Update.
1577 * Documentation/index.texi: Add link to orphaned compiling for
1580 * Documentation/footer.html.in: Comment fix.
1582 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1584 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1586 * VERSION: 1.5.31 released
1588 * lily/new-spacing-spanner.cc: remove file.
1590 * lily/third-try.cc (do_measure): only take spacings into account
1591 if they pertain to the column pair under consideration. This fixes
1592 spacing bug when mixing eighths triplets and normal eighths.
1594 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1595 lines don't take up space anymore. Document why in note-head.cc
1598 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1600 * lily/font-interface.cc (get_font): reinstate
1601 #'font-magnification. See input/regression/font-magnification.ly
1602 (get_font): Change the definition of #'font-name grob property.
1604 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1605 that have a #'cause field.
1607 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1609 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1611 * mf/GNUmakefile: remove metapost stuff
1613 * stepmake/aclocal.m4: remove metapost detection stuff.
1615 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1617 * mf/GNUmakefile (FET_FILES):
1618 (FONT_FILES): Include parmesan.
1620 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1623 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1625 * Documentation/user/refman.itely (Paper size): Quote braces.
1627 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1629 * stepmake/aclocal.m4: fixed bison version check to be more
1632 * lily/stem.cc (position_noteheads): fix for cluster chords.
1634 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1636 * python 2.2 support.
1638 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1640 * VERSION: 1.5.30 released
1642 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1644 * Documentation/user/refman.itely (Dynamics): add a note about
1647 * scm/grob-description.scm: add a 'translator-type? object
1648 property, so that \property Foo.Bar =\turnOff doesn't cause
1651 * lily/translator-group.cc (add_fresh_group_translator): make
1652 new add-translator functions to make distinction between fresh and
1653 used group-translators. Fixes problem with scripts on auto-changing voice
1655 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1656 add to Score_performer. Fixes bar checks in MIDI
1658 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1659 heads. Fixes many quirks with ties.
1661 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1662 in the grob property #'cause, instead of using Grob_info.
1664 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1665 staff context, fixing dot alignment on collisions.
1667 * lily/beam-engraver.cc (try_music): remove can't find beam start
1668 warning, so that skipTypesetting won't complain.
1670 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1672 * Documentation/user/refman.itely (Paper size): Documentation fix,
1675 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1677 * scm/grob-description.scm: \breathe: Use feta font comma by default
1679 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1681 * input/template/piano-dynamics.ly (pedal): Simplified
1683 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1685 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1687 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1689 * lilypond-mode.el (LilyPond-command-query): ignore case.
1691 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1693 * VERSION: 1.5.29 released
1695 * all files: change 2001 to 2002 in headers globally
1697 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1698 cheese") font. WARNING: fonts changed.
1700 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1702 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1704 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1706 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1708 * mf/*.mf: Fixed a few typos in various .mf files
1710 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1712 * mf/: added macro soft_penstroke
1714 softened some glyphs
1715 redrawn triangular noteheads
1717 added classical quarter rest
1719 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1721 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1722 lines and staff_space>=2
1724 * lily/rest.cc: Use default rests when current style glyphs not
1726 \property Staff.Rest \override #'style = #'classical
1728 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1730 * input/bugs/first-tie.ly: New file.
1732 * input/bugs/spacing-clash.ly: New file.
1734 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1738 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1740 * lilypond-indent.el: New file providing indentation for
1741 parenthesised blocks of lilypond code in Emacs
1743 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1744 indentation and handle block comments properly. Distinguish
1745 accents from close-brackets in fontification.
1747 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1749 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1751 * Documentation/windows/installing.texi:
1752 * Documentation/windows/compiling.texi: Include from 1.4.10.
1754 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1756 * input/bugs/first-midi-tie.ly: New file.
1758 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1760 * VERSION: 1.5.28 released
1762 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1763 illicit beams on [c4 c4] etc.
1765 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1766 file. Make separate iterator for Bar_checks. Bar_check now happen
1767 outside engravers, meaning that you can use them with
1768 skipTypesetting. Associated changes in other files.
1770 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1773 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1775 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1777 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1779 * lily/stem.cc (set_spacing_hints): removed function
1781 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1782 correction for spacing; now take vertical extents of the stem into
1785 * lily/third-try.cc: More hacking to get spacing working.
1787 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1788 sits at staff level and creates note spacing objects. Scrap it
1789 again, and document why.
1791 * lily/include/group-interface.hh: rename functions.
1793 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1795 * stepmake/stepmake/c++-rules.make:
1796 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1798 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1800 * make/lilypond-vars.make:
1801 * scripts/ly2dvi.py (setup_environment):
1802 * scripts/lilypond-book.py (setup_environment): Also set tex
1805 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1807 * VERSION: 1.5.27 released.
1809 * Documentation/user/refman.itely (Bar numbers): added bar number
1812 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1815 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1817 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1818 spread the last few lines all over the last page of a score.
1820 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1822 * lily/third-try.cc: 3rd try at revising spacing
1823 engine. Not yet finished.
1825 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1828 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1829 collecting past note heads.
1831 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1834 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1835 class. Keep a queue of grobs that are still playing in busyGrobs.
1837 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1838 function. Use busyGrobs to detect playing notes.
1840 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1842 * Documentation/topdocs/INSTALL.texi: Added note about broken
1843 python-2.1. Updated note for Debian's broken (well, broken for
1844 our use anyway) tex configuration.
1846 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1848 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1849 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1851 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1852 (But left margin of png's still misses a few pixels. Arg.)
1854 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1856 * lilypond-mode.el (LilyPond-command-next-midi): Make
1857 possible to kill midi-process (using "C-c C-m").
1859 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1861 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1862 Convert strings with dimensions to numbers.
1864 * lily/volta-engraver.cc: only make a bracket for the top staff,
1865 as found in stavesFound.
1867 * lily/bar-number-engraver.cc: remove staff administration.
1869 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1870 administration. This breaks support for invisible-staff.
1872 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1873 symbols into stavesFound.
1875 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1876 grobs, and put them into columns.
1878 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1879 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1881 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1883 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1884 midi section in the Emacs-mode, so it is possible to play certain
1885 score in a multiscore lilypond-file.
1887 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1888 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1889 (FIXME: not accessible from guile)
1891 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1892 better support for Kurt Stone's suggestions.
1893 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1895 Changed property: localKeySignature.
1896 Added properties: extraNatural, autoAccidentals,
1899 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1901 * ly/property-init.ly: added commands
1902 \defaultAccidentals \modernAccidentals \modernCautionaries
1903 \noResetKey \forgetAccidentals
1905 * ly/engraver-init.ly: Correct initialization of new accidentals.
1907 * scm/translator-property-description.scm: The new properties
1910 * input/: Some examples added, some changed.
1912 * Documentation/regression-test.tely: Added quick test of new
1915 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1917 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1920 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1922 * lily/beam.cc (before_line_breaking): Make beams without stems
1923 or with only one stem disappear.
1925 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1927 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1928 files to have standardised HTML bibliography output. Update build
1929 docs to reflect this.
1931 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1932 active_count_, so that we don't have to look for active springs
1935 * scm/interface-description.scm,scm/grob-property-description.scm:
1938 * lily/simple-spacer.cc (solve): Handle forced line breaks
1939 here. Fixes problems when combining linebreaks with non-fitting
1942 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1944 * 1.4.9.jcn3 forward ports.
1946 * Really included .cvsignore.
1948 * Included Han-Wen's uu1 windows fixes.
1950 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1952 * Added Cygwin setup.hint
1954 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1955 tetex/texmf, python installations.
1957 * Updated cygwin installer.
1959 * ly2dvi: Don't accept filenames with spaces (+ fix).
1961 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1963 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1965 * lily/translator-def.cc: Remove manual symbol caching.
1967 * lily/script-column.cc (before_line_breaking): robustness check:
1968 don't crash if no direction set.
1970 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1972 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1976 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1978 * lily/note-head.cc (head_extent): added to compute width without
1979 ledger lines. By default, ledger lines take up width now.
1981 * input/regression/fingering.ly: demonstrate auto fingering.
1982 Horizontal placement is still buggy.
1984 * lily/fingering-engraver.cc (class Fingering_engraver):
1985 added. Provides support for horizontal fingering scripts
1987 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1989 * lily/side-position-interface.cc (add_staff_support): add staff
1990 only for Y-axis side positions.
1992 * lily/parser.yy (request_chord): Fix mem leak.
1994 * lily/musical-request.cc (transpose): moved to Music::transpose()
1996 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1997 can store grobs as grob-creation cause as well.
1999 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2000 handle when adding. Use precomputed symbols throughout lily.
2002 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2003 track of spacing issues.
2005 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2006 to keep track of staff spacing
2008 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2010 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2011 code clean from conditionals and have a concentrated sets of
2012 compatibility fixes for old guile versions.
2014 * Fixes for guile 1.4, including embedded ps.
2016 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2018 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2019 well for markup texts.
2021 * lily/musical-request.cc (length_mom): kludge for null pointer.
2023 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2025 * scm/lily.scm (sign): bugfix
2027 * CHANGES: Change log instated.
2029 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.