1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
5 * autogen.sh: Generate.
8 * configure: Regenerate.
10 * stepmake/stepmake/automatically-generated.sub.make: Keep
13 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
15 * stepmake/stepmake/generic-targets.make (configure): Generate
18 * GNUmakefile.in (SCRIPTS):
19 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
21 * stepmake/autogen.sh: New file.
23 * configure: Check for g++ >= 2.95.
25 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
26 c/c++ version checking.
28 * flower/include/string.hh: Typo fix.
30 * lily/include/midi-item.hh: Remove stray i.
32 * Documentation/windows/GNUmakefile: Avoid collapsed directory
35 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
36 constructs '//' from arguments.
38 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
40 * scm/lily.scm (ly-load): show SCM filenames if verbose.
42 * lily/lily-guile.cc (init_functions): add ly-verbose function.
44 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
46 * flower/include/{pointer,tuple}*: removed.
48 * VERSION: released 1.5.56
50 * scm/music-functions.scm (check-start-chords): function to check
51 for chords without \context. Apply automatically from parser.
53 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
55 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
58 * scm/output-lib.scm: fix ez notation stems.
60 * lily/paper-outputter.cc: various fixes to speed up compilation.
62 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
64 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
66 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
68 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
69 determine latex input.
71 * stepmake/bin/install-sh: Include latest from libtool.
74 * configure: Regenerate.
76 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
77 (USER_CFLAGS): Bugfix, include CPPFLAGS.
79 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
81 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
82 REQUIRED programs and version. Try to continue configuring, list
83 missing programs at the end, but don't generate a GNUmakefile if
84 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
85 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
86 fancy for some older systems.
88 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
90 * lily/score-engraver.cc (typeset_all): sanity check for items
91 that are Y parent to spanner.
93 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
96 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
98 * lily/*.cc: remove as many iostream use as possible.
100 * flower/ : remove text-db, text-stream, data-file.
102 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
104 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
105 (completize_preamble): don't barf if no preamble present.
106 (do_file): allow extensions on --output
108 * scripts/ly2dvi.py (make_preview): make automatic preview of
109 first system. Small cleanups.
111 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
113 * scripts/lilypond-book.py (make_pixmap): output png directly.
115 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
118 * lily/parser.yy (My_lily_parser): comment out code. (Causes
119 problems with recent bison releases).
121 * make/lilypond.redhat.spec.in: add pfa fonts to X.
123 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
125 * lilypond-font-lock.el: Fixes the order of the note name list.
127 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
129 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
130 capability, --verbose option, rlimit hack.
132 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
134 * lily/piano-pedal-engraver.cc: cleanups.
136 * lily/accidental.cc (after_line_breaking): add break tie
139 * lily/text-engraver.cc (try_music): don't typeset fingerings
141 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
143 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
145 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
147 * lily/*.cc: change gh_str02scm() to ly_str02scm().
149 * lily/spacing-spanner.cc (note_spacing): Bound
150 shortest-playing-length by the distance to next note. This should
151 fix chord tremolo spacing.
153 * VERSION: 1.5.55 released
155 * lily/stem.cc (off_callback): invisible stem over whole note is
156 centered on note now.
158 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
159 stem-tremolo is stem now.
161 * input/mozart-hrn*.ly: many corrections.
163 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
164 support for dynamic scripts.
166 * lily/accidental-placement.cc (position_accidentals): check for
167 collisions as well: should avoid those heads too.
169 * lily/beam.cc (check_concave): allow undefined gap and
170 threshold. Change the meaning of threshold/gap == 0.0.
171 (check_concave): skip Stolba concaveness check if we have a knee
174 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
176 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
177 tremolos of dotted duration.
179 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
181 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
182 downstroke again. Sigh.
184 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
187 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
189 * lily/slur.cc (add_column): allow slur over rest.
191 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
193 * lily/beam.cc: move scoring constants out of code
195 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
197 * mf/feta-nummer.mf: scalability fixes.
199 * mf/feta-nummer-code.mf: fixes for 5, 8.
201 * mf/feta-klef.mf: G clef fixes.
203 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
205 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
207 * scripts/lilypond-book.py: %Newline, rather than glue macros
208 after \end{verbatim}.
210 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
212 * Documentation/user/lilypond-book.itely:
213 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
216 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
218 * scm/grob-property-description.scm (beam-space): Junk.
220 * lily/beam.cc (space_function): New method.
221 (get_interbeam): Call space-function.
223 * scm/grob-description.scm (Beam): Initialize space-function with
224 Beam::space_function.
226 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
227 Beam.space-function. Don't quantise grace beams.
229 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
231 * VERSION: 1.5.54 released
233 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
236 * Documentation/index.texi: add PDF links.
238 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
240 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
241 compare #'glyph as strings.
243 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
245 * scripts/ly2dvi.py (setup_environment): fix by Mats.
247 * lily/stem.cc (head_count): Change function name. Change property
248 to #'note-heads i.s.o. #'heads.
249 (position_noteheads): Kern noteheads for invisible stems.
250 (before_line_breaking): Do position_noteheads() for whole note
253 * lily/accidental-placement.cc (position_accidentals): First
254 determine refpoints, only then determine extents.
256 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
258 * lily/accidental-placement.cc (position_accidentals): use all
259 note heads for note head-skyline.
261 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
263 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
265 * Documentation/windows/setup.hint (requires): Add gsview dependency.
267 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
269 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
271 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
273 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
275 * mf/feta-schrift.mf: lighter staccato.
277 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
279 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
281 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
283 * VERSION: 1.5.53 released
285 * scm/lily.scm (ly-load): use primitive-load for loading.
287 * lily/misc.cc: remove quantise_iv()
289 * lily/*.cc: pass read-only arrays by reference.
291 * lily/grob.cc (common_refpoint_of_array): new function. Try to
292 use common_refpoint_of_{array, list} when possible.
294 * lily/include/accidental-placement.hh: new file.
296 * lily/accidental-placement.cc (alignment_callback): position
297 accidentals in a better way.
299 * lily/skyline.cc: new file. Compute distances for collections of
302 * lily/include/skyline.hh: new file
304 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
306 * lily/accidental.cc (class Accidental_interface): grob for a
309 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
312 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
313 together with new accidental-interface.
315 * lily/include/*.hh: remove spurious set_interface() decls.
317 * lily/key-signature-interface.cc (brew_molecule): add padding for
318 natural signs. Make natural typesetting like the sharp.
321 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
322 is now slightly curved, not straight.
325 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
327 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
329 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
330 more strictly. Use more clever regular expressions. Commented regexps.
332 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
334 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
336 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
338 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
339 to control width of staff symbol in ragged-right mode (by request
342 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
343 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
344 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
345 added support for ligature brackets (needed when transcribing
348 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
350 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
351 Fontify notes more strictly.
353 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
355 * mf/feta-din-code.mf: dynamic z sign.
357 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
359 * lilypond-mode.el: Prevent recoloring strings and comments.
361 * lilypond-font-lock.el: Handle block comments: block comments
362 can have also ordinary comments inside.
364 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
366 * lily/stem.cc (get_default_dir): set direction to CENTER if
367 invisible. Various other fixes to deal with invisible stems and
368 stem-direction == CENTER.
370 * lily/rest-collision.cc (do_shift): take direction from note if
373 * input/regression/tie-grace.ly: new file.
375 * lily/tie-engraver.cc (create_grobs): fix tied graces.
377 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
378 knee correction. Fixes tight spacing for knees.
380 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
382 * VERSION: 1.5.52 released
384 * lily/*.cc: add some undocced properties.
385 scm/grob-description.scm: idem.
387 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
389 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
390 multi-measure rests like "R1 *4" and scheme (typically has '#'
391 in the beginning). Small fixes. Add few reserved words.
393 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
395 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
398 * Documentation/windows/installing.texi: Suggest gswin32c (console
399 program) for getting the version. Layout fixes.
401 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
403 * Documentation/user/tutorial.itely (Running LilyPond): Separate
404 windows viewing commands, remove silly comment about Yap.
406 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
408 * Documentation/topdocs/INSTALL.texi: Describe how to learn
409 configure to find kpathsea on for example Slackware 8.0.
411 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
413 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
414 by default: avoid "1" over single bar rests.
416 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
417 and correct the handling of geometry options.
419 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
421 * lily/include/grob-interface.hh (ADD_INTERFACE): make
422 implementation for Class::has_interface automatically. Junk all
423 other implementations.
425 * lily/grob.cc (internal_get_grob_property): also typecheck
426 property reads. Catches even more undocced properties. Bugfixing
427 left for the uninspired masses.
429 * lily/beam.cc: remove end_after_line_breaking().
431 * lily/grob.cc (calculate_dependencies): remove list support for
434 * lily/font-size-engraver.cc: only do font-interface.
436 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
438 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
441 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
443 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
444 brackets using arpeggio requests.
446 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
447 molecule-callback to use for drawing the brackets.
449 * Documentation/user/refman.itely:
450 * input/test/chord-bracket.ly: Chord brackets documented
452 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
454 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
456 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
458 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
460 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
461 direction tuplets on beams.
463 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
465 * lilypond-indent.el: Bugfix of indentation of final point in buffer
467 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
469 * lilypond-mode.el: new command: LilyPond-un-comment-region.
470 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
471 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
472 submenu to "LilyPond"-menu.
474 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
475 an interface to play midi.
477 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
479 * input/regression/script-stack-order.ly: new file.
481 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
483 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
485 * mf/feta-din-code.mf: kerning for dynamics.
487 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
489 * input/regression/dynamics-glyphs.ly: new file
491 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
493 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
494 forte f for the 2 number. Some fixes for the other bulbed glyphs.
496 * Documentation/windows/gs-profile.sh:
497 * Documentation/windows/gsview-profile.sh: Remove. Functionality
498 moved to gs/gsview windows packages.
500 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
502 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
503 finding out the duration. Fixes chord tremolo bug.
505 * lily/completion-note-heads-engraver.cc (process_music): Set
506 correct duration for all requests of the broken notes.
508 * input/regression/completion-heads.ly: Added example of
509 Completion_heads_engraver.
511 * lilypond-mode.el: Added "2Midi" command
513 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
515 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
516 edge-width, edge-height and shorten-pair properties for tuplet
519 * lilypond-indent.el: Support for blinking of matching parentheses
521 * lilypond-font-lock.el: Fix fontification of closing > on its own line
523 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
524 cleanups of piano pedal brackets.
526 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
528 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
530 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
532 * mf/feta-new-code.mf: new dynamic f sign.
535 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
537 * mf/feta-new-code.mf: new dynamic p sign.
539 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
541 * lily/note-spacing.cc (stem_dir_correction): only do
542 beam-correction if a beam is there.
544 * lily/stem.cc (duration_log): change from flag_i (); better
546 (get_default_stem_end_position): fix dot/flag collision code.
548 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
550 * VERSION: release 1.5.50
552 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
553 unit spring here. Reduces number of warning messages.
555 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
557 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
559 * scm/generic-property.scm: remove generic-property, property-engraver
561 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
563 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
565 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
567 * scm/*.scm: remove volta, hairpin and tuplet functions.
569 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
570 note column for notes/stems/dots that already have parents. Fixes
571 nested grace contexts.
573 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
575 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
576 get too curved slurs.
578 * scm/slur.scm (default-slur-extremity-offset-alist)
579 (default-phrasing-slur-extremity-offset-alist): Move slur
580 attachments further away from note-head, vertically. Also, leave
581 a horizontal gap between slur and stem end.
583 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
585 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
587 * input/regression/spacing-grace-duration.ly: new file
589 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
590 for shortest durations.
592 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
593 extent of the mm rest.
595 * lily/spacing-spanner.cc (get_duration_space): better spacing for
598 * lily/tuplet-bracket.cc (make_bracket): new function
599 (get_x_offset): new function; make tuplet brackets align on stems
600 if stem has same direction.
601 (parallel_beam): be anal about matching bracket to tuplet.
603 * lily/lookup.cc (line): new function Lookup::line().
605 * scm/tex.scm (dashed-line): change -line to -system in names.
607 * lily/box.cc (add_point): new function.
609 * flower/include/interval.hh: new function add_point ().
612 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
614 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
616 * scm/grob-property-description.scm (number-threshold): Add
619 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
620 rest if #measures > number-threshold. Use padding (well, fake
623 * scm/font.scm (make-style-sheet): New styles: mark-number,
625 (paper20-style-sheet-alist): Add bigger bold fonts.
627 * lily/mark-engraver.cc (process_music): Use style mark-number or
630 * .cvsignore: Ignore all kinds of lilypond input and output.
632 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
634 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
636 * lily/staff-symbol.cc (brew_molecule): make line thickness
639 * lily/*.cc: replace stafflinethickness by linethickness.
641 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
643 * input/regression/beam-concave.ly: Add to-be-considered-concave
646 * lily/beam.cc (check_concave): Add check for large gap between an
647 inner notehead and the line through outer noteheads.
649 * scm/grob-description.scm (Beam): Add concaveness-gap, default
650 value 2.0 staff-space.
652 * scm/grob-property-description.scm (concaveness-gap): Add
655 * input/mozart-hrn3-allegro.ly: Fix typo.
657 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
659 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
660 lily/note-head-engraver: improved implementation of roundfilledbox
661 (according to Han-Wen's request)
663 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
664 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
665 lily/simple-spacer.cc: ragged-right alignment
667 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
669 * input/regression/spacing-note-flags.ly: new file
671 * input/regression/spacing-rest.ly: new file
673 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
675 * lily/spacing-spanner.cc (note_spacing): make note spacing after
676 all grace notes tight (not only the column directly following a
679 * scm/grob-description.scm (all-grob-descriptions): don't make
680 mm-rests larger than normal.
682 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
683 curved. Remove white space at the right of flags.
685 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
687 * ports/ports.make: Bugfix: ignore CVS directories.
689 * stepmake/.cvsignore: New file.
691 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
693 * lily/note-spacing.cc (stem_dir_correction): don't correct when
694 there is a flag on the stem.
696 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
698 * scm/grob-property-description.scm (measure-length):
699 measure-length grob property.
701 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
702 better spacing for breakable columns when they're juxtaposed: use
703 measure length if applicable
705 * lily/timing-engraver.cc (start_translation_timestep): store
706 measure length in breakable column at start of measure.
708 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
710 * ROADMAP: Add description for ports dir, to check email upon
713 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
715 * VERSION: 1.5.48 released
717 * lily/multi-measure-rest.cc (symbol_molecule): split off from
719 (set_spacing_rods): Use symbol_molecule() to determine minimum
721 (church_rest): split off from brew_molecule()
722 (big_rest): split off from brew_molecule(). Construct using
725 * mf/feta-eindelijk.mf: junk multi measure rest.
727 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
729 * lily/multi-measure-rest.cc (add_column): remove columns property.
731 * lily/dynamic-engraver.cc (process_music): add more verbose warning
733 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
736 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
738 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
739 keywords covered, dropped some non-keywords, include R- and 128-notes
741 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
743 * Code clean-up: Junk multiple implementations of ledger line
744 creation in note_head, custos, and porrectus. This is important
745 since there soon will be some more applications of ledger lines to
746 come (e.g. ambitus engraver).
748 * Make thickness of ledger lines adjustable. This is essential
749 for mensural notation.
751 * Fix some bugs in the current ledger_line implementation, most
752 notably that of the horizontal extent of ledger lines which equals
753 at least the extent of the metafont ledger_line character, and
754 which grows(!) if the desired extent shrinks below this limit.
756 * roundfilledbox: variable blotdiameter
758 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
760 * VERSION: 1.5.47 released
762 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
764 * lily/porrectus.cc: change line-thickness to thickness, change
765 stem-direction to direction.
767 * scm/backend-documentation-lib.scm (check-dangling-properties):
768 Automatically detect doc'ed properties that are not in an interface
770 * scm/grob-property-description.scm: property cleanup. Remove many
771 paper-column props that are non-existent.
773 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
774 the grob has a molecule-callback.
776 * lily/*.cc: remove many set_interface() calls, and their
779 * input/regression/spacing-knee.ly: new file
781 * input/regression/spacing-clef-first-note.ly: new file
783 * lily/staff-spacing.cc (get_spacing_params): different spacing
784 for pref matter to note at start of line, halfway during line.
786 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
787 correction only if stems have same direction (i.e. not for
788 stem-clef combination).
789 (stem_dir_correction): maximal correction for knees.
791 * lily/*.cc: many updates to interface descriptions.
793 * lily/grob.cc (internal_set_grob_property): add interface check
794 for every set_grob_property call
796 * lily/*.cc: document interface stuff in C++
798 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
800 * lily/volta-bracket.cc: naming: change volta spanner to
803 * input/bugs/*.ly: cleanup, remove lots of files.
805 * buildscripts/mf-to-table.py (write_ps_encoding): generate
806 .encoding file. WARNING: upgrade to pktrace 1.0.3
808 * mf/feta-toevallig.mf: change PS name for parentheses.
810 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
812 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
815 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
817 * lily/scope.cc: remove file .
819 * lily/include/scope.hh: remove file. Remove Scope class
823 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
824 score_forbidden_quants): ): take out of SCM, pass parameters so
825 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
827 (calc_stem_y): robustness: take care of last_visible_stem == 0.
830 * lily/lily-guile.cc (ly_unit): return internal unit.
832 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
834 * lily/paper-outputter.cc (output_version): output internal unit
837 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
839 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
841 * scripts/ly2dvi.py: clean up old .*pk font caching code.
843 * scm/ps.scm: Use uppercase postscript font names for the standard
846 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
847 Add all available TeX Type1 fonts, including Feta, to the
848 Ghostscript font path.
850 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
851 version (affects the FontName) in lilypond.map.
853 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
854 documentation file to fetaNNlist.ly to avoid name collisions between
855 lilypond generated .tex file and font .tex macros file.
858 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
860 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
861 made mensural longa and (semi-)brevis leaner
863 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
865 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
866 clean-up: moved bezier shape and slope from porrectus to lookup
868 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
869 and /usr/share/texmf/fonts
871 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
873 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
875 * lily/text-spanner.cc (brew_molecule): add #'thickness
876 (brew_molecule): add corrections for thickness in molecule padding.
878 * lily/line-spanner.cc (line_atom): make function private
880 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
881 discover bounding box. This solves the cropping problem.
883 * lily/bar-check-iterator.cc (process): Only resynchronize bar
884 check when it fails. This fixes the combination of grace notes
887 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
889 * lily/repeated-music.cc (minimum_start): new Scheme callable function
890 (first_start): new Scheme callable. This will fix repeated music
891 starting with grace notes.
893 * lily/music.cc (start_mom): check start-moment-function grob property.
895 * VERSION: 1.5.45 released
897 * input/regression/system-extents.ly: new regression test. Test
900 * lily/system.cc: rename LineOfScore into System
902 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
904 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
905 (ly_get_extent): new Scheme function ly-get-extent
907 * ps/lilyponddefs.ps: use output-scale for line-x
910 * scm/ps.scm (font-load-command):
913 2002-03-20 Rune Zedeler <rune@zedeler.dk>
915 * lily/beaming-info.cc: Stupid typo fixed
917 * lily/accidental-engraver.cc: rewrote accidental-routines to get
918 support for cross-context auto-accidentals.
919 Now the engraver can stay in Staff-context and see other contexts
921 Changed properties: autoAccidentals, autoCautionaries
923 * lily/translator-group.cc (set_children_property):
924 Function added recursively setting the same property (deep_copied)
925 for all children of a Translator_group.
927 * ly/property-init.ly: added commands
928 \pianoAccidentals \voiceAccidentals
929 \modernVoiceAccidentals \modernVoiceCautionaries
931 * ly/engraver-init.ly: Correct initialization of new accidentals.
933 * scm/translator-property-description.scm: Updated
935 * input/regression/accidental-voice.ly: Added
937 * Documentation/regression-test.tely: Added new test
939 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
941 * VERSION: 1.5.44 released
943 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
945 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
947 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
950 * tex/feta*.tex: remove.
952 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
953 all software dealing with it.
955 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
957 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
958 (this fixes pdf output). Drop awk dependency.
960 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
961 dimensions (linewidth) are in mm.
963 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
965 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
967 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
969 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
971 * VERSION: 1.5.43 released
973 * scm/beam.scm (beam-dir-majority-median): if majority is
974 undecided, use median. Removes a forced dir in sarabande.
976 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
978 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
980 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
981 widths, heights and shortens are now customisable properties.
983 * scm/grob-description.scm, scm/grob-property-description.scm: New
984 properties added to PianoPedalBracket, unnecessary
985 Y-offset-callbacks removed from *Pedal, undocumented properties
988 * Documentation/user/refman.itely: Piano pedal updates.
990 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
992 * scm/grob-property-description.scm:
993 * scm/interface-description.scm: Remove old stuff.
995 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
996 0.48 (previously 0.42).
997 (Beam): Remove old stuff.
1000 * lily/stem-tremolo.cc:
1002 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1003 (previously space-function).
1005 * stepmake/bin/add-html-footer.py: Website title fix.
1007 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1009 * scripts/ly2dvi.py (environment): use new font searching setup.
1011 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1013 * lily/tfm.cc (dimensions): make code dimension independent
1015 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1018 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1020 * lily/include/dimensions.hh: try MM as internal unit.
1022 * scm/*.scm: remove invoke-dim1
1024 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1026 * GNUmakefile.in (fontpaths): add fontpaths target,
1028 * make/mutopia-targets.make: add PDF rules.
1030 * make/mutopia-rules.make: add pdf rule.
1032 * buildscripts/mutopia-index.py (list_item): add PDF.
1034 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1036 * make/lilypond-vars.make: set TEXMF for the new font setup.
1038 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1040 * VERSION: 1.5.42 released
1042 * mf/feta-schrift.mf: endless twiddling of Tr.
1044 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1045 endless twiddling with the bulb shape.
1047 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1048 little smaller if there is an accidental.
1050 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1052 * buildscripts/lilypond-profile.sh:
1054 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1055 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1056 Implement new font installation strategy
1058 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1059 the new font installation strategy.
1061 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1064 * input/test/staff-size.ly: Simplified using StaffContainer
1066 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1069 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1071 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1073 * lily/beam.cc (score_stem_lengths): new quanting stuff
1074 (score_forbidden_quants): Second and third beam quant stuff.
1076 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1078 * lily/beam.cc (least_squares): Remember least-squares-dy for
1080 (quantise_interval): Don't quant to dy steeper that
1081 least-squares-dy. Return empty interval if no sane quants found.
1082 (quantise_position): Try quantise_interval until we have
1083 acceptable solution.
1085 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1087 * scm/interface-description.scm (beam-interface): Update.
1089 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1091 * VERSION: 1.5.41 released
1093 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1094 optima serifs on top of t, bottom of r.
1096 * mf/feta-bolletjes.mf: make ledger line rounder.
1098 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1100 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1103 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1105 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1106 well as text pedal indications and a combination of both. All
1107 pedal indications are horizontally aligned on a line spanner.
1109 * lily/text-spanner.cc: Edge-width property added to use in
1110 bracketed piano pedals. Function setup_sustain_pedal added to set
1111 the dimensions of the brackets.
1113 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1114 some of the *Pedal properties tweaked.
1116 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1117 edge-width (TextSpanner) properties.
1119 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1121 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1122 fontified identifiers list.
1124 * input/test/pedal.ly: New pedal features added.
1126 * Documentation/user/refman.itely: New pedal features documented.
1129 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1131 * lily/include/new-beam.hh: Previously new-beam.hh
1132 * lily/beam.cc: Previously new-beam.cc
1133 (least_squares): Bugfix: don't barf on beams with less than two
1134 visible stems (tremolos).
1137 * scm/grob-description.scm (Beam): Junk old beam stuff.
1140 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1144 * mf/feta-eindelijk.mf: new 8th rest.
1146 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1147 stick out of staffline
1149 * scripts/lilypond-book.py: fixes for texi regular expressions.
1151 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1153 * lily/include/new-beam.hh:
1154 * lily/new-beam.cc: New file.
1156 * flower/include/interval.hh:
1157 * flower/include/interval.tcc (delta): New method.
1158 (swap): Now public (previously private).
1160 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1161 1 staff-line-thickness. Sadly, this makes dy quanting problems
1162 (dy quants allowed should depend on actual left y) more visible.
1164 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1166 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1168 * scm/grob-property-description.scm (concaveness-threshold): Add
1169 typecheck and description.
1171 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1172 concaveness-threshold (previously concaveness).
1174 * lily/beam.cc (check_concave): Remove choices and debugging
1175 stuff: use best concaveness calculation.
1176 (quantise_dy): Remove choice. Try to never make a slope steeper
1177 by quantising, but certainly never quantise a slope away.
1178 (check_stem_length_f): Remove choice. In case of lengthening
1179 alowed, always lengthen to ideal length.
1181 * Documentation/index.texi: Fix FAQ url.
1183 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1184 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1186 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1188 * VERSION: 1.5.39 released
1190 * lily/simple-spacer.cc (add_rod): rods take precedence over
1191 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1193 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1195 * lily/note-spacing.cc (get_spacing): only insert space for
1196 accidentals if necessary.
1198 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1200 * lily/spacing-spanner.cc (musical_column_spacing): new
1201 function. Have correct spacing from note to end-of-line as well.
1203 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1205 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1207 * darwin.patch: New file.
1209 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1210 code. Shorten stems by fraction of stems to be shortened.
1212 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1213 of shorten value for boundary cases.
1215 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1216 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1218 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1220 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1222 * scm/grob-description.scm (Beam): Add concaveness. Replace
1223 Beam::cancel_suspect_slope with Beam::check_concave.
1225 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1226 set slope to horizontal if concaveness > Beam.concaveness. This
1227 handles cases that kludgy cancel_suspect_slope was meant to catch
1229 (cancel_suspect_slope): Remove.
1231 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1233 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1234 stemLeftBeamCount and stemRightBeamCount to equal 0.
1237 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1239 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1240 fixed spacing for pref matter, if the next column is musical, and
1243 * lily/note-spacing.cc (stem_dir_correction): Use correct
1244 discretionary for stem-bar spacing.
1246 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1248 * VERSION: 1.5.38 released
1250 * lily/grob.cc (warning): Use cause tracking to give more
1251 meaningful errors from the backend.
1253 * lily/property-iterator.cc (check_grob): Warn if setting grob
1254 property in unknown grob.
1256 * mf/feta-toevallig.mf: brushed stems for natural sign.
1258 * lily/molecule.cc (align_to): don't translate empty molecule.
1259 (this triggers a very subtle bug in time-signature.)
1261 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1263 * lily/spring.cc: remove file.
1265 * input/regression/spacing-stem-bar.ly: new file
1267 * lily/score.cc (run_translator): resurrect point-and-click
1269 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1272 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1273 spacing is now globally determined, using the most common shortest
1274 note. Notes that are shorter are spaced geometrically, and with
1275 expand hints. This makes spacing more even, and measures that have
1276 very short notes won't be that stretched out.
1278 * mf/feta-klef.mf: F-clef fixes, documentation on the
1279 shape. (WARNING: font changed.)
1281 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1283 * lily/simple-spacer.cc (add_columns): support for infinitely
1286 * lily/staff-spacing.cc (get_spacing_params): space after
1287 prefatory matter is fixed.
1289 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1291 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1292 barline following an upstem.
1294 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1295 function from next_notes_correction().
1296 (bar_y_positions): idem.
1298 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1300 * input/regression/break.ly (texidoc): bugfix: escape \ in
1303 * lily/staff-spacing.cc (next_notes_correction): Correct the
1304 spacing of a note following a barline.
1307 2002-03-04 Glen Prideaux
1309 * mf/feta-solfa.mf: Shaped note heads
1311 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1313 * VERSION: 1.5.37 released
1315 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1316 left-align molecule.
1318 * lily/break-align-interface.cc (do_alignment): completely
1319 rewritten. Now it does not use Align_interface anymore, but a
1320 separate routine. Like StaffSpacing, it reads space-alist from the
1321 breakable grobs. This allows you to set spacing using
1323 \property Staff.Clef \override #'space-alist = '(....stuff....)
1325 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1326 to Bar_line. Move files around as well.
1328 * lily/time-signature.cc (time_signature): left align time signatures.
1330 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1331 Corrections of the glyph shape C. Comments added.
1333 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1335 * lily/spacing-spanner.cc: move from third-try.cc; rename
1336 Third_spacing_spanner to Spacing_spanner.
1338 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1339 spacing stuff. Much cleaner now, and we prepare for neat spacing
1340 tricks around bar lines and such.
1342 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1343 variables with themselves. (Ouch.)
1345 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1348 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1352 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1355 * lily/music.cc (ly_get_mus_property): typechecking
1356 (ly_set_mus_property): idem
1357 (ly_make_music): idem
1358 (ly_music_name): idem
1360 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1362 * lily/note-spacing.cc (stem_dir_correction): correction for
1363 same stem notes as well.
1365 * lily/pitch.cc (pitch_transpose): stricter typechecking
1367 * mf/parmesan*mf: magnification fixes.
1369 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1371 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1373 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1374 documenting the font. (Doesn't work for parmesan at the moment)
1376 * Documentation/user/appendices.itely (The Feta font): Add list of
1377 Feta font symbols with names.
1379 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1382 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1384 * lily/translator-group.cc (ly_set_trans_property): typechecking
1385 (ly_get_trans_property): typechecking.
1387 * lily/font-metric.cc (ly_text_dimension): typechecking
1388 (ly_find_glyph_by_name): idem.
1390 * scm/bass-figure.scm (brew-complete-figure): support for
1393 * lily/grob.cc (ly_get_paper_var): new function
1395 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1397 * VERSION (PATCH_LEVEL): 1.5.35 released.
1399 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1400 (bracket): New function.
1402 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1403 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1405 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1408 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1411 * lily/grob.cc (ly_get_grob_property): be anal about types.
1412 (ly_set_grob_property): idem
1414 * lily/figured-bass-engraver.cc (process_music): move molecule
1415 building completely to Scheme
1417 * lily/include/musical-request.hh (class Bass_figure_req): Add
1420 * lily/parser.yy (bass_figure): add support for space figure.
1422 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1424 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1426 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1427 (ly_align_to_x): new function ly-align-to!
1429 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1430 function ly-get-font
1432 * mf/feta-nummer.mf: include normal-space dimension.
1434 * lily/collision.cc (check_meshing_chords): don't merge collisions
1437 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1440 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1442 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1444 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1446 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1449 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1452 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1453 scm/grob-description.scm: added mensural fermata symbol
1455 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1457 * VERSION: 1.5.34 released.
1459 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1461 * lily/staff-symbol-referencer.cc (callback): assume that
1462 staff-position is unset in general.
1464 * input/regression/rest-pitch.ly: new file.
1466 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1469 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1471 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1472 as Scheme option. Run regression test by default with
1473 internal-type-checking.
1475 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1477 * lily/lily-guile.cc (type_check_assignment): changed functions.
1479 * scm/*description*.scm: be anal about typechecks. Some changes
1480 for internal variable names.
1482 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1484 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1486 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1488 * VERSION: 1.5.33 released.
1490 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1491 flare_path everywhere (c-clef, numbers).
1493 * lily/bar-number-engraver.cc (process_music): also print bar
1494 number if measure starts with grace note.
1496 * input/regression/grace-bar-number.ly: new test.
1498 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1500 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1503 * scm/music-functions.scm (voicify-music): split chords into
1504 different voices automatically.
1506 * lily/music.cc (ly_music_list_p): new function
1508 * lily/music-sequence.cc (do_relative_octave): robustification
1510 * scm/music-functions.scm: many utility functions
1512 * lily/music.cc (ly_set_mus_property): add type checks to the
1513 Scheme property assignment.
1515 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1518 * mf/lilypond.map: .map file from Mats' page.
1520 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1522 * Some more parmesan related fixes;
1524 * Custos: varying shape (in particular, stem length), depending on the
1525 vertical position of the custos (on staffline / between stafflines);
1527 * Custos: added grob property "neutral-direction" (same semantics as
1528 with stem); introduced new grob property "neutral-position";
1530 * Time-signature: print a warning when resorting to default layout.
1532 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1534 * lily/translator-group.cc (add_fresh_simple_translator): remove
1535 function; initialize() is called through
1536 Translator_group::initialize().
1538 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1539 for the neighbors of a loose column.
1541 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1542 position loose columns so that they don't collide.
1544 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1546 * VERSION: 1.5.32 released.
1548 * scm/font.scm: remove font-name symbol.
1550 * mf/GNUmakefile: use pktrace for making PFAs
1552 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1554 * lily/rest-collision.cc (do_shift): read direction field from
1555 rest-column in case of note-rest collision. This should fix some
1556 problems with rest collisions.
1558 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1560 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1563 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1564 property. Read pitch directly from #'cause.
1566 * mf/feta-puntje.mf: bugfix
1568 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1570 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1572 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1574 * Documentation/windows/compiling.texi: Update.
1576 * Documentation/index.texi: Add link to orphaned compiling for
1579 * Documentation/footer.html.in: Comment fix.
1581 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1583 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1585 * VERSION: 1.5.31 released
1587 * lily/new-spacing-spanner.cc: remove file.
1589 * lily/third-try.cc (do_measure): only take spacings into account
1590 if they pertain to the column pair under consideration. This fixes
1591 spacing bug when mixing eighths triplets and normal eighths.
1593 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1594 lines don't take up space anymore. Document why in note-head.cc
1597 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1599 * lily/font-interface.cc (get_font): reinstate
1600 #'font-magnification. See input/regression/font-magnification.ly
1601 (get_font): Change the definition of #'font-name grob property.
1603 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1604 that have a #'cause field.
1606 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1608 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1610 * mf/GNUmakefile: remove metapost stuff
1612 * stepmake/aclocal.m4: remove metapost detection stuff.
1614 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1616 * mf/GNUmakefile (FET_FILES):
1617 (FONT_FILES): Include parmesan.
1619 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1622 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1624 * Documentation/user/refman.itely (Paper size): Quote braces.
1626 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1628 * stepmake/aclocal.m4: fixed bison version check to be more
1631 * lily/stem.cc (position_noteheads): fix for cluster chords.
1633 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1635 * python 2.2 support.
1637 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1639 * VERSION: 1.5.30 released
1641 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1643 * Documentation/user/refman.itely (Dynamics): add a note about
1646 * scm/grob-description.scm: add a 'translator-type? object
1647 property, so that \property Foo.Bar =\turnOff doesn't cause
1650 * lily/translator-group.cc (add_fresh_group_translator): make
1651 new add-translator functions to make distinction between fresh and
1652 used group-translators. Fixes problem with scripts on auto-changing voice
1654 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1655 add to Score_performer. Fixes bar checks in MIDI
1657 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1658 heads. Fixes many quirks with ties.
1660 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1661 in the grob property #'cause, instead of using Grob_info.
1663 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1664 staff context, fixing dot alignment on collisions.
1666 * lily/beam-engraver.cc (try_music): remove can't find beam start
1667 warning, so that skipTypesetting won't complain.
1669 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1671 * Documentation/user/refman.itely (Paper size): Documentation fix,
1674 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1676 * scm/grob-description.scm: \breathe: Use feta font comma by default
1678 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1680 * input/template/piano-dynamics.ly (pedal): Simplified
1682 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1684 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1686 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1688 * lilypond-mode.el (LilyPond-command-query): ignore case.
1690 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1692 * VERSION: 1.5.29 released
1694 * all files: change 2001 to 2002 in headers globally
1696 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1697 cheese") font. WARNING: fonts changed.
1699 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1701 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1703 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1705 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1707 * mf/*.mf: Fixed a few typos in various .mf files
1709 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1711 * mf/: added macro soft_penstroke
1713 softened some glyphs
1714 redrawn triangular noteheads
1716 added classical quarter rest
1718 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1720 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1721 lines and staff_space>=2
1723 * lily/rest.cc: Use default rests when current style glyphs not
1725 \property Staff.Rest \override #'style = #'classical
1727 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1729 * input/bugs/first-tie.ly: New file.
1731 * input/bugs/spacing-clash.ly: New file.
1733 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1737 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1739 * lilypond-indent.el: New file providing indentation for
1740 parenthesised blocks of lilypond code in Emacs
1742 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1743 indentation and handle block comments properly. Distinguish
1744 accents from close-brackets in fontification.
1746 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1748 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1750 * Documentation/windows/installing.texi:
1751 * Documentation/windows/compiling.texi: Include from 1.4.10.
1753 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1755 * input/bugs/first-midi-tie.ly: New file.
1757 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1759 * VERSION: 1.5.28 released
1761 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1762 illicit beams on [c4 c4] etc.
1764 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1765 file. Make separate iterator for Bar_checks. Bar_check now happen
1766 outside engravers, meaning that you can use them with
1767 skipTypesetting. Associated changes in other files.
1769 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1772 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1774 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1776 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1778 * lily/stem.cc (set_spacing_hints): removed function
1780 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1781 correction for spacing; now take vertical extents of the stem into
1784 * lily/third-try.cc: More hacking to get spacing working.
1786 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1787 sits at staff level and creates note spacing objects. Scrap it
1788 again, and document why.
1790 * lily/include/group-interface.hh: rename functions.
1792 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1794 * stepmake/stepmake/c++-rules.make:
1795 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1797 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1799 * make/lilypond-vars.make:
1800 * scripts/ly2dvi.py (setup_environment):
1801 * scripts/lilypond-book.py (setup_environment): Also set tex
1804 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1806 * VERSION: 1.5.27 released.
1808 * Documentation/user/refman.itely (Bar numbers): added bar number
1811 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1814 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1816 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1817 spread the last few lines all over the last page of a score.
1819 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1821 * lily/third-try.cc: 3rd try at revising spacing
1822 engine. Not yet finished.
1824 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1827 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1828 collecting past note heads.
1830 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1833 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1834 class. Keep a queue of grobs that are still playing in busyGrobs.
1836 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1837 function. Use busyGrobs to detect playing notes.
1839 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1841 * Documentation/topdocs/INSTALL.texi: Added note about broken
1842 python-2.1. Updated note for Debian's broken (well, broken for
1843 our use anyway) tex configuration.
1845 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1847 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1848 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1850 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1851 (But left margin of png's still misses a few pixels. Arg.)
1853 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1855 * lilypond-mode.el (LilyPond-command-next-midi): Make
1856 possible to kill midi-process (using "C-c C-m").
1858 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1860 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1861 Convert strings with dimensions to numbers.
1863 * lily/volta-engraver.cc: only make a bracket for the top staff,
1864 as found in stavesFound.
1866 * lily/bar-number-engraver.cc: remove staff administration.
1868 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1869 administration. This breaks support for invisible-staff.
1871 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1872 symbols into stavesFound.
1874 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1875 grobs, and put them into columns.
1877 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1878 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1880 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1882 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1883 midi section in the Emacs-mode, so it is possible to play certain
1884 score in a multiscore lilypond-file.
1886 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1887 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1888 (FIXME: not accessible from guile)
1890 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1891 better support for Kurt Stone's suggestions.
1892 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1894 Changed property: localKeySignature.
1895 Added properties: extraNatural, autoAccidentals,
1898 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1900 * ly/property-init.ly: added commands
1901 \defaultAccidentals \modernAccidentals \modernCautionaries
1902 \noResetKey \forgetAccidentals
1904 * ly/engraver-init.ly: Correct initialization of new accidentals.
1906 * scm/translator-property-description.scm: The new properties
1909 * input/: Some examples added, some changed.
1911 * Documentation/regression-test.tely: Added quick test of new
1914 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1916 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1919 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1921 * lily/beam.cc (before_line_breaking): Make beams without stems
1922 or with only one stem disappear.
1924 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1926 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1927 files to have standardised HTML bibliography output. Update build
1928 docs to reflect this.
1930 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1931 active_count_, so that we don't have to look for active springs
1934 * scm/interface-description.scm,scm/grob-property-description.scm:
1937 * lily/simple-spacer.cc (solve): Handle forced line breaks
1938 here. Fixes problems when combining linebreaks with non-fitting
1941 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1943 * 1.4.9.jcn3 forward ports.
1945 * Really included .cvsignore.
1947 * Included Han-Wen's uu1 windows fixes.
1949 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1951 * Added Cygwin setup.hint
1953 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1954 tetex/texmf, python installations.
1956 * Updated cygwin installer.
1958 * ly2dvi: Don't accept filenames with spaces (+ fix).
1960 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1962 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1964 * lily/translator-def.cc: Remove manual symbol caching.
1966 * lily/script-column.cc (before_line_breaking): robustness check:
1967 don't crash if no direction set.
1969 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1971 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1975 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1977 * lily/note-head.cc (head_extent): added to compute width without
1978 ledger lines. By default, ledger lines take up width now.
1980 * input/regression/fingering.ly: demonstrate auto fingering.
1981 Horizontal placement is still buggy.
1983 * lily/fingering-engraver.cc (class Fingering_engraver):
1984 added. Provides support for horizontal fingering scripts
1986 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1988 * lily/side-position-interface.cc (add_staff_support): add staff
1989 only for Y-axis side positions.
1991 * lily/parser.yy (request_chord): Fix mem leak.
1993 * lily/musical-request.cc (transpose): moved to Music::transpose()
1995 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1996 can store grobs as grob-creation cause as well.
1998 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1999 handle when adding. Use precomputed symbols throughout lily.
2001 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2002 track of spacing issues.
2004 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2005 to keep track of staff spacing
2007 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2009 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2010 code clean from conditionals and have a concentrated sets of
2011 compatibility fixes for old guile versions.
2013 * Fixes for guile 1.4, including embedded ps.
2015 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2017 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2018 well for markup texts.
2020 * lily/musical-request.cc (length_mom): kludge for null pointer.
2022 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2024 * scm/lily.scm (sign): bugfix
2026 * CHANGES: Change log instated.
2028 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.