1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * flower/include/string.hh: Typo fix.
5 * lily/include/midi-item.hh: Remove stray i.
7 * Documentation/windows/GNUmakefile: Avoid collapsed directory
10 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
11 constructs '//' from arguments.
13 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
15 * scm/music-functions.scm (check-start-chords): function to check
16 for chords without \context. Apply automatically from parser.
18 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
20 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
23 * scm/output-lib.scm: fix ez notation stems.
25 * lily/paper-outputter.cc: various fixes to speed up compilation.
27 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
29 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
31 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
33 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
34 determine latex input.
36 * stepmake/bin/install-sh: Include latest from libtool.
39 * configure: Regenerate.
41 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
42 (USER_CFLAGS): Bugfix, include CPPFLAGS.
44 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
46 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
47 REQUIRED programs and version. Try to continue configuring, list
48 missing programs at the end, but don't generate a GNUmakefile if
49 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
50 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
51 fancy for some older systems.
53 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
55 * lily/score-engraver.cc (typeset_all): sanity check for items
56 that are Y parent to spanner.
58 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
61 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
63 * lily/*.cc: remove as many iostream use as possible.
65 * flower/ : remove text-db, text-stream, data-file.
67 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
69 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
70 (completize_preamble): don't barf if no preamble present.
71 (do_file): allow extensions on --output
73 * scripts/ly2dvi.py (make_preview): make automatic preview of
74 first system. Small cleanups.
76 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
78 * scripts/lilypond-book.py (make_pixmap): output png directly.
80 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
83 * lily/parser.yy (My_lily_parser): comment out code. (Causes
84 problems with recent bison releases).
86 * make/lilypond.redhat.spec.in: add pfa fonts to X.
88 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
90 * lilypond-font-lock.el: Fixes the order of the note name list.
92 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
94 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
95 capability, --verbose option, rlimit hack.
97 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
99 * lily/piano-pedal-engraver.cc: cleanups.
101 * lily/accidental.cc (after_line_breaking): add break tie
104 * lily/text-engraver.cc (try_music): don't typeset fingerings
106 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
108 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
110 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
112 * lily/*.cc: change gh_str02scm() to ly_str02scm().
114 * lily/spacing-spanner.cc (note_spacing): Bound
115 shortest-playing-length by the distance to next note. This should
116 fix chord tremolo spacing.
118 * VERSION: 1.5.55 released
120 * lily/stem.cc (off_callback): invisible stem over whole note is
121 centered on note now.
123 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
124 stem-tremolo is stem now.
126 * input/mozart-hrn*.ly: many corrections.
128 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
129 support for dynamic scripts.
131 * lily/accidental-placement.cc (position_accidentals): check for
132 collisions as well: should avoid those heads too.
134 * lily/beam.cc (check_concave): allow undefined gap and
135 threshold. Change the meaning of threshold/gap == 0.0.
136 (check_concave): skip Stolba concaveness check if we have a knee
139 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
141 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
142 tremolos of dotted duration.
144 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
146 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
147 downstroke again. Sigh.
149 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
152 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
154 * lily/slur.cc (add_column): allow slur over rest.
156 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
158 * lily/beam.cc: move scoring constants out of code
160 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
162 * mf/feta-nummer.mf: scalability fixes.
164 * mf/feta-nummer-code.mf: fixes for 5, 8.
166 * mf/feta-klef.mf: G clef fixes.
168 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
170 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
172 * scripts/lilypond-book.py: %Newline, rather than glue macros
173 after \end{verbatim}.
175 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
177 * Documentation/user/lilypond-book.itely:
178 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
181 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
183 * scm/grob-property-description.scm (beam-space): Junk.
185 * lily/beam.cc (space_function): New method.
186 (get_interbeam): Call space-function.
188 * scm/grob-description.scm (Beam): Initialize space-function with
189 Beam::space_function.
191 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
192 Beam.space-function. Don't quantise grace beams.
194 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
196 * VERSION: 1.5.54 released
198 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
201 * Documentation/index.texi: add PDF links.
203 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
205 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
206 compare #'glyph as strings.
208 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
210 * scripts/ly2dvi.py (setup_environment): fix by Mats.
212 * lily/stem.cc (head_count): Change function name. Change property
213 to #'note-heads i.s.o. #'heads.
214 (position_noteheads): Kern noteheads for invisible stems.
215 (before_line_breaking): Do position_noteheads() for whole note
218 * lily/accidental-placement.cc (position_accidentals): First
219 determine refpoints, only then determine extents.
221 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
223 * lily/accidental-placement.cc (position_accidentals): use all
224 note heads for note head-skyline.
226 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
228 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
230 * Documentation/windows/setup.hint (requires): Add gsview dependency.
232 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
234 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
236 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
238 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
240 * mf/feta-schrift.mf: lighter staccato.
242 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
244 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
246 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
248 * VERSION: 1.5.53 released
250 * scm/lily.scm (ly-load): use primitive-load for loading.
252 * lily/misc.cc: remove quantise_iv()
254 * lily/*.cc: pass read-only arrays by reference.
256 * lily/grob.cc (common_refpoint_of_array): new function. Try to
257 use common_refpoint_of_{array, list} when possible.
259 * lily/include/accidental-placement.hh: new file.
261 * lily/accidental-placement.cc (alignment_callback): position
262 accidentals in a better way.
264 * lily/skyline.cc: new file. Compute distances for collections of
267 * lily/include/skyline.hh: new file
269 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
271 * lily/accidental.cc (class Accidental_interface): grob for a
274 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
277 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
278 together with new accidental-interface.
280 * lily/include/*.hh: remove spurious set_interface() decls.
282 * lily/key-signature-interface.cc (brew_molecule): add padding for
283 natural signs. Make natural typesetting like the sharp.
286 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
287 is now slightly curved, not straight.
290 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
292 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
294 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
295 more strictly. Use more clever regular expressions. Commented regexps.
297 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
299 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
301 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
303 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
304 to control width of staff symbol in ragged-right mode (by request
307 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
308 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
309 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
310 added support for ligature brackets (needed when transcribing
313 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
315 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
316 Fontify notes more strictly.
318 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
320 * mf/feta-din-code.mf: dynamic z sign.
322 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
324 * lilypond-mode.el: Prevent recoloring strings and comments.
326 * lilypond-font-lock.el: Handle block comments: block comments
327 can have also ordinary comments inside.
329 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
331 * lily/stem.cc (get_default_dir): set direction to CENTER if
332 invisible. Various other fixes to deal with invisible stems and
333 stem-direction == CENTER.
335 * lily/rest-collision.cc (do_shift): take direction from note if
338 * input/regression/tie-grace.ly: new file.
340 * lily/tie-engraver.cc (create_grobs): fix tied graces.
342 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
343 knee correction. Fixes tight spacing for knees.
345 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
347 * VERSION: 1.5.52 released
349 * lily/*.cc: add some undocced properties.
350 scm/grob-description.scm: idem.
352 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
354 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
355 multi-measure rests like "R1 *4" and scheme (typically has '#'
356 in the beginning). Small fixes. Add few reserved words.
358 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
360 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
363 * Documentation/windows/installing.texi: Suggest gswin32c (console
364 program) for getting the version. Layout fixes.
366 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
368 * Documentation/user/tutorial.itely (Running LilyPond): Separate
369 windows viewing commands, remove silly comment about Yap.
371 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
373 * Documentation/topdocs/INSTALL.texi: Describe how to learn
374 configure to find kpathsea on for example Slackware 8.0.
376 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
378 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
379 by default: avoid "1" over single bar rests.
381 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
382 and correct the handling of geometry options.
384 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
386 * lily/include/grob-interface.hh (ADD_INTERFACE): make
387 implementation for Class::has_interface automatically. Junk all
388 other implementations.
390 * lily/grob.cc (internal_get_grob_property): also typecheck
391 property reads. Catches even more undocced properties. Bugfixing
392 left for the uninspired masses.
394 * lily/beam.cc: remove end_after_line_breaking().
396 * lily/grob.cc (calculate_dependencies): remove list support for
399 * lily/font-size-engraver.cc: only do font-interface.
401 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
403 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
406 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
408 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
409 brackets using arpeggio requests.
411 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
412 molecule-callback to use for drawing the brackets.
414 * Documentation/user/refman.itely:
415 * input/test/chord-bracket.ly: Chord brackets documented
417 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
419 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
421 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
423 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
425 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
426 direction tuplets on beams.
428 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
430 * lilypond-indent.el: Bugfix of indentation of final point in buffer
432 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
434 * lilypond-mode.el: new command: LilyPond-un-comment-region.
435 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
436 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
437 submenu to "LilyPond"-menu.
439 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
440 an interface to play midi.
442 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
444 * input/regression/script-stack-order.ly: new file.
446 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
448 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
450 * mf/feta-din-code.mf: kerning for dynamics.
452 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
454 * input/regression/dynamics-glyphs.ly: new file
456 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
458 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
459 forte f for the 2 number. Some fixes for the other bulbed glyphs.
461 * Documentation/windows/gs-profile.sh:
462 * Documentation/windows/gsview-profile.sh: Remove. Functionality
463 moved to gs/gsview windows packages.
465 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
467 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
468 finding out the duration. Fixes chord tremolo bug.
470 * lily/completion-note-heads-engraver.cc (process_music): Set
471 correct duration for all requests of the broken notes.
473 * input/regression/completion-heads.ly: Added example of
474 Completion_heads_engraver.
476 * lilypond-mode.el: Added "2Midi" command
478 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
480 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
481 edge-width, edge-height and shorten-pair properties for tuplet
484 * lilypond-indent.el: Support for blinking of matching parentheses
486 * lilypond-font-lock.el: Fix fontification of closing > on its own line
488 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
489 cleanups of piano pedal brackets.
491 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
493 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
495 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
497 * mf/feta-new-code.mf: new dynamic f sign.
500 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
502 * mf/feta-new-code.mf: new dynamic p sign.
504 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
506 * lily/note-spacing.cc (stem_dir_correction): only do
507 beam-correction if a beam is there.
509 * lily/stem.cc (duration_log): change from flag_i (); better
511 (get_default_stem_end_position): fix dot/flag collision code.
513 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
515 * VERSION: release 1.5.50
517 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
518 unit spring here. Reduces number of warning messages.
520 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
522 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
524 * scm/generic-property.scm: remove generic-property, property-engraver
526 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
528 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
530 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
532 * scm/*.scm: remove volta, hairpin and tuplet functions.
534 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
535 note column for notes/stems/dots that already have parents. Fixes
536 nested grace contexts.
538 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
540 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
541 get too curved slurs.
543 * scm/slur.scm (default-slur-extremity-offset-alist)
544 (default-phrasing-slur-extremity-offset-alist): Move slur
545 attachments further away from note-head, vertically. Also, leave
546 a horizontal gap between slur and stem end.
548 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
550 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
552 * input/regression/spacing-grace-duration.ly: new file
554 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
555 for shortest durations.
557 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
558 extent of the mm rest.
560 * lily/spacing-spanner.cc (get_duration_space): better spacing for
563 * lily/tuplet-bracket.cc (make_bracket): new function
564 (get_x_offset): new function; make tuplet brackets align on stems
565 if stem has same direction.
566 (parallel_beam): be anal about matching bracket to tuplet.
568 * lily/lookup.cc (line): new function Lookup::line().
570 * scm/tex.scm (dashed-line): change -line to -system in names.
572 * lily/box.cc (add_point): new function.
574 * flower/include/interval.hh: new function add_point ().
577 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
579 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
581 * scm/grob-property-description.scm (number-threshold): Add
584 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
585 rest if #measures > number-threshold. Use padding (well, fake
588 * scm/font.scm (make-style-sheet): New styles: mark-number,
590 (paper20-style-sheet-alist): Add bigger bold fonts.
592 * lily/mark-engraver.cc (process_music): Use style mark-number or
595 * .cvsignore: Ignore all kinds of lilypond input and output.
597 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
599 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
601 * lily/staff-symbol.cc (brew_molecule): make line thickness
604 * lily/*.cc: replace stafflinethickness by linethickness.
606 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
608 * input/regression/beam-concave.ly: Add to-be-considered-concave
611 * lily/beam.cc (check_concave): Add check for large gap between an
612 inner notehead and the line through outer noteheads.
614 * scm/grob-description.scm (Beam): Add concaveness-gap, default
615 value 2.0 staff-space.
617 * scm/grob-property-description.scm (concaveness-gap): Add
620 * input/mozart-hrn3-allegro.ly: Fix typo.
622 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
624 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
625 lily/note-head-engraver: improved implementation of roundfilledbox
626 (according to Han-Wen's request)
628 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
629 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
630 lily/simple-spacer.cc: ragged-right alignment
632 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
634 * input/regression/spacing-note-flags.ly: new file
636 * input/regression/spacing-rest.ly: new file
638 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
640 * lily/spacing-spanner.cc (note_spacing): make note spacing after
641 all grace notes tight (not only the column directly following a
644 * scm/grob-description.scm (all-grob-descriptions): don't make
645 mm-rests larger than normal.
647 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
648 curved. Remove white space at the right of flags.
650 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
652 * ports/ports.make: Bugfix: ignore CVS directories.
654 * stepmake/.cvsignore: New file.
656 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
658 * lily/note-spacing.cc (stem_dir_correction): don't correct when
659 there is a flag on the stem.
661 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
663 * scm/grob-property-description.scm (measure-length):
664 measure-length grob property.
666 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
667 better spacing for breakable columns when they're juxtaposed: use
668 measure length if applicable
670 * lily/timing-engraver.cc (start_translation_timestep): store
671 measure length in breakable column at start of measure.
673 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
675 * ROADMAP: Add description for ports dir, to check email upon
678 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
680 * VERSION: 1.5.48 released
682 * lily/multi-measure-rest.cc (symbol_molecule): split off from
684 (set_spacing_rods): Use symbol_molecule() to determine minimum
686 (church_rest): split off from brew_molecule()
687 (big_rest): split off from brew_molecule(). Construct using
690 * mf/feta-eindelijk.mf: junk multi measure rest.
692 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
694 * lily/multi-measure-rest.cc (add_column): remove columns property.
696 * lily/dynamic-engraver.cc (process_music): add more verbose warning
698 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
701 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
703 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
704 keywords covered, dropped some non-keywords, include R- and 128-notes
706 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
708 * Code clean-up: Junk multiple implementations of ledger line
709 creation in note_head, custos, and porrectus. This is important
710 since there soon will be some more applications of ledger lines to
711 come (e.g. ambitus engraver).
713 * Make thickness of ledger lines adjustable. This is essential
714 for mensural notation.
716 * Fix some bugs in the current ledger_line implementation, most
717 notably that of the horizontal extent of ledger lines which equals
718 at least the extent of the metafont ledger_line character, and
719 which grows(!) if the desired extent shrinks below this limit.
721 * roundfilledbox: variable blotdiameter
723 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
725 * VERSION: 1.5.47 released
727 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
729 * lily/porrectus.cc: change line-thickness to thickness, change
730 stem-direction to direction.
732 * scm/backend-documentation-lib.scm (check-dangling-properties):
733 Automatically detect doc'ed properties that are not in an interface
735 * scm/grob-property-description.scm: property cleanup. Remove many
736 paper-column props that are non-existent.
738 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
739 the grob has a molecule-callback.
741 * lily/*.cc: remove many set_interface() calls, and their
744 * input/regression/spacing-knee.ly: new file
746 * input/regression/spacing-clef-first-note.ly: new file
748 * lily/staff-spacing.cc (get_spacing_params): different spacing
749 for pref matter to note at start of line, halfway during line.
751 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
752 correction only if stems have same direction (i.e. not for
753 stem-clef combination).
754 (stem_dir_correction): maximal correction for knees.
756 * lily/*.cc: many updates to interface descriptions.
758 * lily/grob.cc (internal_set_grob_property): add interface check
759 for every set_grob_property call
761 * lily/*.cc: document interface stuff in C++
763 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
765 * lily/volta-bracket.cc: naming: change volta spanner to
768 * input/bugs/*.ly: cleanup, remove lots of files.
770 * buildscripts/mf-to-table.py (write_ps_encoding): generate
771 .encoding file. WARNING: upgrade to pktrace 1.0.3
773 * mf/feta-toevallig.mf: change PS name for parentheses.
775 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
777 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
780 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
782 * lily/scope.cc: remove file .
784 * lily/include/scope.hh: remove file. Remove Scope class
788 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
789 score_forbidden_quants): ): take out of SCM, pass parameters so
790 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
792 (calc_stem_y): robustness: take care of last_visible_stem == 0.
795 * lily/lily-guile.cc (ly_unit): return internal unit.
797 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
799 * lily/paper-outputter.cc (output_version): output internal unit
802 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
804 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
806 * scripts/ly2dvi.py: clean up old .*pk font caching code.
808 * scm/ps.scm: Use uppercase postscript font names for the standard
811 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
812 Add all available TeX Type1 fonts, including Feta, to the
813 Ghostscript font path.
815 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
816 version (affects the FontName) in lilypond.map.
818 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
819 documentation file to fetaNNlist.ly to avoid name collisions between
820 lilypond generated .tex file and font .tex macros file.
823 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
825 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
826 made mensural longa and (semi-)brevis leaner
828 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
830 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
831 clean-up: moved bezier shape and slope from porrectus to lookup
833 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
834 and /usr/share/texmf/fonts
836 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
838 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
840 * lily/text-spanner.cc (brew_molecule): add #'thickness
841 (brew_molecule): add corrections for thickness in molecule padding.
843 * lily/line-spanner.cc (line_atom): make function private
845 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
846 discover bounding box. This solves the cropping problem.
848 * lily/bar-check-iterator.cc (process): Only resynchronize bar
849 check when it fails. This fixes the combination of grace notes
852 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
854 * lily/repeated-music.cc (minimum_start): new Scheme callable function
855 (first_start): new Scheme callable. This will fix repeated music
856 starting with grace notes.
858 * lily/music.cc (start_mom): check start-moment-function grob property.
860 * VERSION: 1.5.45 released
862 * input/regression/system-extents.ly: new regression test. Test
865 * lily/system.cc: rename LineOfScore into System
867 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
869 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
870 (ly_get_extent): new Scheme function ly-get-extent
872 * ps/lilyponddefs.ps: use output-scale for line-x
875 * scm/ps.scm (font-load-command):
878 2002-03-20 Rune Zedeler <rune@zedeler.dk>
880 * lily/beaming-info.cc: Stupid typo fixed
882 * lily/accidental-engraver.cc: rewrote accidental-routines to get
883 support for cross-context auto-accidentals.
884 Now the engraver can stay in Staff-context and see other contexts
886 Changed properties: autoAccidentals, autoCautionaries
888 * lily/translator-group.cc (set_children_property):
889 Function added recursively setting the same property (deep_copied)
890 for all children of a Translator_group.
892 * ly/property-init.ly: added commands
893 \pianoAccidentals \voiceAccidentals
894 \modernVoiceAccidentals \modernVoiceCautionaries
896 * ly/engraver-init.ly: Correct initialization of new accidentals.
898 * scm/translator-property-description.scm: Updated
900 * input/regression/accidental-voice.ly: Added
902 * Documentation/regression-test.tely: Added new test
904 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
906 * VERSION: 1.5.44 released
908 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
910 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
912 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
915 * tex/feta*.tex: remove.
917 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
918 all software dealing with it.
920 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
922 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
923 (this fixes pdf output). Drop awk dependency.
925 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
926 dimensions (linewidth) are in mm.
928 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
930 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
932 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
934 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
936 * VERSION: 1.5.43 released
938 * scm/beam.scm (beam-dir-majority-median): if majority is
939 undecided, use median. Removes a forced dir in sarabande.
941 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
943 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
945 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
946 widths, heights and shortens are now customisable properties.
948 * scm/grob-description.scm, scm/grob-property-description.scm: New
949 properties added to PianoPedalBracket, unnecessary
950 Y-offset-callbacks removed from *Pedal, undocumented properties
953 * Documentation/user/refman.itely: Piano pedal updates.
955 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
957 * scm/grob-property-description.scm:
958 * scm/interface-description.scm: Remove old stuff.
960 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
961 0.48 (previously 0.42).
962 (Beam): Remove old stuff.
965 * lily/stem-tremolo.cc:
967 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
968 (previously space-function).
970 * stepmake/bin/add-html-footer.py: Website title fix.
972 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
974 * scripts/ly2dvi.py (environment): use new font searching setup.
976 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
978 * lily/tfm.cc (dimensions): make code dimension independent
980 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
983 * tex/lily-ps-defs.tex: scaling for PS points and MM.
985 * lily/include/dimensions.hh: try MM as internal unit.
987 * scm/*.scm: remove invoke-dim1
989 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
991 * GNUmakefile.in (fontpaths): add fontpaths target,
993 * make/mutopia-targets.make: add PDF rules.
995 * make/mutopia-rules.make: add pdf rule.
997 * buildscripts/mutopia-index.py (list_item): add PDF.
999 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1001 * make/lilypond-vars.make: set TEXMF for the new font setup.
1003 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1005 * VERSION: 1.5.42 released
1007 * mf/feta-schrift.mf: endless twiddling of Tr.
1009 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1010 endless twiddling with the bulb shape.
1012 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1013 little smaller if there is an accidental.
1015 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1017 * buildscripts/lilypond-profile.sh:
1019 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1020 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1021 Implement new font installation strategy
1023 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1024 the new font installation strategy.
1026 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1029 * input/test/staff-size.ly: Simplified using StaffContainer
1031 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1034 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1036 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1038 * lily/beam.cc (score_stem_lengths): new quanting stuff
1039 (score_forbidden_quants): Second and third beam quant stuff.
1041 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1043 * lily/beam.cc (least_squares): Remember least-squares-dy for
1045 (quantise_interval): Don't quant to dy steeper that
1046 least-squares-dy. Return empty interval if no sane quants found.
1047 (quantise_position): Try quantise_interval until we have
1048 acceptable solution.
1050 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1052 * scm/interface-description.scm (beam-interface): Update.
1054 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1056 * VERSION: 1.5.41 released
1058 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1059 optima serifs on top of t, bottom of r.
1061 * mf/feta-bolletjes.mf: make ledger line rounder.
1063 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1065 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1068 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1070 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1071 well as text pedal indications and a combination of both. All
1072 pedal indications are horizontally aligned on a line spanner.
1074 * lily/text-spanner.cc: Edge-width property added to use in
1075 bracketed piano pedals. Function setup_sustain_pedal added to set
1076 the dimensions of the brackets.
1078 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1079 some of the *Pedal properties tweaked.
1081 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1082 edge-width (TextSpanner) properties.
1084 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1086 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1087 fontified identifiers list.
1089 * input/test/pedal.ly: New pedal features added.
1091 * Documentation/user/refman.itely: New pedal features documented.
1094 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1096 * lily/include/new-beam.hh: Previously new-beam.hh
1097 * lily/beam.cc: Previously new-beam.cc
1098 (least_squares): Bugfix: don't barf on beams with less than two
1099 visible stems (tremolos).
1102 * scm/grob-description.scm (Beam): Junk old beam stuff.
1105 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1109 * mf/feta-eindelijk.mf: new 8th rest.
1111 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1112 stick out of staffline
1114 * scripts/lilypond-book.py: fixes for texi regular expressions.
1116 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1118 * lily/include/new-beam.hh:
1119 * lily/new-beam.cc: New file.
1121 * flower/include/interval.hh:
1122 * flower/include/interval.tcc (delta): New method.
1123 (swap): Now public (previously private).
1125 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1126 1 staff-line-thickness. Sadly, this makes dy quanting problems
1127 (dy quants allowed should depend on actual left y) more visible.
1129 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1131 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1133 * scm/grob-property-description.scm (concaveness-threshold): Add
1134 typecheck and description.
1136 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1137 concaveness-threshold (previously concaveness).
1139 * lily/beam.cc (check_concave): Remove choices and debugging
1140 stuff: use best concaveness calculation.
1141 (quantise_dy): Remove choice. Try to never make a slope steeper
1142 by quantising, but certainly never quantise a slope away.
1143 (check_stem_length_f): Remove choice. In case of lengthening
1144 alowed, always lengthen to ideal length.
1146 * Documentation/index.texi: Fix FAQ url.
1148 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1149 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1151 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1153 * VERSION: 1.5.39 released
1155 * lily/simple-spacer.cc (add_rod): rods take precedence over
1156 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1158 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1160 * lily/note-spacing.cc (get_spacing): only insert space for
1161 accidentals if necessary.
1163 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1165 * lily/spacing-spanner.cc (musical_column_spacing): new
1166 function. Have correct spacing from note to end-of-line as well.
1168 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1170 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1172 * darwin.patch: New file.
1174 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1175 code. Shorten stems by fraction of stems to be shortened.
1177 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1178 of shorten value for boundary cases.
1180 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1181 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1183 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1185 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1187 * scm/grob-description.scm (Beam): Add concaveness. Replace
1188 Beam::cancel_suspect_slope with Beam::check_concave.
1190 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1191 set slope to horizontal if concaveness > Beam.concaveness. This
1192 handles cases that kludgy cancel_suspect_slope was meant to catch
1194 (cancel_suspect_slope): Remove.
1196 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1198 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1199 stemLeftBeamCount and stemRightBeamCount to equal 0.
1202 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1204 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1205 fixed spacing for pref matter, if the next column is musical, and
1208 * lily/note-spacing.cc (stem_dir_correction): Use correct
1209 discretionary for stem-bar spacing.
1211 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1213 * VERSION: 1.5.38 released
1215 * lily/grob.cc (warning): Use cause tracking to give more
1216 meaningful errors from the backend.
1218 * lily/property-iterator.cc (check_grob): Warn if setting grob
1219 property in unknown grob.
1221 * mf/feta-toevallig.mf: brushed stems for natural sign.
1223 * lily/molecule.cc (align_to): don't translate empty molecule.
1224 (this triggers a very subtle bug in time-signature.)
1226 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1228 * lily/spring.cc: remove file.
1230 * input/regression/spacing-stem-bar.ly: new file
1232 * lily/score.cc (run_translator): resurrect point-and-click
1234 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1237 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1238 spacing is now globally determined, using the most common shortest
1239 note. Notes that are shorter are spaced geometrically, and with
1240 expand hints. This makes spacing more even, and measures that have
1241 very short notes won't be that stretched out.
1243 * mf/feta-klef.mf: F-clef fixes, documentation on the
1244 shape. (WARNING: font changed.)
1246 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1248 * lily/simple-spacer.cc (add_columns): support for infinitely
1251 * lily/staff-spacing.cc (get_spacing_params): space after
1252 prefatory matter is fixed.
1254 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1256 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1257 barline following an upstem.
1259 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1260 function from next_notes_correction().
1261 (bar_y_positions): idem.
1263 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1265 * input/regression/break.ly (texidoc): bugfix: escape \ in
1268 * lily/staff-spacing.cc (next_notes_correction): Correct the
1269 spacing of a note following a barline.
1272 2002-03-04 Glen Prideaux
1274 * mf/feta-solfa.mf: Shaped note heads
1276 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1278 * VERSION: 1.5.37 released
1280 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1281 left-align molecule.
1283 * lily/break-align-interface.cc (do_alignment): completely
1284 rewritten. Now it does not use Align_interface anymore, but a
1285 separate routine. Like StaffSpacing, it reads space-alist from the
1286 breakable grobs. This allows you to set spacing using
1288 \property Staff.Clef \override #'space-alist = '(....stuff....)
1290 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1291 to Bar_line. Move files around as well.
1293 * lily/time-signature.cc (time_signature): left align time signatures.
1295 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1296 Corrections of the glyph shape C. Comments added.
1298 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1300 * lily/spacing-spanner.cc: move from third-try.cc; rename
1301 Third_spacing_spanner to Spacing_spanner.
1303 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1304 spacing stuff. Much cleaner now, and we prepare for neat spacing
1305 tricks around bar lines and such.
1307 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1308 variables with themselves. (Ouch.)
1310 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1313 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1317 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1320 * lily/music.cc (ly_get_mus_property): typechecking
1321 (ly_set_mus_property): idem
1322 (ly_make_music): idem
1323 (ly_music_name): idem
1325 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1327 * lily/note-spacing.cc (stem_dir_correction): correction for
1328 same stem notes as well.
1330 * lily/pitch.cc (pitch_transpose): stricter typechecking
1332 * mf/parmesan*mf: magnification fixes.
1334 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1336 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1338 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1339 documenting the font. (Doesn't work for parmesan at the moment)
1341 * Documentation/user/appendices.itely (The Feta font): Add list of
1342 Feta font symbols with names.
1344 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1347 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1349 * lily/translator-group.cc (ly_set_trans_property): typechecking
1350 (ly_get_trans_property): typechecking.
1352 * lily/font-metric.cc (ly_text_dimension): typechecking
1353 (ly_find_glyph_by_name): idem.
1355 * scm/bass-figure.scm (brew-complete-figure): support for
1358 * lily/grob.cc (ly_get_paper_var): new function
1360 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1362 * VERSION (PATCH_LEVEL): 1.5.35 released.
1364 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1365 (bracket): New function.
1367 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1368 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1370 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1373 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1376 * lily/grob.cc (ly_get_grob_property): be anal about types.
1377 (ly_set_grob_property): idem
1379 * lily/figured-bass-engraver.cc (process_music): move molecule
1380 building completely to Scheme
1382 * lily/include/musical-request.hh (class Bass_figure_req): Add
1385 * lily/parser.yy (bass_figure): add support for space figure.
1387 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1389 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1391 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1392 (ly_align_to_x): new function ly-align-to!
1394 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1395 function ly-get-font
1397 * mf/feta-nummer.mf: include normal-space dimension.
1399 * lily/collision.cc (check_meshing_chords): don't merge collisions
1402 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1405 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1407 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1409 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1411 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1414 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1417 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1418 scm/grob-description.scm: added mensural fermata symbol
1420 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1422 * VERSION: 1.5.34 released.
1424 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1426 * lily/staff-symbol-referencer.cc (callback): assume that
1427 staff-position is unset in general.
1429 * input/regression/rest-pitch.ly: new file.
1431 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1434 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1436 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1437 as Scheme option. Run regression test by default with
1438 internal-type-checking.
1440 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1442 * lily/lily-guile.cc (type_check_assignment): changed functions.
1444 * scm/*description*.scm: be anal about typechecks. Some changes
1445 for internal variable names.
1447 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1449 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1451 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1453 * VERSION: 1.5.33 released.
1455 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1456 flare_path everywhere (c-clef, numbers).
1458 * lily/bar-number-engraver.cc (process_music): also print bar
1459 number if measure starts with grace note.
1461 * input/regression/grace-bar-number.ly: new test.
1463 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1465 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1468 * scm/music-functions.scm (voicify-music): split chords into
1469 different voices automatically.
1471 * lily/music.cc (ly_music_list_p): new function
1473 * lily/music-sequence.cc (do_relative_octave): robustification
1475 * scm/music-functions.scm: many utility functions
1477 * lily/music.cc (ly_set_mus_property): add type checks to the
1478 Scheme property assignment.
1480 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1483 * mf/lilypond.map: .map file from Mats' page.
1485 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1487 * Some more parmesan related fixes;
1489 * Custos: varying shape (in particular, stem length), depending on the
1490 vertical position of the custos (on staffline / between stafflines);
1492 * Custos: added grob property "neutral-direction" (same semantics as
1493 with stem); introduced new grob property "neutral-position";
1495 * Time-signature: print a warning when resorting to default layout.
1497 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1499 * lily/translator-group.cc (add_fresh_simple_translator): remove
1500 function; initialize() is called through
1501 Translator_group::initialize().
1503 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1504 for the neighbors of a loose column.
1506 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1507 position loose columns so that they don't collide.
1509 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1511 * VERSION: 1.5.32 released.
1513 * scm/font.scm: remove font-name symbol.
1515 * mf/GNUmakefile: use pktrace for making PFAs
1517 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1519 * lily/rest-collision.cc (do_shift): read direction field from
1520 rest-column in case of note-rest collision. This should fix some
1521 problems with rest collisions.
1523 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1525 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1528 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1529 property. Read pitch directly from #'cause.
1531 * mf/feta-puntje.mf: bugfix
1533 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1535 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1537 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1539 * Documentation/windows/compiling.texi: Update.
1541 * Documentation/index.texi: Add link to orphaned compiling for
1544 * Documentation/footer.html.in: Comment fix.
1546 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1548 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1550 * VERSION: 1.5.31 released
1552 * lily/new-spacing-spanner.cc: remove file.
1554 * lily/third-try.cc (do_measure): only take spacings into account
1555 if they pertain to the column pair under consideration. This fixes
1556 spacing bug when mixing eighths triplets and normal eighths.
1558 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1559 lines don't take up space anymore. Document why in note-head.cc
1562 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1564 * lily/font-interface.cc (get_font): reinstate
1565 #'font-magnification. See input/regression/font-magnification.ly
1566 (get_font): Change the definition of #'font-name grob property.
1568 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1569 that have a #'cause field.
1571 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1573 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1575 * mf/GNUmakefile: remove metapost stuff
1577 * stepmake/aclocal.m4: remove metapost detection stuff.
1579 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1581 * mf/GNUmakefile (FET_FILES):
1582 (FONT_FILES): Include parmesan.
1584 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1587 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1589 * Documentation/user/refman.itely (Paper size): Quote braces.
1591 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1593 * stepmake/aclocal.m4: fixed bison version check to be more
1596 * lily/stem.cc (position_noteheads): fix for cluster chords.
1598 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1600 * python 2.2 support.
1602 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1604 * VERSION: 1.5.30 released
1606 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1608 * Documentation/user/refman.itely (Dynamics): add a note about
1611 * scm/grob-description.scm: add a 'translator-type? object
1612 property, so that \property Foo.Bar =\turnOff doesn't cause
1615 * lily/translator-group.cc (add_fresh_group_translator): make
1616 new add-translator functions to make distinction between fresh and
1617 used group-translators. Fixes problem with scripts on auto-changing voice
1619 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1620 add to Score_performer. Fixes bar checks in MIDI
1622 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1623 heads. Fixes many quirks with ties.
1625 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1626 in the grob property #'cause, instead of using Grob_info.
1628 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1629 staff context, fixing dot alignment on collisions.
1631 * lily/beam-engraver.cc (try_music): remove can't find beam start
1632 warning, so that skipTypesetting won't complain.
1634 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1636 * Documentation/user/refman.itely (Paper size): Documentation fix,
1639 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1641 * scm/grob-description.scm: \breathe: Use feta font comma by default
1643 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1645 * input/template/piano-dynamics.ly (pedal): Simplified
1647 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1649 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1651 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1653 * lilypond-mode.el (LilyPond-command-query): ignore case.
1655 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1657 * VERSION: 1.5.29 released
1659 * all files: change 2001 to 2002 in headers globally
1661 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1662 cheese") font. WARNING: fonts changed.
1664 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1666 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1668 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1670 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1672 * mf/*.mf: Fixed a few typos in various .mf files
1674 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1676 * mf/: added macro soft_penstroke
1678 softened some glyphs
1679 redrawn triangular noteheads
1681 added classical quarter rest
1683 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1685 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1686 lines and staff_space>=2
1688 * lily/rest.cc: Use default rests when current style glyphs not
1690 \property Staff.Rest \override #'style = #'classical
1692 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1694 * input/bugs/first-tie.ly: New file.
1696 * input/bugs/spacing-clash.ly: New file.
1698 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1702 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1704 * lilypond-indent.el: New file providing indentation for
1705 parenthesised blocks of lilypond code in Emacs
1707 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1708 indentation and handle block comments properly. Distinguish
1709 accents from close-brackets in fontification.
1711 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1713 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1715 * Documentation/windows/installing.texi:
1716 * Documentation/windows/compiling.texi: Include from 1.4.10.
1718 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1720 * input/bugs/first-midi-tie.ly: New file.
1722 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1724 * VERSION: 1.5.28 released
1726 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1727 illicit beams on [c4 c4] etc.
1729 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1730 file. Make separate iterator for Bar_checks. Bar_check now happen
1731 outside engravers, meaning that you can use them with
1732 skipTypesetting. Associated changes in other files.
1734 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1737 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1739 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1741 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1743 * lily/stem.cc (set_spacing_hints): removed function
1745 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1746 correction for spacing; now take vertical extents of the stem into
1749 * lily/third-try.cc: More hacking to get spacing working.
1751 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1752 sits at staff level and creates note spacing objects. Scrap it
1753 again, and document why.
1755 * lily/include/group-interface.hh: rename functions.
1757 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1759 * stepmake/stepmake/c++-rules.make:
1760 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1762 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1764 * make/lilypond-vars.make:
1765 * scripts/ly2dvi.py (setup_environment):
1766 * scripts/lilypond-book.py (setup_environment): Also set tex
1769 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1771 * VERSION: 1.5.27 released.
1773 * Documentation/user/refman.itely (Bar numbers): added bar number
1776 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1779 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1781 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1782 spread the last few lines all over the last page of a score.
1784 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1786 * lily/third-try.cc: 3rd try at revising spacing
1787 engine. Not yet finished.
1789 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1792 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1793 collecting past note heads.
1795 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1798 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1799 class. Keep a queue of grobs that are still playing in busyGrobs.
1801 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1802 function. Use busyGrobs to detect playing notes.
1804 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1806 * Documentation/topdocs/INSTALL.texi: Added note about broken
1807 python-2.1. Updated note for Debian's broken (well, broken for
1808 our use anyway) tex configuration.
1810 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1812 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1813 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1815 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1816 (But left margin of png's still misses a few pixels. Arg.)
1818 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1820 * lilypond-mode.el (LilyPond-command-next-midi): Make
1821 possible to kill midi-process (using "C-c C-m").
1823 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1825 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1826 Convert strings with dimensions to numbers.
1828 * lily/volta-engraver.cc: only make a bracket for the top staff,
1829 as found in stavesFound.
1831 * lily/bar-number-engraver.cc: remove staff administration.
1833 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1834 administration. This breaks support for invisible-staff.
1836 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1837 symbols into stavesFound.
1839 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1840 grobs, and put them into columns.
1842 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1843 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1845 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1847 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1848 midi section in the Emacs-mode, so it is possible to play certain
1849 score in a multiscore lilypond-file.
1851 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1852 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1853 (FIXME: not accessible from guile)
1855 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1856 better support for Kurt Stone's suggestions.
1857 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1859 Changed property: localKeySignature.
1860 Added properties: extraNatural, autoAccidentals,
1863 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1865 * ly/property-init.ly: added commands
1866 \defaultAccidentals \modernAccidentals \modernCautionaries
1867 \noResetKey \forgetAccidentals
1869 * ly/engraver-init.ly: Correct initialization of new accidentals.
1871 * scm/translator-property-description.scm: The new properties
1874 * input/: Some examples added, some changed.
1876 * Documentation/regression-test.tely: Added quick test of new
1879 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1881 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1884 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1886 * lily/beam.cc (before_line_breaking): Make beams without stems
1887 or with only one stem disappear.
1889 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1891 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1892 files to have standardised HTML bibliography output. Update build
1893 docs to reflect this.
1895 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1896 active_count_, so that we don't have to look for active springs
1899 * scm/interface-description.scm,scm/grob-property-description.scm:
1902 * lily/simple-spacer.cc (solve): Handle forced line breaks
1903 here. Fixes problems when combining linebreaks with non-fitting
1906 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1908 * 1.4.9.jcn3 forward ports.
1910 * Really included .cvsignore.
1912 * Included Han-Wen's uu1 windows fixes.
1914 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1916 * Added Cygwin setup.hint
1918 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1919 tetex/texmf, python installations.
1921 * Updated cygwin installer.
1923 * ly2dvi: Don't accept filenames with spaces (+ fix).
1925 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1927 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1929 * lily/translator-def.cc: Remove manual symbol caching.
1931 * lily/script-column.cc (before_line_breaking): robustness check:
1932 don't crash if no direction set.
1934 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1936 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1940 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1942 * lily/note-head.cc (head_extent): added to compute width without
1943 ledger lines. By default, ledger lines take up width now.
1945 * input/regression/fingering.ly: demonstrate auto fingering.
1946 Horizontal placement is still buggy.
1948 * lily/fingering-engraver.cc (class Fingering_engraver):
1949 added. Provides support for horizontal fingering scripts
1951 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1953 * lily/side-position-interface.cc (add_staff_support): add staff
1954 only for Y-axis side positions.
1956 * lily/parser.yy (request_chord): Fix mem leak.
1958 * lily/musical-request.cc (transpose): moved to Music::transpose()
1960 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1961 can store grobs as grob-creation cause as well.
1963 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1964 handle when adding. Use precomputed symbols throughout lily.
1966 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1967 track of spacing issues.
1969 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1970 to keep track of staff spacing
1972 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1974 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1975 code clean from conditionals and have a concentrated sets of
1976 compatibility fixes for old guile versions.
1978 * Fixes for guile 1.4, including embedded ps.
1980 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1982 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1983 well for markup texts.
1985 * lily/musical-request.cc (length_mom): kludge for null pointer.
1987 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1989 * scm/lily.scm (sign): bugfix
1991 * CHANGES: Change log instated.
1993 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.