1 2002-05-18 Han-Wen <hanwen@cs.uu.nl>
3 * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
5 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
7 * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
8 and * (as in "([^>]*)?")
10 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
12 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
13 Add info about CVS. Stable/development are currently 1.4/1.5,
16 * autogen.sh: Generate.
19 * configure: Regenerate.
21 * stepmake/stepmake/automatically-generated.sub.make: Keep
24 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
26 * stepmake/stepmake/generic-targets.make (configure): Generate
29 * GNUmakefile.in (SCRIPTS):
30 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
32 * stepmake/autogen.sh: New file.
34 * configure: Check for g++ >= 2.95.
36 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
37 c/c++ version checking.
39 * flower/include/string.hh: Typo fix.
41 * lily/include/midi-item.hh: Remove stray i.
43 * Documentation/windows/GNUmakefile: Avoid collapsed directory
46 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
47 constructs '//' from arguments.
49 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
51 * scm/lily.scm (ly-load): show SCM filenames if verbose.
53 * lily/lily-guile.cc (init_functions): add ly-verbose function.
55 * lily/main.cc (setup_paths): remove LILYINCLUDE support.
57 * flower/include/{pointer,tuple}*: removed.
59 * VERSION: released 1.5.56
61 * scm/music-functions.scm (check-start-chords): function to check
62 for chords without \context. Apply automatically from parser.
64 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
66 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
69 * scm/output-lib.scm: fix ez notation stems.
71 * lily/paper-outputter.cc: various fixes to speed up compilation.
73 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
75 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
77 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
79 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
80 determine latex input.
82 * stepmake/bin/install-sh: Include latest from libtool.
85 * configure: Regenerate.
87 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
88 (USER_CFLAGS): Bugfix, include CPPFLAGS.
90 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
92 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
93 REQUIRED programs and version. Try to continue configuring, list
94 missing programs at the end, but don't generate a GNUmakefile if
95 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
96 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
97 fancy for some older systems.
99 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
101 * lily/score-engraver.cc (typeset_all): sanity check for items
102 that are Y parent to spanner.
104 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
107 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
109 * lily/*.cc: remove as many iostream use as possible.
111 * flower/ : remove text-db, text-stream, data-file.
113 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
115 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
116 (completize_preamble): don't barf if no preamble present.
117 (do_file): allow extensions on --output
119 * scripts/ly2dvi.py (make_preview): make automatic preview of
120 first system. Small cleanups.
122 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
124 * scripts/lilypond-book.py (make_pixmap): output png directly.
126 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
129 * lily/parser.yy (My_lily_parser): comment out code. (Causes
130 problems with recent bison releases).
132 * make/lilypond.redhat.spec.in: add pfa fonts to X.
134 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
136 * lilypond-font-lock.el: Fixes the order of the note name list.
138 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
140 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
141 capability, --verbose option, rlimit hack.
143 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
145 * lily/piano-pedal-engraver.cc: cleanups.
147 * lily/accidental.cc (after_line_breaking): add break tie
150 * lily/text-engraver.cc (try_music): don't typeset fingerings
152 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
154 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
156 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
158 * lily/*.cc: change gh_str02scm() to ly_str02scm().
160 * lily/spacing-spanner.cc (note_spacing): Bound
161 shortest-playing-length by the distance to next note. This should
162 fix chord tremolo spacing.
164 * VERSION: 1.5.55 released
166 * lily/stem.cc (off_callback): invisible stem over whole note is
167 centered on note now.
169 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
170 stem-tremolo is stem now.
172 * input/mozart-hrn*.ly: many corrections.
174 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
175 support for dynamic scripts.
177 * lily/accidental-placement.cc (position_accidentals): check for
178 collisions as well: should avoid those heads too.
180 * lily/beam.cc (check_concave): allow undefined gap and
181 threshold. Change the meaning of threshold/gap == 0.0.
182 (check_concave): skip Stolba concaveness check if we have a knee
185 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
187 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
188 tremolos of dotted duration.
190 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
192 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
193 downstroke again. Sigh.
195 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
198 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
200 * lily/slur.cc (add_column): allow slur over rest.
202 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
204 * lily/beam.cc: move scoring constants out of code
206 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
208 * mf/feta-nummer.mf: scalability fixes.
210 * mf/feta-nummer-code.mf: fixes for 5, 8.
212 * mf/feta-klef.mf: G clef fixes.
214 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
216 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
218 * scripts/lilypond-book.py: %Newline, rather than glue macros
219 after \end{verbatim}.
221 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
223 * Documentation/user/lilypond-book.itely:
224 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
227 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
229 * scm/grob-property-description.scm (beam-space): Junk.
231 * lily/beam.cc (space_function): New method.
232 (get_interbeam): Call space-function.
234 * scm/grob-description.scm (Beam): Initialize space-function with
235 Beam::space_function.
237 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
238 Beam.space-function. Don't quantise grace beams.
240 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
242 * VERSION: 1.5.54 released
244 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
247 * Documentation/index.texi: add PDF links.
249 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
251 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
252 compare #'glyph as strings.
254 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
256 * scripts/ly2dvi.py (setup_environment): fix by Mats.
258 * lily/stem.cc (head_count): Change function name. Change property
259 to #'note-heads i.s.o. #'heads.
260 (position_noteheads): Kern noteheads for invisible stems.
261 (before_line_breaking): Do position_noteheads() for whole note
264 * lily/accidental-placement.cc (position_accidentals): First
265 determine refpoints, only then determine extents.
267 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
269 * lily/accidental-placement.cc (position_accidentals): use all
270 note heads for note head-skyline.
272 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
274 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
276 * Documentation/windows/setup.hint (requires): Add gsview dependency.
278 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
280 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
282 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
284 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
286 * mf/feta-schrift.mf: lighter staccato.
288 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
290 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
292 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
294 * VERSION: 1.5.53 released
296 * scm/lily.scm (ly-load): use primitive-load for loading.
298 * lily/misc.cc: remove quantise_iv()
300 * lily/*.cc: pass read-only arrays by reference.
302 * lily/grob.cc (common_refpoint_of_array): new function. Try to
303 use common_refpoint_of_{array, list} when possible.
305 * lily/include/accidental-placement.hh: new file.
307 * lily/accidental-placement.cc (alignment_callback): position
308 accidentals in a better way.
310 * lily/skyline.cc: new file. Compute distances for collections of
313 * lily/include/skyline.hh: new file
315 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
317 * lily/accidental.cc (class Accidental_interface): grob for a
320 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
323 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
324 together with new accidental-interface.
326 * lily/include/*.hh: remove spurious set_interface() decls.
328 * lily/key-signature-interface.cc (brew_molecule): add padding for
329 natural signs. Make natural typesetting like the sharp.
332 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
333 is now slightly curved, not straight.
336 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
338 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
340 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
341 more strictly. Use more clever regular expressions. Commented regexps.
343 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
345 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
347 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
349 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
350 to control width of staff symbol in ragged-right mode (by request
353 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
354 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
355 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
356 added support for ligature brackets (needed when transcribing
359 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
361 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
362 Fontify notes more strictly.
364 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
366 * mf/feta-din-code.mf: dynamic z sign.
368 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
370 * lilypond-mode.el: Prevent recoloring strings and comments.
372 * lilypond-font-lock.el: Handle block comments: block comments
373 can have also ordinary comments inside.
375 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
377 * lily/stem.cc (get_default_dir): set direction to CENTER if
378 invisible. Various other fixes to deal with invisible stems and
379 stem-direction == CENTER.
381 * lily/rest-collision.cc (do_shift): take direction from note if
384 * input/regression/tie-grace.ly: new file.
386 * lily/tie-engraver.cc (create_grobs): fix tied graces.
388 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
389 knee correction. Fixes tight spacing for knees.
391 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
393 * VERSION: 1.5.52 released
395 * lily/*.cc: add some undocced properties.
396 scm/grob-description.scm: idem.
398 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
400 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
401 multi-measure rests like "R1 *4" and scheme (typically has '#'
402 in the beginning). Small fixes. Add few reserved words.
404 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
406 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
409 * Documentation/windows/installing.texi: Suggest gswin32c (console
410 program) for getting the version. Layout fixes.
412 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
414 * Documentation/user/tutorial.itely (Running LilyPond): Separate
415 windows viewing commands, remove silly comment about Yap.
417 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
419 * Documentation/topdocs/INSTALL.texi: Describe how to learn
420 configure to find kpathsea on for example Slackware 8.0.
422 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
424 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
425 by default: avoid "1" over single bar rests.
427 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
428 and correct the handling of geometry options.
430 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
432 * lily/include/grob-interface.hh (ADD_INTERFACE): make
433 implementation for Class::has_interface automatically. Junk all
434 other implementations.
436 * lily/grob.cc (internal_get_grob_property): also typecheck
437 property reads. Catches even more undocced properties. Bugfixing
438 left for the uninspired masses.
440 * lily/beam.cc: remove end_after_line_breaking().
442 * lily/grob.cc (calculate_dependencies): remove list support for
445 * lily/font-size-engraver.cc: only do font-interface.
447 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
449 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
452 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
454 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
455 brackets using arpeggio requests.
457 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
458 molecule-callback to use for drawing the brackets.
460 * Documentation/user/refman.itely:
461 * input/test/chord-bracket.ly: Chord brackets documented
463 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
465 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
467 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
469 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
471 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
472 direction tuplets on beams.
474 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
476 * lilypond-indent.el: Bugfix of indentation of final point in buffer
478 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
480 * lilypond-mode.el: new command: LilyPond-un-comment-region.
481 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
482 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
483 submenu to "LilyPond"-menu.
485 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
486 an interface to play midi.
488 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
490 * input/regression/script-stack-order.ly: new file.
492 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
494 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
496 * mf/feta-din-code.mf: kerning for dynamics.
498 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
500 * input/regression/dynamics-glyphs.ly: new file
502 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
504 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
505 forte f for the 2 number. Some fixes for the other bulbed glyphs.
507 * Documentation/windows/gs-profile.sh:
508 * Documentation/windows/gsview-profile.sh: Remove. Functionality
509 moved to gs/gsview windows packages.
511 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
513 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
514 finding out the duration. Fixes chord tremolo bug.
516 * lily/completion-note-heads-engraver.cc (process_music): Set
517 correct duration for all requests of the broken notes.
519 * input/regression/completion-heads.ly: Added example of
520 Completion_heads_engraver.
522 * lilypond-mode.el: Added "2Midi" command
524 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
526 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
527 edge-width, edge-height and shorten-pair properties for tuplet
530 * lilypond-indent.el: Support for blinking of matching parentheses
532 * lilypond-font-lock.el: Fix fontification of closing > on its own line
534 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
535 cleanups of piano pedal brackets.
537 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
539 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
541 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
543 * mf/feta-new-code.mf: new dynamic f sign.
546 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
548 * mf/feta-new-code.mf: new dynamic p sign.
550 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
552 * lily/note-spacing.cc (stem_dir_correction): only do
553 beam-correction if a beam is there.
555 * lily/stem.cc (duration_log): change from flag_i (); better
557 (get_default_stem_end_position): fix dot/flag collision code.
559 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
561 * VERSION: release 1.5.50
563 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
564 unit spring here. Reduces number of warning messages.
566 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
568 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
570 * scm/generic-property.scm: remove generic-property, property-engraver
572 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
574 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
576 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
578 * scm/*.scm: remove volta, hairpin and tuplet functions.
580 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
581 note column for notes/stems/dots that already have parents. Fixes
582 nested grace contexts.
584 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
586 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
587 get too curved slurs.
589 * scm/slur.scm (default-slur-extremity-offset-alist)
590 (default-phrasing-slur-extremity-offset-alist): Move slur
591 attachments further away from note-head, vertically. Also, leave
592 a horizontal gap between slur and stem end.
594 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
596 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
598 * input/regression/spacing-grace-duration.ly: new file
600 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
601 for shortest durations.
603 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
604 extent of the mm rest.
606 * lily/spacing-spanner.cc (get_duration_space): better spacing for
609 * lily/tuplet-bracket.cc (make_bracket): new function
610 (get_x_offset): new function; make tuplet brackets align on stems
611 if stem has same direction.
612 (parallel_beam): be anal about matching bracket to tuplet.
614 * lily/lookup.cc (line): new function Lookup::line().
616 * scm/tex.scm (dashed-line): change -line to -system in names.
618 * lily/box.cc (add_point): new function.
620 * flower/include/interval.hh: new function add_point ().
623 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
625 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
627 * scm/grob-property-description.scm (number-threshold): Add
630 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
631 rest if #measures > number-threshold. Use padding (well, fake
634 * scm/font.scm (make-style-sheet): New styles: mark-number,
636 (paper20-style-sheet-alist): Add bigger bold fonts.
638 * lily/mark-engraver.cc (process_music): Use style mark-number or
641 * .cvsignore: Ignore all kinds of lilypond input and output.
643 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
645 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
647 * lily/staff-symbol.cc (brew_molecule): make line thickness
650 * lily/*.cc: replace stafflinethickness by linethickness.
652 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
654 * input/regression/beam-concave.ly: Add to-be-considered-concave
657 * lily/beam.cc (check_concave): Add check for large gap between an
658 inner notehead and the line through outer noteheads.
660 * scm/grob-description.scm (Beam): Add concaveness-gap, default
661 value 2.0 staff-space.
663 * scm/grob-property-description.scm (concaveness-gap): Add
666 * input/mozart-hrn3-allegro.ly: Fix typo.
668 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
670 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
671 lily/note-head-engraver: improved implementation of roundfilledbox
672 (according to Han-Wen's request)
674 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
675 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
676 lily/simple-spacer.cc: ragged-right alignment
678 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
680 * input/regression/spacing-note-flags.ly: new file
682 * input/regression/spacing-rest.ly: new file
684 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
686 * lily/spacing-spanner.cc (note_spacing): make note spacing after
687 all grace notes tight (not only the column directly following a
690 * scm/grob-description.scm (all-grob-descriptions): don't make
691 mm-rests larger than normal.
693 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
694 curved. Remove white space at the right of flags.
696 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
698 * ports/ports.make: Bugfix: ignore CVS directories.
700 * stepmake/.cvsignore: New file.
702 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
704 * lily/note-spacing.cc (stem_dir_correction): don't correct when
705 there is a flag on the stem.
707 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
709 * scm/grob-property-description.scm (measure-length):
710 measure-length grob property.
712 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
713 better spacing for breakable columns when they're juxtaposed: use
714 measure length if applicable
716 * lily/timing-engraver.cc (start_translation_timestep): store
717 measure length in breakable column at start of measure.
719 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
721 * ROADMAP: Add description for ports dir, to check email upon
724 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
726 * VERSION: 1.5.48 released
728 * lily/multi-measure-rest.cc (symbol_molecule): split off from
730 (set_spacing_rods): Use symbol_molecule() to determine minimum
732 (church_rest): split off from brew_molecule()
733 (big_rest): split off from brew_molecule(). Construct using
736 * mf/feta-eindelijk.mf: junk multi measure rest.
738 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
740 * lily/multi-measure-rest.cc (add_column): remove columns property.
742 * lily/dynamic-engraver.cc (process_music): add more verbose warning
744 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
747 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
749 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
750 keywords covered, dropped some non-keywords, include R- and 128-notes
752 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
754 * Code clean-up: Junk multiple implementations of ledger line
755 creation in note_head, custos, and porrectus. This is important
756 since there soon will be some more applications of ledger lines to
757 come (e.g. ambitus engraver).
759 * Make thickness of ledger lines adjustable. This is essential
760 for mensural notation.
762 * Fix some bugs in the current ledger_line implementation, most
763 notably that of the horizontal extent of ledger lines which equals
764 at least the extent of the metafont ledger_line character, and
765 which grows(!) if the desired extent shrinks below this limit.
767 * roundfilledbox: variable blotdiameter
769 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
771 * VERSION: 1.5.47 released
773 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
775 * lily/porrectus.cc: change line-thickness to thickness, change
776 stem-direction to direction.
778 * scm/backend-documentation-lib.scm (check-dangling-properties):
779 Automatically detect doc'ed properties that are not in an interface
781 * scm/grob-property-description.scm: property cleanup. Remove many
782 paper-column props that are non-existent.
784 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
785 the grob has a molecule-callback.
787 * lily/*.cc: remove many set_interface() calls, and their
790 * input/regression/spacing-knee.ly: new file
792 * input/regression/spacing-clef-first-note.ly: new file
794 * lily/staff-spacing.cc (get_spacing_params): different spacing
795 for pref matter to note at start of line, halfway during line.
797 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
798 correction only if stems have same direction (i.e. not for
799 stem-clef combination).
800 (stem_dir_correction): maximal correction for knees.
802 * lily/*.cc: many updates to interface descriptions.
804 * lily/grob.cc (internal_set_grob_property): add interface check
805 for every set_grob_property call
807 * lily/*.cc: document interface stuff in C++
809 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
811 * lily/volta-bracket.cc: naming: change volta spanner to
814 * input/bugs/*.ly: cleanup, remove lots of files.
816 * buildscripts/mf-to-table.py (write_ps_encoding): generate
817 .encoding file. WARNING: upgrade to pktrace 1.0.3
819 * mf/feta-toevallig.mf: change PS name for parentheses.
821 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
823 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
826 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
828 * lily/scope.cc: remove file .
830 * lily/include/scope.hh: remove file. Remove Scope class
834 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
835 score_forbidden_quants): ): take out of SCM, pass parameters so
836 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
838 (calc_stem_y): robustness: take care of last_visible_stem == 0.
841 * lily/lily-guile.cc (ly_unit): return internal unit.
843 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
845 * lily/paper-outputter.cc (output_version): output internal unit
848 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
850 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
852 * scripts/ly2dvi.py: clean up old .*pk font caching code.
854 * scm/ps.scm: Use uppercase postscript font names for the standard
857 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
858 Add all available TeX Type1 fonts, including Feta, to the
859 Ghostscript font path.
861 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
862 version (affects the FontName) in lilypond.map.
864 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
865 documentation file to fetaNNlist.ly to avoid name collisions between
866 lilypond generated .tex file and font .tex macros file.
869 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
871 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
872 made mensural longa and (semi-)brevis leaner
874 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
876 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
877 clean-up: moved bezier shape and slope from porrectus to lookup
879 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
880 and /usr/share/texmf/fonts
882 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
884 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
886 * lily/text-spanner.cc (brew_molecule): add #'thickness
887 (brew_molecule): add corrections for thickness in molecule padding.
889 * lily/line-spanner.cc (line_atom): make function private
891 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
892 discover bounding box. This solves the cropping problem.
894 * lily/bar-check-iterator.cc (process): Only resynchronize bar
895 check when it fails. This fixes the combination of grace notes
898 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
900 * lily/repeated-music.cc (minimum_start): new Scheme callable function
901 (first_start): new Scheme callable. This will fix repeated music
902 starting with grace notes.
904 * lily/music.cc (start_mom): check start-moment-function grob property.
906 * VERSION: 1.5.45 released
908 * input/regression/system-extents.ly: new regression test. Test
911 * lily/system.cc: rename LineOfScore into System
913 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
915 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
916 (ly_get_extent): new Scheme function ly-get-extent
918 * ps/lilyponddefs.ps: use output-scale for line-x
921 * scm/ps.scm (font-load-command):
924 2002-03-20 Rune Zedeler <rune@zedeler.dk>
926 * lily/beaming-info.cc: Stupid typo fixed
928 * lily/accidental-engraver.cc: rewrote accidental-routines to get
929 support for cross-context auto-accidentals.
930 Now the engraver can stay in Staff-context and see other contexts
932 Changed properties: autoAccidentals, autoCautionaries
934 * lily/translator-group.cc (set_children_property):
935 Function added recursively setting the same property (deep_copied)
936 for all children of a Translator_group.
938 * ly/property-init.ly: added commands
939 \pianoAccidentals \voiceAccidentals
940 \modernVoiceAccidentals \modernVoiceCautionaries
942 * ly/engraver-init.ly: Correct initialization of new accidentals.
944 * scm/translator-property-description.scm: Updated
946 * input/regression/accidental-voice.ly: Added
948 * Documentation/regression-test.tely: Added new test
950 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
952 * VERSION: 1.5.44 released
954 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
956 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
958 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
961 * tex/feta*.tex: remove.
963 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
964 all software dealing with it.
966 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
968 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
969 (this fixes pdf output). Drop awk dependency.
971 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
972 dimensions (linewidth) are in mm.
974 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
976 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
978 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
980 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
982 * VERSION: 1.5.43 released
984 * scm/beam.scm (beam-dir-majority-median): if majority is
985 undecided, use median. Removes a forced dir in sarabande.
987 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
989 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
991 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
992 widths, heights and shortens are now customisable properties.
994 * scm/grob-description.scm, scm/grob-property-description.scm: New
995 properties added to PianoPedalBracket, unnecessary
996 Y-offset-callbacks removed from *Pedal, undocumented properties
999 * Documentation/user/refman.itely: Piano pedal updates.
1001 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
1003 * scm/grob-property-description.scm:
1004 * scm/interface-description.scm: Remove old stuff.
1006 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1007 0.48 (previously 0.42).
1008 (Beam): Remove old stuff.
1011 * lily/stem-tremolo.cc:
1013 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
1014 (previously space-function).
1016 * stepmake/bin/add-html-footer.py: Website title fix.
1018 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1020 * scripts/ly2dvi.py (environment): use new font searching setup.
1022 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1024 * lily/tfm.cc (dimensions): make code dimension independent
1026 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1029 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1031 * lily/include/dimensions.hh: try MM as internal unit.
1033 * scm/*.scm: remove invoke-dim1
1035 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1037 * GNUmakefile.in (fontpaths): add fontpaths target,
1039 * make/mutopia-targets.make: add PDF rules.
1041 * make/mutopia-rules.make: add pdf rule.
1043 * buildscripts/mutopia-index.py (list_item): add PDF.
1045 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1047 * make/lilypond-vars.make: set TEXMF for the new font setup.
1049 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1051 * VERSION: 1.5.42 released
1053 * mf/feta-schrift.mf: endless twiddling of Tr.
1055 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1056 endless twiddling with the bulb shape.
1058 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1059 little smaller if there is an accidental.
1061 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1063 * buildscripts/lilypond-profile.sh:
1065 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1066 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1067 Implement new font installation strategy
1069 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1070 the new font installation strategy.
1072 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1075 * input/test/staff-size.ly: Simplified using StaffContainer
1077 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1080 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1082 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1084 * lily/beam.cc (score_stem_lengths): new quanting stuff
1085 (score_forbidden_quants): Second and third beam quant stuff.
1087 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1089 * lily/beam.cc (least_squares): Remember least-squares-dy for
1091 (quantise_interval): Don't quant to dy steeper that
1092 least-squares-dy. Return empty interval if no sane quants found.
1093 (quantise_position): Try quantise_interval until we have
1094 acceptable solution.
1096 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1098 * scm/interface-description.scm (beam-interface): Update.
1100 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1102 * VERSION: 1.5.41 released
1104 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1105 optima serifs on top of t, bottom of r.
1107 * mf/feta-bolletjes.mf: make ledger line rounder.
1109 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1111 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1114 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1116 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1117 well as text pedal indications and a combination of both. All
1118 pedal indications are horizontally aligned on a line spanner.
1120 * lily/text-spanner.cc: Edge-width property added to use in
1121 bracketed piano pedals. Function setup_sustain_pedal added to set
1122 the dimensions of the brackets.
1124 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1125 some of the *Pedal properties tweaked.
1127 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1128 edge-width (TextSpanner) properties.
1130 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1132 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1133 fontified identifiers list.
1135 * input/test/pedal.ly: New pedal features added.
1137 * Documentation/user/refman.itely: New pedal features documented.
1140 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1142 * lily/include/new-beam.hh: Previously new-beam.hh
1143 * lily/beam.cc: Previously new-beam.cc
1144 (least_squares): Bugfix: don't barf on beams with less than two
1145 visible stems (tremolos).
1148 * scm/grob-description.scm (Beam): Junk old beam stuff.
1151 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1155 * mf/feta-eindelijk.mf: new 8th rest.
1157 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1158 stick out of staffline
1160 * scripts/lilypond-book.py: fixes for texi regular expressions.
1162 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1164 * lily/include/new-beam.hh:
1165 * lily/new-beam.cc: New file.
1167 * flower/include/interval.hh:
1168 * flower/include/interval.tcc (delta): New method.
1169 (swap): Now public (previously private).
1171 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1172 1 staff-line-thickness. Sadly, this makes dy quanting problems
1173 (dy quants allowed should depend on actual left y) more visible.
1175 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1177 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1179 * scm/grob-property-description.scm (concaveness-threshold): Add
1180 typecheck and description.
1182 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1183 concaveness-threshold (previously concaveness).
1185 * lily/beam.cc (check_concave): Remove choices and debugging
1186 stuff: use best concaveness calculation.
1187 (quantise_dy): Remove choice. Try to never make a slope steeper
1188 by quantising, but certainly never quantise a slope away.
1189 (check_stem_length_f): Remove choice. In case of lengthening
1190 alowed, always lengthen to ideal length.
1192 * Documentation/index.texi: Fix FAQ url.
1194 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1195 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1197 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1199 * VERSION: 1.5.39 released
1201 * lily/simple-spacer.cc (add_rod): rods take precedence over
1202 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1204 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1206 * lily/note-spacing.cc (get_spacing): only insert space for
1207 accidentals if necessary.
1209 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1211 * lily/spacing-spanner.cc (musical_column_spacing): new
1212 function. Have correct spacing from note to end-of-line as well.
1214 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1216 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1218 * darwin.patch: New file.
1220 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1221 code. Shorten stems by fraction of stems to be shortened.
1223 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1224 of shorten value for boundary cases.
1226 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1227 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1229 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1231 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1233 * scm/grob-description.scm (Beam): Add concaveness. Replace
1234 Beam::cancel_suspect_slope with Beam::check_concave.
1236 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1237 set slope to horizontal if concaveness > Beam.concaveness. This
1238 handles cases that kludgy cancel_suspect_slope was meant to catch
1240 (cancel_suspect_slope): Remove.
1242 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1244 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1245 stemLeftBeamCount and stemRightBeamCount to equal 0.
1248 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1250 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1251 fixed spacing for pref matter, if the next column is musical, and
1254 * lily/note-spacing.cc (stem_dir_correction): Use correct
1255 discretionary for stem-bar spacing.
1257 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1259 * VERSION: 1.5.38 released
1261 * lily/grob.cc (warning): Use cause tracking to give more
1262 meaningful errors from the backend.
1264 * lily/property-iterator.cc (check_grob): Warn if setting grob
1265 property in unknown grob.
1267 * mf/feta-toevallig.mf: brushed stems for natural sign.
1269 * lily/molecule.cc (align_to): don't translate empty molecule.
1270 (this triggers a very subtle bug in time-signature.)
1272 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1274 * lily/spring.cc: remove file.
1276 * input/regression/spacing-stem-bar.ly: new file
1278 * lily/score.cc (run_translator): resurrect point-and-click
1280 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1283 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1284 spacing is now globally determined, using the most common shortest
1285 note. Notes that are shorter are spaced geometrically, and with
1286 expand hints. This makes spacing more even, and measures that have
1287 very short notes won't be that stretched out.
1289 * mf/feta-klef.mf: F-clef fixes, documentation on the
1290 shape. (WARNING: font changed.)
1292 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1294 * lily/simple-spacer.cc (add_columns): support for infinitely
1297 * lily/staff-spacing.cc (get_spacing_params): space after
1298 prefatory matter is fixed.
1300 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1302 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1303 barline following an upstem.
1305 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1306 function from next_notes_correction().
1307 (bar_y_positions): idem.
1309 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1311 * input/regression/break.ly (texidoc): bugfix: escape \ in
1314 * lily/staff-spacing.cc (next_notes_correction): Correct the
1315 spacing of a note following a barline.
1318 2002-03-04 Glen Prideaux
1320 * mf/feta-solfa.mf: Shaped note heads
1322 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1324 * VERSION: 1.5.37 released
1326 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1327 left-align molecule.
1329 * lily/break-align-interface.cc (do_alignment): completely
1330 rewritten. Now it does not use Align_interface anymore, but a
1331 separate routine. Like StaffSpacing, it reads space-alist from the
1332 breakable grobs. This allows you to set spacing using
1334 \property Staff.Clef \override #'space-alist = '(....stuff....)
1336 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1337 to Bar_line. Move files around as well.
1339 * lily/time-signature.cc (time_signature): left align time signatures.
1341 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1342 Corrections of the glyph shape C. Comments added.
1344 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1346 * lily/spacing-spanner.cc: move from third-try.cc; rename
1347 Third_spacing_spanner to Spacing_spanner.
1349 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1350 spacing stuff. Much cleaner now, and we prepare for neat spacing
1351 tricks around bar lines and such.
1353 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1354 variables with themselves. (Ouch.)
1356 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1359 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1363 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1366 * lily/music.cc (ly_get_mus_property): typechecking
1367 (ly_set_mus_property): idem
1368 (ly_make_music): idem
1369 (ly_music_name): idem
1371 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1373 * lily/note-spacing.cc (stem_dir_correction): correction for
1374 same stem notes as well.
1376 * lily/pitch.cc (pitch_transpose): stricter typechecking
1378 * mf/parmesan*mf: magnification fixes.
1380 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1382 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1384 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1385 documenting the font. (Doesn't work for parmesan at the moment)
1387 * Documentation/user/appendices.itely (The Feta font): Add list of
1388 Feta font symbols with names.
1390 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1393 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1395 * lily/translator-group.cc (ly_set_trans_property): typechecking
1396 (ly_get_trans_property): typechecking.
1398 * lily/font-metric.cc (ly_text_dimension): typechecking
1399 (ly_find_glyph_by_name): idem.
1401 * scm/bass-figure.scm (brew-complete-figure): support for
1404 * lily/grob.cc (ly_get_paper_var): new function
1406 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1408 * VERSION (PATCH_LEVEL): 1.5.35 released.
1410 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1411 (bracket): New function.
1413 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1414 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1416 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1419 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1422 * lily/grob.cc (ly_get_grob_property): be anal about types.
1423 (ly_set_grob_property): idem
1425 * lily/figured-bass-engraver.cc (process_music): move molecule
1426 building completely to Scheme
1428 * lily/include/musical-request.hh (class Bass_figure_req): Add
1431 * lily/parser.yy (bass_figure): add support for space figure.
1433 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1435 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1437 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1438 (ly_align_to_x): new function ly-align-to!
1440 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1441 function ly-get-font
1443 * mf/feta-nummer.mf: include normal-space dimension.
1445 * lily/collision.cc (check_meshing_chords): don't merge collisions
1448 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1451 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1453 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1455 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1457 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1460 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1463 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1464 scm/grob-description.scm: added mensural fermata symbol
1466 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1468 * VERSION: 1.5.34 released.
1470 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1472 * lily/staff-symbol-referencer.cc (callback): assume that
1473 staff-position is unset in general.
1475 * input/regression/rest-pitch.ly: new file.
1477 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1480 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1482 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1483 as Scheme option. Run regression test by default with
1484 internal-type-checking.
1486 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1488 * lily/lily-guile.cc (type_check_assignment): changed functions.
1490 * scm/*description*.scm: be anal about typechecks. Some changes
1491 for internal variable names.
1493 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1495 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1497 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1499 * VERSION: 1.5.33 released.
1501 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1502 flare_path everywhere (c-clef, numbers).
1504 * lily/bar-number-engraver.cc (process_music): also print bar
1505 number if measure starts with grace note.
1507 * input/regression/grace-bar-number.ly: new test.
1509 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1511 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1514 * scm/music-functions.scm (voicify-music): split chords into
1515 different voices automatically.
1517 * lily/music.cc (ly_music_list_p): new function
1519 * lily/music-sequence.cc (do_relative_octave): robustification
1521 * scm/music-functions.scm: many utility functions
1523 * lily/music.cc (ly_set_mus_property): add type checks to the
1524 Scheme property assignment.
1526 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1529 * mf/lilypond.map: .map file from Mats' page.
1531 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1533 * Some more parmesan related fixes;
1535 * Custos: varying shape (in particular, stem length), depending on the
1536 vertical position of the custos (on staffline / between stafflines);
1538 * Custos: added grob property "neutral-direction" (same semantics as
1539 with stem); introduced new grob property "neutral-position";
1541 * Time-signature: print a warning when resorting to default layout.
1543 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1545 * lily/translator-group.cc (add_fresh_simple_translator): remove
1546 function; initialize() is called through
1547 Translator_group::initialize().
1549 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1550 for the neighbors of a loose column.
1552 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1553 position loose columns so that they don't collide.
1555 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1557 * VERSION: 1.5.32 released.
1559 * scm/font.scm: remove font-name symbol.
1561 * mf/GNUmakefile: use pktrace for making PFAs
1563 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1565 * lily/rest-collision.cc (do_shift): read direction field from
1566 rest-column in case of note-rest collision. This should fix some
1567 problems with rest collisions.
1569 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1571 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1574 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1575 property. Read pitch directly from #'cause.
1577 * mf/feta-puntje.mf: bugfix
1579 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1581 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1583 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1585 * Documentation/windows/compiling.texi: Update.
1587 * Documentation/index.texi: Add link to orphaned compiling for
1590 * Documentation/footer.html.in: Comment fix.
1592 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1594 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1596 * VERSION: 1.5.31 released
1598 * lily/new-spacing-spanner.cc: remove file.
1600 * lily/third-try.cc (do_measure): only take spacings into account
1601 if they pertain to the column pair under consideration. This fixes
1602 spacing bug when mixing eighths triplets and normal eighths.
1604 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1605 lines don't take up space anymore. Document why in note-head.cc
1608 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1610 * lily/font-interface.cc (get_font): reinstate
1611 #'font-magnification. See input/regression/font-magnification.ly
1612 (get_font): Change the definition of #'font-name grob property.
1614 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1615 that have a #'cause field.
1617 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1619 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1621 * mf/GNUmakefile: remove metapost stuff
1623 * stepmake/aclocal.m4: remove metapost detection stuff.
1625 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1627 * mf/GNUmakefile (FET_FILES):
1628 (FONT_FILES): Include parmesan.
1630 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1633 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1635 * Documentation/user/refman.itely (Paper size): Quote braces.
1637 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1639 * stepmake/aclocal.m4: fixed bison version check to be more
1642 * lily/stem.cc (position_noteheads): fix for cluster chords.
1644 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1646 * python 2.2 support.
1648 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1650 * VERSION: 1.5.30 released
1652 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1654 * Documentation/user/refman.itely (Dynamics): add a note about
1657 * scm/grob-description.scm: add a 'translator-type? object
1658 property, so that \property Foo.Bar =\turnOff doesn't cause
1661 * lily/translator-group.cc (add_fresh_group_translator): make
1662 new add-translator functions to make distinction between fresh and
1663 used group-translators. Fixes problem with scripts on auto-changing voice
1665 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1666 add to Score_performer. Fixes bar checks in MIDI
1668 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1669 heads. Fixes many quirks with ties.
1671 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1672 in the grob property #'cause, instead of using Grob_info.
1674 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1675 staff context, fixing dot alignment on collisions.
1677 * lily/beam-engraver.cc (try_music): remove can't find beam start
1678 warning, so that skipTypesetting won't complain.
1680 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1682 * Documentation/user/refman.itely (Paper size): Documentation fix,
1685 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1687 * scm/grob-description.scm: \breathe: Use feta font comma by default
1689 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1691 * input/template/piano-dynamics.ly (pedal): Simplified
1693 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1695 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1697 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1699 * lilypond-mode.el (LilyPond-command-query): ignore case.
1701 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1703 * VERSION: 1.5.29 released
1705 * all files: change 2001 to 2002 in headers globally
1707 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1708 cheese") font. WARNING: fonts changed.
1710 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1712 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1714 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1716 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1718 * mf/*.mf: Fixed a few typos in various .mf files
1720 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1722 * mf/: added macro soft_penstroke
1724 softened some glyphs
1725 redrawn triangular noteheads
1727 added classical quarter rest
1729 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1731 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1732 lines and staff_space>=2
1734 * lily/rest.cc: Use default rests when current style glyphs not
1736 \property Staff.Rest \override #'style = #'classical
1738 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1740 * input/bugs/first-tie.ly: New file.
1742 * input/bugs/spacing-clash.ly: New file.
1744 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1748 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1750 * lilypond-indent.el: New file providing indentation for
1751 parenthesised blocks of lilypond code in Emacs
1753 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1754 indentation and handle block comments properly. Distinguish
1755 accents from close-brackets in fontification.
1757 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1759 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1761 * Documentation/windows/installing.texi:
1762 * Documentation/windows/compiling.texi: Include from 1.4.10.
1764 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1766 * input/bugs/first-midi-tie.ly: New file.
1768 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1770 * VERSION: 1.5.28 released
1772 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1773 illicit beams on [c4 c4] etc.
1775 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1776 file. Make separate iterator for Bar_checks. Bar_check now happen
1777 outside engravers, meaning that you can use them with
1778 skipTypesetting. Associated changes in other files.
1780 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1783 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1785 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1787 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1789 * lily/stem.cc (set_spacing_hints): removed function
1791 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1792 correction for spacing; now take vertical extents of the stem into
1795 * lily/third-try.cc: More hacking to get spacing working.
1797 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1798 sits at staff level and creates note spacing objects. Scrap it
1799 again, and document why.
1801 * lily/include/group-interface.hh: rename functions.
1803 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1805 * stepmake/stepmake/c++-rules.make:
1806 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1808 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1810 * make/lilypond-vars.make:
1811 * scripts/ly2dvi.py (setup_environment):
1812 * scripts/lilypond-book.py (setup_environment): Also set tex
1815 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1817 * VERSION: 1.5.27 released.
1819 * Documentation/user/refman.itely (Bar numbers): added bar number
1822 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1825 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1827 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1828 spread the last few lines all over the last page of a score.
1830 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1832 * lily/third-try.cc: 3rd try at revising spacing
1833 engine. Not yet finished.
1835 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1838 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1839 collecting past note heads.
1841 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1844 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1845 class. Keep a queue of grobs that are still playing in busyGrobs.
1847 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1848 function. Use busyGrobs to detect playing notes.
1850 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1852 * Documentation/topdocs/INSTALL.texi: Added note about broken
1853 python-2.1. Updated note for Debian's broken (well, broken for
1854 our use anyway) tex configuration.
1856 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1858 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1859 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1861 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1862 (But left margin of png's still misses a few pixels. Arg.)
1864 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1866 * lilypond-mode.el (LilyPond-command-next-midi): Make
1867 possible to kill midi-process (using "C-c C-m").
1869 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1871 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1872 Convert strings with dimensions to numbers.
1874 * lily/volta-engraver.cc: only make a bracket for the top staff,
1875 as found in stavesFound.
1877 * lily/bar-number-engraver.cc: remove staff administration.
1879 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1880 administration. This breaks support for invisible-staff.
1882 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1883 symbols into stavesFound.
1885 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1886 grobs, and put them into columns.
1888 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1889 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1891 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1893 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1894 midi section in the Emacs-mode, so it is possible to play certain
1895 score in a multiscore lilypond-file.
1897 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1898 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1899 (FIXME: not accessible from guile)
1901 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1902 better support for Kurt Stone's suggestions.
1903 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1905 Changed property: localKeySignature.
1906 Added properties: extraNatural, autoAccidentals,
1909 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1911 * ly/property-init.ly: added commands
1912 \defaultAccidentals \modernAccidentals \modernCautionaries
1913 \noResetKey \forgetAccidentals
1915 * ly/engraver-init.ly: Correct initialization of new accidentals.
1917 * scm/translator-property-description.scm: The new properties
1920 * input/: Some examples added, some changed.
1922 * Documentation/regression-test.tely: Added quick test of new
1925 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1927 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1930 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1932 * lily/beam.cc (before_line_breaking): Make beams without stems
1933 or with only one stem disappear.
1935 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1937 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1938 files to have standardised HTML bibliography output. Update build
1939 docs to reflect this.
1941 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1942 active_count_, so that we don't have to look for active springs
1945 * scm/interface-description.scm,scm/grob-property-description.scm:
1948 * lily/simple-spacer.cc (solve): Handle forced line breaks
1949 here. Fixes problems when combining linebreaks with non-fitting
1952 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1954 * 1.4.9.jcn3 forward ports.
1956 * Really included .cvsignore.
1958 * Included Han-Wen's uu1 windows fixes.
1960 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1962 * Added Cygwin setup.hint
1964 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1965 tetex/texmf, python installations.
1967 * Updated cygwin installer.
1969 * ly2dvi: Don't accept filenames with spaces (+ fix).
1971 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1973 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1975 * lily/translator-def.cc: Remove manual symbol caching.
1977 * lily/script-column.cc (before_line_breaking): robustness check:
1978 don't crash if no direction set.
1980 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1982 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1986 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1988 * lily/note-head.cc (head_extent): added to compute width without
1989 ledger lines. By default, ledger lines take up width now.
1991 * input/regression/fingering.ly: demonstrate auto fingering.
1992 Horizontal placement is still buggy.
1994 * lily/fingering-engraver.cc (class Fingering_engraver):
1995 added. Provides support for horizontal fingering scripts
1997 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1999 * lily/side-position-interface.cc (add_staff_support): add staff
2000 only for Y-axis side positions.
2002 * lily/parser.yy (request_chord): Fix mem leak.
2004 * lily/musical-request.cc (transpose): moved to Music::transpose()
2006 * lily/include/grob-info.hh: Change music pointer to SCM, so we
2007 can store grobs as grob-creation cause as well.
2009 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2010 handle when adding. Use precomputed symbols throughout lily.
2012 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2013 track of spacing issues.
2015 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2016 to keep track of staff spacing
2018 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
2020 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2021 code clean from conditionals and have a concentrated sets of
2022 compatibility fixes for old guile versions.
2024 * Fixes for guile 1.4, including embedded ps.
2026 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2028 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2029 well for markup texts.
2031 * lily/musical-request.cc (length_mom): kludge for null pointer.
2033 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2035 * scm/lily.scm (sign): bugfix
2037 * CHANGES: Change log instated.
2039 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.