1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Documentation/windows/GNUmakefile: Avoid collapsed directory
6 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
7 constructs '//' from arguments.
9 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
11 * scm/music-functions.scm (check-start-chords): function to check
12 for chords without \context. Apply automatically from parser.
14 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
16 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
19 * scm/output-lib.scm: fix ez notation stems.
21 * lily/paper-outputter.cc: various fixes to speed up compilation.
23 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
25 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
27 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
29 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
30 determine latex input.
32 * stepmake/bin/install-sh: Include latest from libtool.
35 * configure: Regenerate.
37 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
38 (USER_CFLAGS): Bugfix, include CPPFLAGS.
40 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
42 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
43 REQUIRED programs and version. Try to continue configuring, list
44 missing programs at the end, but don't generate a GNUmakefile if
45 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
46 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
47 fancy for some older systems.
49 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
51 * lily/score-engraver.cc (typeset_all): sanity check for items
52 that are Y parent to spanner.
54 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
57 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
59 * lily/*.cc: remove as many iostream use as possible.
61 * flower/ : remove text-db, text-stream, data-file.
63 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
65 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
66 (completize_preamble): don't barf if no preamble present.
67 (do_file): allow extensions on --output
69 * scripts/ly2dvi.py (make_preview): make automatic preview of
70 first system. Small cleanups.
72 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
74 * scripts/lilypond-book.py (make_pixmap): output png directly.
76 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
79 * lily/parser.yy (My_lily_parser): comment out code. (Causes
80 problems with recent bison releases).
82 * make/lilypond.redhat.spec.in: add pfa fonts to X.
84 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
86 * lilypond-font-lock.el: Fixes the order of the note name list.
88 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
90 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
91 capability, --verbose option, rlimit hack.
93 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
95 * lily/piano-pedal-engraver.cc: cleanups.
97 * lily/accidental.cc (after_line_breaking): add break tie
100 * lily/text-engraver.cc (try_music): don't typeset fingerings
102 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
104 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
106 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
108 * lily/*.cc: change gh_str02scm() to ly_str02scm().
110 * lily/spacing-spanner.cc (note_spacing): Bound
111 shortest-playing-length by the distance to next note. This should
112 fix chord tremolo spacing.
114 * VERSION: 1.5.55 released
116 * lily/stem.cc (off_callback): invisible stem over whole note is
117 centered on note now.
119 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
120 stem-tremolo is stem now.
122 * input/mozart-hrn*.ly: many corrections.
124 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
125 support for dynamic scripts.
127 * lily/accidental-placement.cc (position_accidentals): check for
128 collisions as well: should avoid those heads too.
130 * lily/beam.cc (check_concave): allow undefined gap and
131 threshold. Change the meaning of threshold/gap == 0.0.
132 (check_concave): skip Stolba concaveness check if we have a knee
135 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
137 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
138 tremolos of dotted duration.
140 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
142 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
143 downstroke again. Sigh.
145 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
148 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
150 * lily/slur.cc (add_column): allow slur over rest.
152 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
154 * lily/beam.cc: move scoring constants out of code
156 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
158 * mf/feta-nummer.mf: scalability fixes.
160 * mf/feta-nummer-code.mf: fixes for 5, 8.
162 * mf/feta-klef.mf: G clef fixes.
164 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
166 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
168 * scripts/lilypond-book.py: %Newline, rather than glue macros
169 after \end{verbatim}.
171 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
173 * Documentation/user/lilypond-book.itely:
174 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
177 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
179 * scm/grob-property-description.scm (beam-space): Junk.
181 * lily/beam.cc (space_function): New method.
182 (get_interbeam): Call space-function.
184 * scm/grob-description.scm (Beam): Initialize space-function with
185 Beam::space_function.
187 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
188 Beam.space-function. Don't quantise grace beams.
190 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
192 * VERSION: 1.5.54 released
194 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
197 * Documentation/index.texi: add PDF links.
199 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
201 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
202 compare #'glyph as strings.
204 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
206 * scripts/ly2dvi.py (setup_environment): fix by Mats.
208 * lily/stem.cc (head_count): Change function name. Change property
209 to #'note-heads i.s.o. #'heads.
210 (position_noteheads): Kern noteheads for invisible stems.
211 (before_line_breaking): Do position_noteheads() for whole note
214 * lily/accidental-placement.cc (position_accidentals): First
215 determine refpoints, only then determine extents.
217 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
219 * lily/accidental-placement.cc (position_accidentals): use all
220 note heads for note head-skyline.
222 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
224 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
226 * Documentation/windows/setup.hint (requires): Add gsview dependency.
228 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
230 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
232 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
234 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
236 * mf/feta-schrift.mf: lighter staccato.
238 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
240 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
242 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
244 * VERSION: 1.5.53 released
246 * scm/lily.scm (ly-load): use primitive-load for loading.
248 * lily/misc.cc: remove quantise_iv()
250 * lily/*.cc: pass read-only arrays by reference.
252 * lily/grob.cc (common_refpoint_of_array): new function. Try to
253 use common_refpoint_of_{array, list} when possible.
255 * lily/include/accidental-placement.hh: new file.
257 * lily/accidental-placement.cc (alignment_callback): position
258 accidentals in a better way.
260 * lily/skyline.cc: new file. Compute distances for collections of
263 * lily/include/skyline.hh: new file
265 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
267 * lily/accidental.cc (class Accidental_interface): grob for a
270 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
273 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
274 together with new accidental-interface.
276 * lily/include/*.hh: remove spurious set_interface() decls.
278 * lily/key-signature-interface.cc (brew_molecule): add padding for
279 natural signs. Make natural typesetting like the sharp.
282 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
283 is now slightly curved, not straight.
286 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
288 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
290 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
291 more strictly. Use more clever regular expressions. Commented regexps.
293 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
295 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
297 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
299 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
300 to control width of staff symbol in ragged-right mode (by request
303 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
304 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
305 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
306 added support for ligature brackets (needed when transcribing
309 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
311 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
312 Fontify notes more strictly.
314 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
316 * mf/feta-din-code.mf: dynamic z sign.
318 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
320 * lilypond-mode.el: Prevent recoloring strings and comments.
322 * lilypond-font-lock.el: Handle block comments: block comments
323 can have also ordinary comments inside.
325 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
327 * lily/stem.cc (get_default_dir): set direction to CENTER if
328 invisible. Various other fixes to deal with invisible stems and
329 stem-direction == CENTER.
331 * lily/rest-collision.cc (do_shift): take direction from note if
334 * input/regression/tie-grace.ly: new file.
336 * lily/tie-engraver.cc (create_grobs): fix tied graces.
338 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
339 knee correction. Fixes tight spacing for knees.
341 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
343 * VERSION: 1.5.52 released
345 * lily/*.cc: add some undocced properties.
346 scm/grob-description.scm: idem.
348 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
350 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
351 multi-measure rests like "R1 *4" and scheme (typically has '#'
352 in the beginning). Small fixes. Add few reserved words.
354 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
356 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
359 * Documentation/windows/installing.texi: Suggest gswin32c (console
360 program) for getting the version. Layout fixes.
362 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
364 * Documentation/user/tutorial.itely (Running LilyPond): Separate
365 windows viewing commands, remove silly comment about Yap.
367 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
369 * Documentation/topdocs/INSTALL.texi: Describe how to learn
370 configure to find kpathsea on for example Slackware 8.0.
372 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
374 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
375 by default: avoid "1" over single bar rests.
377 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
378 and correct the handling of geometry options.
380 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
382 * lily/include/grob-interface.hh (ADD_INTERFACE): make
383 implementation for Class::has_interface automatically. Junk all
384 other implementations.
386 * lily/grob.cc (internal_get_grob_property): also typecheck
387 property reads. Catches even more undocced properties. Bugfixing
388 left for the uninspired masses.
390 * lily/beam.cc: remove end_after_line_breaking().
392 * lily/grob.cc (calculate_dependencies): remove list support for
395 * lily/font-size-engraver.cc: only do font-interface.
397 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
399 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
402 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
404 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
405 brackets using arpeggio requests.
407 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
408 molecule-callback to use for drawing the brackets.
410 * Documentation/user/refman.itely:
411 * input/test/chord-bracket.ly: Chord brackets documented
413 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
415 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
417 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
419 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
421 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
422 direction tuplets on beams.
424 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
426 * lilypond-indent.el: Bugfix of indentation of final point in buffer
428 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
430 * lilypond-mode.el: new command: LilyPond-un-comment-region.
431 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
432 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
433 submenu to "LilyPond"-menu.
435 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
436 an interface to play midi.
438 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
440 * input/regression/script-stack-order.ly: new file.
442 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
444 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
446 * mf/feta-din-code.mf: kerning for dynamics.
448 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
450 * input/regression/dynamics-glyphs.ly: new file
452 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
454 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
455 forte f for the 2 number. Some fixes for the other bulbed glyphs.
457 * Documentation/windows/gs-profile.sh:
458 * Documentation/windows/gsview-profile.sh: Remove. Functionality
459 moved to gs/gsview windows packages.
461 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
463 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
464 finding out the duration. Fixes chord tremolo bug.
466 * lily/completion-note-heads-engraver.cc (process_music): Set
467 correct duration for all requests of the broken notes.
469 * input/regression/completion-heads.ly: Added example of
470 Completion_heads_engraver.
472 * lilypond-mode.el: Added "2Midi" command
474 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
476 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
477 edge-width, edge-height and shorten-pair properties for tuplet
480 * lilypond-indent.el: Support for blinking of matching parentheses
482 * lilypond-font-lock.el: Fix fontification of closing > on its own line
484 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
485 cleanups of piano pedal brackets.
487 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
489 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
491 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
493 * mf/feta-new-code.mf: new dynamic f sign.
496 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
498 * mf/feta-new-code.mf: new dynamic p sign.
500 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
502 * lily/note-spacing.cc (stem_dir_correction): only do
503 beam-correction if a beam is there.
505 * lily/stem.cc (duration_log): change from flag_i (); better
507 (get_default_stem_end_position): fix dot/flag collision code.
509 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
511 * VERSION: release 1.5.50
513 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
514 unit spring here. Reduces number of warning messages.
516 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
518 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
520 * scm/generic-property.scm: remove generic-property, property-engraver
522 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
524 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
526 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
528 * scm/*.scm: remove volta, hairpin and tuplet functions.
530 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
531 note column for notes/stems/dots that already have parents. Fixes
532 nested grace contexts.
534 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
536 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
537 get too curved slurs.
539 * scm/slur.scm (default-slur-extremity-offset-alist)
540 (default-phrasing-slur-extremity-offset-alist): Move slur
541 attachments further away from note-head, vertically. Also, leave
542 a horizontal gap between slur and stem end.
544 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
546 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
548 * input/regression/spacing-grace-duration.ly: new file
550 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
551 for shortest durations.
553 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
554 extent of the mm rest.
556 * lily/spacing-spanner.cc (get_duration_space): better spacing for
559 * lily/tuplet-bracket.cc (make_bracket): new function
560 (get_x_offset): new function; make tuplet brackets align on stems
561 if stem has same direction.
562 (parallel_beam): be anal about matching bracket to tuplet.
564 * lily/lookup.cc (line): new function Lookup::line().
566 * scm/tex.scm (dashed-line): change -line to -system in names.
568 * lily/box.cc (add_point): new function.
570 * flower/include/interval.hh: new function add_point ().
573 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
575 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
577 * scm/grob-property-description.scm (number-threshold): Add
580 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
581 rest if #measures > number-threshold. Use padding (well, fake
584 * scm/font.scm (make-style-sheet): New styles: mark-number,
586 (paper20-style-sheet-alist): Add bigger bold fonts.
588 * lily/mark-engraver.cc (process_music): Use style mark-number or
591 * .cvsignore: Ignore all kinds of lilypond input and output.
593 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
595 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
597 * lily/staff-symbol.cc (brew_molecule): make line thickness
600 * lily/*.cc: replace stafflinethickness by linethickness.
602 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
604 * input/regression/beam-concave.ly: Add to-be-considered-concave
607 * lily/beam.cc (check_concave): Add check for large gap between an
608 inner notehead and the line through outer noteheads.
610 * scm/grob-description.scm (Beam): Add concaveness-gap, default
611 value 2.0 staff-space.
613 * scm/grob-property-description.scm (concaveness-gap): Add
616 * input/mozart-hrn3-allegro.ly: Fix typo.
618 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
620 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
621 lily/note-head-engraver: improved implementation of roundfilledbox
622 (according to Han-Wen's request)
624 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
625 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
626 lily/simple-spacer.cc: ragged-right alignment
628 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
630 * input/regression/spacing-note-flags.ly: new file
632 * input/regression/spacing-rest.ly: new file
634 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
636 * lily/spacing-spanner.cc (note_spacing): make note spacing after
637 all grace notes tight (not only the column directly following a
640 * scm/grob-description.scm (all-grob-descriptions): don't make
641 mm-rests larger than normal.
643 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
644 curved. Remove white space at the right of flags.
646 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
648 * ports/ports.make: Bugfix: ignore CVS directories.
650 * stepmake/.cvsignore: New file.
652 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
654 * lily/note-spacing.cc (stem_dir_correction): don't correct when
655 there is a flag on the stem.
657 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
659 * scm/grob-property-description.scm (measure-length):
660 measure-length grob property.
662 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
663 better spacing for breakable columns when they're juxtaposed: use
664 measure length if applicable
666 * lily/timing-engraver.cc (start_translation_timestep): store
667 measure length in breakable column at start of measure.
669 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
671 * ROADMAP: Add description for ports dir, to check email upon
674 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
676 * VERSION: 1.5.48 released
678 * lily/multi-measure-rest.cc (symbol_molecule): split off from
680 (set_spacing_rods): Use symbol_molecule() to determine minimum
682 (church_rest): split off from brew_molecule()
683 (big_rest): split off from brew_molecule(). Construct using
686 * mf/feta-eindelijk.mf: junk multi measure rest.
688 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
690 * lily/multi-measure-rest.cc (add_column): remove columns property.
692 * lily/dynamic-engraver.cc (process_music): add more verbose warning
694 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
697 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
699 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
700 keywords covered, dropped some non-keywords, include R- and 128-notes
702 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
704 * Code clean-up: Junk multiple implementations of ledger line
705 creation in note_head, custos, and porrectus. This is important
706 since there soon will be some more applications of ledger lines to
707 come (e.g. ambitus engraver).
709 * Make thickness of ledger lines adjustable. This is essential
710 for mensural notation.
712 * Fix some bugs in the current ledger_line implementation, most
713 notably that of the horizontal extent of ledger lines which equals
714 at least the extent of the metafont ledger_line character, and
715 which grows(!) if the desired extent shrinks below this limit.
717 * roundfilledbox: variable blotdiameter
719 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
721 * VERSION: 1.5.47 released
723 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
725 * lily/porrectus.cc: change line-thickness to thickness, change
726 stem-direction to direction.
728 * scm/backend-documentation-lib.scm (check-dangling-properties):
729 Automatically detect doc'ed properties that are not in an interface
731 * scm/grob-property-description.scm: property cleanup. Remove many
732 paper-column props that are non-existent.
734 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
735 the grob has a molecule-callback.
737 * lily/*.cc: remove many set_interface() calls, and their
740 * input/regression/spacing-knee.ly: new file
742 * input/regression/spacing-clef-first-note.ly: new file
744 * lily/staff-spacing.cc (get_spacing_params): different spacing
745 for pref matter to note at start of line, halfway during line.
747 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
748 correction only if stems have same direction (i.e. not for
749 stem-clef combination).
750 (stem_dir_correction): maximal correction for knees.
752 * lily/*.cc: many updates to interface descriptions.
754 * lily/grob.cc (internal_set_grob_property): add interface check
755 for every set_grob_property call
757 * lily/*.cc: document interface stuff in C++
759 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
761 * lily/volta-bracket.cc: naming: change volta spanner to
764 * input/bugs/*.ly: cleanup, remove lots of files.
766 * buildscripts/mf-to-table.py (write_ps_encoding): generate
767 .encoding file. WARNING: upgrade to pktrace 1.0.3
769 * mf/feta-toevallig.mf: change PS name for parentheses.
771 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
773 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
776 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
778 * lily/scope.cc: remove file .
780 * lily/include/scope.hh: remove file. Remove Scope class
784 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
785 score_forbidden_quants): ): take out of SCM, pass parameters so
786 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
788 (calc_stem_y): robustness: take care of last_visible_stem == 0.
791 * lily/lily-guile.cc (ly_unit): return internal unit.
793 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
795 * lily/paper-outputter.cc (output_version): output internal unit
798 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
800 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
802 * scripts/ly2dvi.py: clean up old .*pk font caching code.
804 * scm/ps.scm: Use uppercase postscript font names for the standard
807 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
808 Add all available TeX Type1 fonts, including Feta, to the
809 Ghostscript font path.
811 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
812 version (affects the FontName) in lilypond.map.
814 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
815 documentation file to fetaNNlist.ly to avoid name collisions between
816 lilypond generated .tex file and font .tex macros file.
819 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
821 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
822 made mensural longa and (semi-)brevis leaner
824 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
826 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
827 clean-up: moved bezier shape and slope from porrectus to lookup
829 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
830 and /usr/share/texmf/fonts
832 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
834 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
836 * lily/text-spanner.cc (brew_molecule): add #'thickness
837 (brew_molecule): add corrections for thickness in molecule padding.
839 * lily/line-spanner.cc (line_atom): make function private
841 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
842 discover bounding box. This solves the cropping problem.
844 * lily/bar-check-iterator.cc (process): Only resynchronize bar
845 check when it fails. This fixes the combination of grace notes
848 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
850 * lily/repeated-music.cc (minimum_start): new Scheme callable function
851 (first_start): new Scheme callable. This will fix repeated music
852 starting with grace notes.
854 * lily/music.cc (start_mom): check start-moment-function grob property.
856 * VERSION: 1.5.45 released
858 * input/regression/system-extents.ly: new regression test. Test
861 * lily/system.cc: rename LineOfScore into System
863 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
865 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
866 (ly_get_extent): new Scheme function ly-get-extent
868 * ps/lilyponddefs.ps: use output-scale for line-x
871 * scm/ps.scm (font-load-command):
874 2002-03-20 Rune Zedeler <rune@zedeler.dk>
876 * lily/beaming-info.cc: Stupid typo fixed
878 * lily/accidental-engraver.cc: rewrote accidental-routines to get
879 support for cross-context auto-accidentals.
880 Now the engraver can stay in Staff-context and see other contexts
882 Changed properties: autoAccidentals, autoCautionaries
884 * lily/translator-group.cc (set_children_property):
885 Function added recursively setting the same property (deep_copied)
886 for all children of a Translator_group.
888 * ly/property-init.ly: added commands
889 \pianoAccidentals \voiceAccidentals
890 \modernVoiceAccidentals \modernVoiceCautionaries
892 * ly/engraver-init.ly: Correct initialization of new accidentals.
894 * scm/translator-property-description.scm: Updated
896 * input/regression/accidental-voice.ly: Added
898 * Documentation/regression-test.tely: Added new test
900 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
902 * VERSION: 1.5.44 released
904 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
906 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
908 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
911 * tex/feta*.tex: remove.
913 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
914 all software dealing with it.
916 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
918 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
919 (this fixes pdf output). Drop awk dependency.
921 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
922 dimensions (linewidth) are in mm.
924 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
926 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
928 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
930 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
932 * VERSION: 1.5.43 released
934 * scm/beam.scm (beam-dir-majority-median): if majority is
935 undecided, use median. Removes a forced dir in sarabande.
937 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
939 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
941 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
942 widths, heights and shortens are now customisable properties.
944 * scm/grob-description.scm, scm/grob-property-description.scm: New
945 properties added to PianoPedalBracket, unnecessary
946 Y-offset-callbacks removed from *Pedal, undocumented properties
949 * Documentation/user/refman.itely: Piano pedal updates.
951 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
953 * scm/grob-property-description.scm:
954 * scm/interface-description.scm: Remove old stuff.
956 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
957 0.48 (previously 0.42).
958 (Beam): Remove old stuff.
961 * lily/stem-tremolo.cc:
963 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
964 (previously space-function).
966 * stepmake/bin/add-html-footer.py: Website title fix.
968 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
970 * scripts/ly2dvi.py (environment): use new font searching setup.
972 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
974 * lily/tfm.cc (dimensions): make code dimension independent
976 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
979 * tex/lily-ps-defs.tex: scaling for PS points and MM.
981 * lily/include/dimensions.hh: try MM as internal unit.
983 * scm/*.scm: remove invoke-dim1
985 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
987 * GNUmakefile.in (fontpaths): add fontpaths target,
989 * make/mutopia-targets.make: add PDF rules.
991 * make/mutopia-rules.make: add pdf rule.
993 * buildscripts/mutopia-index.py (list_item): add PDF.
995 * buildscripts/lilypond-profile.sh (TEXMF): typo.
997 * make/lilypond-vars.make: set TEXMF for the new font setup.
999 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1001 * VERSION: 1.5.42 released
1003 * mf/feta-schrift.mf: endless twiddling of Tr.
1005 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1006 endless twiddling with the bulb shape.
1008 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1009 little smaller if there is an accidental.
1011 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1013 * buildscripts/lilypond-profile.sh:
1015 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1016 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1017 Implement new font installation strategy
1019 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1020 the new font installation strategy.
1022 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1025 * input/test/staff-size.ly: Simplified using StaffContainer
1027 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1030 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1032 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1034 * lily/beam.cc (score_stem_lengths): new quanting stuff
1035 (score_forbidden_quants): Second and third beam quant stuff.
1037 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1039 * lily/beam.cc (least_squares): Remember least-squares-dy for
1041 (quantise_interval): Don't quant to dy steeper that
1042 least-squares-dy. Return empty interval if no sane quants found.
1043 (quantise_position): Try quantise_interval until we have
1044 acceptable solution.
1046 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1048 * scm/interface-description.scm (beam-interface): Update.
1050 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1052 * VERSION: 1.5.41 released
1054 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1055 optima serifs on top of t, bottom of r.
1057 * mf/feta-bolletjes.mf: make ledger line rounder.
1059 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1061 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1064 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1066 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1067 well as text pedal indications and a combination of both. All
1068 pedal indications are horizontally aligned on a line spanner.
1070 * lily/text-spanner.cc: Edge-width property added to use in
1071 bracketed piano pedals. Function setup_sustain_pedal added to set
1072 the dimensions of the brackets.
1074 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1075 some of the *Pedal properties tweaked.
1077 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1078 edge-width (TextSpanner) properties.
1080 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1082 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1083 fontified identifiers list.
1085 * input/test/pedal.ly: New pedal features added.
1087 * Documentation/user/refman.itely: New pedal features documented.
1090 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1092 * lily/include/new-beam.hh: Previously new-beam.hh
1093 * lily/beam.cc: Previously new-beam.cc
1094 (least_squares): Bugfix: don't barf on beams with less than two
1095 visible stems (tremolos).
1098 * scm/grob-description.scm (Beam): Junk old beam stuff.
1101 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1105 * mf/feta-eindelijk.mf: new 8th rest.
1107 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1108 stick out of staffline
1110 * scripts/lilypond-book.py: fixes for texi regular expressions.
1112 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1114 * lily/include/new-beam.hh:
1115 * lily/new-beam.cc: New file.
1117 * flower/include/interval.hh:
1118 * flower/include/interval.tcc (delta): New method.
1119 (swap): Now public (previously private).
1121 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1122 1 staff-line-thickness. Sadly, this makes dy quanting problems
1123 (dy quants allowed should depend on actual left y) more visible.
1125 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1127 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1129 * scm/grob-property-description.scm (concaveness-threshold): Add
1130 typecheck and description.
1132 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1133 concaveness-threshold (previously concaveness).
1135 * lily/beam.cc (check_concave): Remove choices and debugging
1136 stuff: use best concaveness calculation.
1137 (quantise_dy): Remove choice. Try to never make a slope steeper
1138 by quantising, but certainly never quantise a slope away.
1139 (check_stem_length_f): Remove choice. In case of lengthening
1140 alowed, always lengthen to ideal length.
1142 * Documentation/index.texi: Fix FAQ url.
1144 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1145 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1147 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1149 * VERSION: 1.5.39 released
1151 * lily/simple-spacer.cc (add_rod): rods take precedence over
1152 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1154 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1156 * lily/note-spacing.cc (get_spacing): only insert space for
1157 accidentals if necessary.
1159 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1161 * lily/spacing-spanner.cc (musical_column_spacing): new
1162 function. Have correct spacing from note to end-of-line as well.
1164 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1166 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1168 * darwin.patch: New file.
1170 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1171 code. Shorten stems by fraction of stems to be shortened.
1173 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1174 of shorten value for boundary cases.
1176 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1177 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1179 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1181 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1183 * scm/grob-description.scm (Beam): Add concaveness. Replace
1184 Beam::cancel_suspect_slope with Beam::check_concave.
1186 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1187 set slope to horizontal if concaveness > Beam.concaveness. This
1188 handles cases that kludgy cancel_suspect_slope was meant to catch
1190 (cancel_suspect_slope): Remove.
1192 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1194 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1195 stemLeftBeamCount and stemRightBeamCount to equal 0.
1198 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1200 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1201 fixed spacing for pref matter, if the next column is musical, and
1204 * lily/note-spacing.cc (stem_dir_correction): Use correct
1205 discretionary for stem-bar spacing.
1207 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1209 * VERSION: 1.5.38 released
1211 * lily/grob.cc (warning): Use cause tracking to give more
1212 meaningful errors from the backend.
1214 * lily/property-iterator.cc (check_grob): Warn if setting grob
1215 property in unknown grob.
1217 * mf/feta-toevallig.mf: brushed stems for natural sign.
1219 * lily/molecule.cc (align_to): don't translate empty molecule.
1220 (this triggers a very subtle bug in time-signature.)
1222 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1224 * lily/spring.cc: remove file.
1226 * input/regression/spacing-stem-bar.ly: new file
1228 * lily/score.cc (run_translator): resurrect point-and-click
1230 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1233 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1234 spacing is now globally determined, using the most common shortest
1235 note. Notes that are shorter are spaced geometrically, and with
1236 expand hints. This makes spacing more even, and measures that have
1237 very short notes won't be that stretched out.
1239 * mf/feta-klef.mf: F-clef fixes, documentation on the
1240 shape. (WARNING: font changed.)
1242 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1244 * lily/simple-spacer.cc (add_columns): support for infinitely
1247 * lily/staff-spacing.cc (get_spacing_params): space after
1248 prefatory matter is fixed.
1250 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1252 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1253 barline following an upstem.
1255 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1256 function from next_notes_correction().
1257 (bar_y_positions): idem.
1259 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1261 * input/regression/break.ly (texidoc): bugfix: escape \ in
1264 * lily/staff-spacing.cc (next_notes_correction): Correct the
1265 spacing of a note following a barline.
1268 2002-03-04 Glen Prideaux
1270 * mf/feta-solfa.mf: Shaped note heads
1272 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1274 * VERSION: 1.5.37 released
1276 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1277 left-align molecule.
1279 * lily/break-align-interface.cc (do_alignment): completely
1280 rewritten. Now it does not use Align_interface anymore, but a
1281 separate routine. Like StaffSpacing, it reads space-alist from the
1282 breakable grobs. This allows you to set spacing using
1284 \property Staff.Clef \override #'space-alist = '(....stuff....)
1286 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1287 to Bar_line. Move files around as well.
1289 * lily/time-signature.cc (time_signature): left align time signatures.
1291 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1292 Corrections of the glyph shape C. Comments added.
1294 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1296 * lily/spacing-spanner.cc: move from third-try.cc; rename
1297 Third_spacing_spanner to Spacing_spanner.
1299 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1300 spacing stuff. Much cleaner now, and we prepare for neat spacing
1301 tricks around bar lines and such.
1303 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1304 variables with themselves. (Ouch.)
1306 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1309 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1313 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1316 * lily/music.cc (ly_get_mus_property): typechecking
1317 (ly_set_mus_property): idem
1318 (ly_make_music): idem
1319 (ly_music_name): idem
1321 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1323 * lily/note-spacing.cc (stem_dir_correction): correction for
1324 same stem notes as well.
1326 * lily/pitch.cc (pitch_transpose): stricter typechecking
1328 * mf/parmesan*mf: magnification fixes.
1330 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1332 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1334 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1335 documenting the font. (Doesn't work for parmesan at the moment)
1337 * Documentation/user/appendices.itely (The Feta font): Add list of
1338 Feta font symbols with names.
1340 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1343 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1345 * lily/translator-group.cc (ly_set_trans_property): typechecking
1346 (ly_get_trans_property): typechecking.
1348 * lily/font-metric.cc (ly_text_dimension): typechecking
1349 (ly_find_glyph_by_name): idem.
1351 * scm/bass-figure.scm (brew-complete-figure): support for
1354 * lily/grob.cc (ly_get_paper_var): new function
1356 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1358 * VERSION (PATCH_LEVEL): 1.5.35 released.
1360 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1361 (bracket): New function.
1363 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1364 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1366 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1369 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1372 * lily/grob.cc (ly_get_grob_property): be anal about types.
1373 (ly_set_grob_property): idem
1375 * lily/figured-bass-engraver.cc (process_music): move molecule
1376 building completely to Scheme
1378 * lily/include/musical-request.hh (class Bass_figure_req): Add
1381 * lily/parser.yy (bass_figure): add support for space figure.
1383 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1385 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1387 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1388 (ly_align_to_x): new function ly-align-to!
1390 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1391 function ly-get-font
1393 * mf/feta-nummer.mf: include normal-space dimension.
1395 * lily/collision.cc (check_meshing_chords): don't merge collisions
1398 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1401 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1403 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1405 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1407 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1410 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1413 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1414 scm/grob-description.scm: added mensural fermata symbol
1416 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1418 * VERSION: 1.5.34 released.
1420 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1422 * lily/staff-symbol-referencer.cc (callback): assume that
1423 staff-position is unset in general.
1425 * input/regression/rest-pitch.ly: new file.
1427 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1430 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1432 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1433 as Scheme option. Run regression test by default with
1434 internal-type-checking.
1436 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1438 * lily/lily-guile.cc (type_check_assignment): changed functions.
1440 * scm/*description*.scm: be anal about typechecks. Some changes
1441 for internal variable names.
1443 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1445 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1447 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1449 * VERSION: 1.5.33 released.
1451 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1452 flare_path everywhere (c-clef, numbers).
1454 * lily/bar-number-engraver.cc (process_music): also print bar
1455 number if measure starts with grace note.
1457 * input/regression/grace-bar-number.ly: new test.
1459 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1461 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1464 * scm/music-functions.scm (voicify-music): split chords into
1465 different voices automatically.
1467 * lily/music.cc (ly_music_list_p): new function
1469 * lily/music-sequence.cc (do_relative_octave): robustification
1471 * scm/music-functions.scm: many utility functions
1473 * lily/music.cc (ly_set_mus_property): add type checks to the
1474 Scheme property assignment.
1476 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1479 * mf/lilypond.map: .map file from Mats' page.
1481 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1483 * Some more parmesan related fixes;
1485 * Custos: varying shape (in particular, stem length), depending on the
1486 vertical position of the custos (on staffline / between stafflines);
1488 * Custos: added grob property "neutral-direction" (same semantics as
1489 with stem); introduced new grob property "neutral-position";
1491 * Time-signature: print a warning when resorting to default layout.
1493 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1495 * lily/translator-group.cc (add_fresh_simple_translator): remove
1496 function; initialize() is called through
1497 Translator_group::initialize().
1499 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1500 for the neighbors of a loose column.
1502 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1503 position loose columns so that they don't collide.
1505 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1507 * VERSION: 1.5.32 released.
1509 * scm/font.scm: remove font-name symbol.
1511 * mf/GNUmakefile: use pktrace for making PFAs
1513 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1515 * lily/rest-collision.cc (do_shift): read direction field from
1516 rest-column in case of note-rest collision. This should fix some
1517 problems with rest collisions.
1519 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1521 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1524 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1525 property. Read pitch directly from #'cause.
1527 * mf/feta-puntje.mf: bugfix
1529 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1531 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1533 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1535 * Documentation/windows/compiling.texi: Update.
1537 * Documentation/index.texi: Add link to orphaned compiling for
1540 * Documentation/footer.html.in: Comment fix.
1542 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1544 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1546 * VERSION: 1.5.31 released
1548 * lily/new-spacing-spanner.cc: remove file.
1550 * lily/third-try.cc (do_measure): only take spacings into account
1551 if they pertain to the column pair under consideration. This fixes
1552 spacing bug when mixing eighths triplets and normal eighths.
1554 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1555 lines don't take up space anymore. Document why in note-head.cc
1558 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1560 * lily/font-interface.cc (get_font): reinstate
1561 #'font-magnification. See input/regression/font-magnification.ly
1562 (get_font): Change the definition of #'font-name grob property.
1564 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1565 that have a #'cause field.
1567 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1569 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1571 * mf/GNUmakefile: remove metapost stuff
1573 * stepmake/aclocal.m4: remove metapost detection stuff.
1575 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1577 * mf/GNUmakefile (FET_FILES):
1578 (FONT_FILES): Include parmesan.
1580 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1583 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1585 * Documentation/user/refman.itely (Paper size): Quote braces.
1587 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1589 * stepmake/aclocal.m4: fixed bison version check to be more
1592 * lily/stem.cc (position_noteheads): fix for cluster chords.
1594 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1596 * python 2.2 support.
1598 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1600 * VERSION: 1.5.30 released
1602 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1604 * Documentation/user/refman.itely (Dynamics): add a note about
1607 * scm/grob-description.scm: add a 'translator-type? object
1608 property, so that \property Foo.Bar =\turnOff doesn't cause
1611 * lily/translator-group.cc (add_fresh_group_translator): make
1612 new add-translator functions to make distinction between fresh and
1613 used group-translators. Fixes problem with scripts on auto-changing voice
1615 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1616 add to Score_performer. Fixes bar checks in MIDI
1618 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1619 heads. Fixes many quirks with ties.
1621 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1622 in the grob property #'cause, instead of using Grob_info.
1624 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1625 staff context, fixing dot alignment on collisions.
1627 * lily/beam-engraver.cc (try_music): remove can't find beam start
1628 warning, so that skipTypesetting won't complain.
1630 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1632 * Documentation/user/refman.itely (Paper size): Documentation fix,
1635 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1637 * scm/grob-description.scm: \breathe: Use feta font comma by default
1639 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1641 * input/template/piano-dynamics.ly (pedal): Simplified
1643 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1645 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1647 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1649 * lilypond-mode.el (LilyPond-command-query): ignore case.
1651 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1653 * VERSION: 1.5.29 released
1655 * all files: change 2001 to 2002 in headers globally
1657 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1658 cheese") font. WARNING: fonts changed.
1660 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1662 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1664 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1666 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1668 * mf/*.mf: Fixed a few typos in various .mf files
1670 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1672 * mf/: added macro soft_penstroke
1674 softened some glyphs
1675 redrawn triangular noteheads
1677 added classical quarter rest
1679 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1681 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1682 lines and staff_space>=2
1684 * lily/rest.cc: Use default rests when current style glyphs not
1686 \property Staff.Rest \override #'style = #'classical
1688 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1690 * input/bugs/first-tie.ly: New file.
1692 * input/bugs/spacing-clash.ly: New file.
1694 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1698 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1700 * lilypond-indent.el: New file providing indentation for
1701 parenthesised blocks of lilypond code in Emacs
1703 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1704 indentation and handle block comments properly. Distinguish
1705 accents from close-brackets in fontification.
1707 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1709 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1711 * Documentation/windows/installing.texi:
1712 * Documentation/windows/compiling.texi: Include from 1.4.10.
1714 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1716 * input/bugs/first-midi-tie.ly: New file.
1718 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1720 * VERSION: 1.5.28 released
1722 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1723 illicit beams on [c4 c4] etc.
1725 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1726 file. Make separate iterator for Bar_checks. Bar_check now happen
1727 outside engravers, meaning that you can use them with
1728 skipTypesetting. Associated changes in other files.
1730 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1733 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1735 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1737 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1739 * lily/stem.cc (set_spacing_hints): removed function
1741 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1742 correction for spacing; now take vertical extents of the stem into
1745 * lily/third-try.cc: More hacking to get spacing working.
1747 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1748 sits at staff level and creates note spacing objects. Scrap it
1749 again, and document why.
1751 * lily/include/group-interface.hh: rename functions.
1753 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1755 * stepmake/stepmake/c++-rules.make:
1756 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1758 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1760 * make/lilypond-vars.make:
1761 * scripts/ly2dvi.py (setup_environment):
1762 * scripts/lilypond-book.py (setup_environment): Also set tex
1765 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1767 * VERSION: 1.5.27 released.
1769 * Documentation/user/refman.itely (Bar numbers): added bar number
1772 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1775 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1777 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1778 spread the last few lines all over the last page of a score.
1780 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1782 * lily/third-try.cc: 3rd try at revising spacing
1783 engine. Not yet finished.
1785 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1788 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1789 collecting past note heads.
1791 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1794 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1795 class. Keep a queue of grobs that are still playing in busyGrobs.
1797 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1798 function. Use busyGrobs to detect playing notes.
1800 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1802 * Documentation/topdocs/INSTALL.texi: Added note about broken
1803 python-2.1. Updated note for Debian's broken (well, broken for
1804 our use anyway) tex configuration.
1806 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1808 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1809 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1811 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1812 (But left margin of png's still misses a few pixels. Arg.)
1814 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1816 * lilypond-mode.el (LilyPond-command-next-midi): Make
1817 possible to kill midi-process (using "C-c C-m").
1819 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1821 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1822 Convert strings with dimensions to numbers.
1824 * lily/volta-engraver.cc: only make a bracket for the top staff,
1825 as found in stavesFound.
1827 * lily/bar-number-engraver.cc: remove staff administration.
1829 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1830 administration. This breaks support for invisible-staff.
1832 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1833 symbols into stavesFound.
1835 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1836 grobs, and put them into columns.
1838 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1839 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1841 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1843 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1844 midi section in the Emacs-mode, so it is possible to play certain
1845 score in a multiscore lilypond-file.
1847 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1848 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1849 (FIXME: not accessible from guile)
1851 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1852 better support for Kurt Stone's suggestions.
1853 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1855 Changed property: localKeySignature.
1856 Added properties: extraNatural, autoAccidentals,
1859 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1861 * ly/property-init.ly: added commands
1862 \defaultAccidentals \modernAccidentals \modernCautionaries
1863 \noResetKey \forgetAccidentals
1865 * ly/engraver-init.ly: Correct initialization of new accidentals.
1867 * scm/translator-property-description.scm: The new properties
1870 * input/: Some examples added, some changed.
1872 * Documentation/regression-test.tely: Added quick test of new
1875 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1877 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1880 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1882 * lily/beam.cc (before_line_breaking): Make beams without stems
1883 or with only one stem disappear.
1885 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1887 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1888 files to have standardised HTML bibliography output. Update build
1889 docs to reflect this.
1891 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1892 active_count_, so that we don't have to look for active springs
1895 * scm/interface-description.scm,scm/grob-property-description.scm:
1898 * lily/simple-spacer.cc (solve): Handle forced line breaks
1899 here. Fixes problems when combining linebreaks with non-fitting
1902 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1904 * 1.4.9.jcn3 forward ports.
1906 * Really included .cvsignore.
1908 * Included Han-Wen's uu1 windows fixes.
1910 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1912 * Added Cygwin setup.hint
1914 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1915 tetex/texmf, python installations.
1917 * Updated cygwin installer.
1919 * ly2dvi: Don't accept filenames with spaces (+ fix).
1921 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1923 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1925 * lily/translator-def.cc: Remove manual symbol caching.
1927 * lily/script-column.cc (before_line_breaking): robustness check:
1928 don't crash if no direction set.
1930 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1932 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1936 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1938 * lily/note-head.cc (head_extent): added to compute width without
1939 ledger lines. By default, ledger lines take up width now.
1941 * input/regression/fingering.ly: demonstrate auto fingering.
1942 Horizontal placement is still buggy.
1944 * lily/fingering-engraver.cc (class Fingering_engraver):
1945 added. Provides support for horizontal fingering scripts
1947 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1949 * lily/side-position-interface.cc (add_staff_support): add staff
1950 only for Y-axis side positions.
1952 * lily/parser.yy (request_chord): Fix mem leak.
1954 * lily/musical-request.cc (transpose): moved to Music::transpose()
1956 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1957 can store grobs as grob-creation cause as well.
1959 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1960 handle when adding. Use precomputed symbols throughout lily.
1962 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1963 track of spacing issues.
1965 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1966 to keep track of staff spacing
1968 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1970 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1971 code clean from conditionals and have a concentrated sets of
1972 compatibility fixes for old guile versions.
1974 * Fixes for guile 1.4, including embedded ps.
1976 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1978 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1979 well for markup texts.
1981 * lily/musical-request.cc (length_mom): kludge for null pointer.
1983 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1985 * scm/lily.scm (sign): bugfix
1987 * CHANGES: Change log instated.
1989 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.