1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
5 * autogen.sh: Generate.
8 * configure: Regenerate.
10 * stepmake/stepmake/automatically-generated.sub.make: Keep
13 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
15 * stepmake/stepmake/generic-targets.make (configure): Generate
18 * GNUmakefile.in (SCRIPTS):
19 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
21 * stepmake/autogen.sh: New file.
23 * configure: Check for g++ >= 2.95.
25 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
26 c/c++ version checking.
28 * flower/include/string.hh: Typo fix.
30 * lily/include/midi-item.hh: Remove stray i.
32 * Documentation/windows/GNUmakefile: Avoid collapsed directory
35 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
36 constructs '//' from arguments.
38 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
40 * scm/music-functions.scm (check-start-chords): function to check
41 for chords without \context. Apply automatically from parser.
43 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
45 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
48 * scm/output-lib.scm: fix ez notation stems.
50 * lily/paper-outputter.cc: various fixes to speed up compilation.
52 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
54 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
56 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
58 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
59 determine latex input.
61 * stepmake/bin/install-sh: Include latest from libtool.
64 * configure: Regenerate.
66 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
67 (USER_CFLAGS): Bugfix, include CPPFLAGS.
69 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
71 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
72 REQUIRED programs and version. Try to continue configuring, list
73 missing programs at the end, but don't generate a GNUmakefile if
74 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
75 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
76 fancy for some older systems.
78 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
80 * lily/score-engraver.cc (typeset_all): sanity check for items
81 that are Y parent to spanner.
83 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
86 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
88 * lily/*.cc: remove as many iostream use as possible.
90 * flower/ : remove text-db, text-stream, data-file.
92 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
94 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
95 (completize_preamble): don't barf if no preamble present.
96 (do_file): allow extensions on --output
98 * scripts/ly2dvi.py (make_preview): make automatic preview of
99 first system. Small cleanups.
101 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
103 * scripts/lilypond-book.py (make_pixmap): output png directly.
105 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
108 * lily/parser.yy (My_lily_parser): comment out code. (Causes
109 problems with recent bison releases).
111 * make/lilypond.redhat.spec.in: add pfa fonts to X.
113 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
115 * lilypond-font-lock.el: Fixes the order of the note name list.
117 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
119 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
120 capability, --verbose option, rlimit hack.
122 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
124 * lily/piano-pedal-engraver.cc: cleanups.
126 * lily/accidental.cc (after_line_breaking): add break tie
129 * lily/text-engraver.cc (try_music): don't typeset fingerings
131 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
133 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
135 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
137 * lily/*.cc: change gh_str02scm() to ly_str02scm().
139 * lily/spacing-spanner.cc (note_spacing): Bound
140 shortest-playing-length by the distance to next note. This should
141 fix chord tremolo spacing.
143 * VERSION: 1.5.55 released
145 * lily/stem.cc (off_callback): invisible stem over whole note is
146 centered on note now.
148 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
149 stem-tremolo is stem now.
151 * input/mozart-hrn*.ly: many corrections.
153 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
154 support for dynamic scripts.
156 * lily/accidental-placement.cc (position_accidentals): check for
157 collisions as well: should avoid those heads too.
159 * lily/beam.cc (check_concave): allow undefined gap and
160 threshold. Change the meaning of threshold/gap == 0.0.
161 (check_concave): skip Stolba concaveness check if we have a knee
164 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
166 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
167 tremolos of dotted duration.
169 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
171 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
172 downstroke again. Sigh.
174 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
177 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
179 * lily/slur.cc (add_column): allow slur over rest.
181 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
183 * lily/beam.cc: move scoring constants out of code
185 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
187 * mf/feta-nummer.mf: scalability fixes.
189 * mf/feta-nummer-code.mf: fixes for 5, 8.
191 * mf/feta-klef.mf: G clef fixes.
193 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
195 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
197 * scripts/lilypond-book.py: %Newline, rather than glue macros
198 after \end{verbatim}.
200 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
202 * Documentation/user/lilypond-book.itely:
203 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
206 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
208 * scm/grob-property-description.scm (beam-space): Junk.
210 * lily/beam.cc (space_function): New method.
211 (get_interbeam): Call space-function.
213 * scm/grob-description.scm (Beam): Initialize space-function with
214 Beam::space_function.
216 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
217 Beam.space-function. Don't quantise grace beams.
219 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
221 * VERSION: 1.5.54 released
223 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
226 * Documentation/index.texi: add PDF links.
228 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
230 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
231 compare #'glyph as strings.
233 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
235 * scripts/ly2dvi.py (setup_environment): fix by Mats.
237 * lily/stem.cc (head_count): Change function name. Change property
238 to #'note-heads i.s.o. #'heads.
239 (position_noteheads): Kern noteheads for invisible stems.
240 (before_line_breaking): Do position_noteheads() for whole note
243 * lily/accidental-placement.cc (position_accidentals): First
244 determine refpoints, only then determine extents.
246 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
248 * lily/accidental-placement.cc (position_accidentals): use all
249 note heads for note head-skyline.
251 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
253 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
255 * Documentation/windows/setup.hint (requires): Add gsview dependency.
257 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
259 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
261 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
263 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
265 * mf/feta-schrift.mf: lighter staccato.
267 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
269 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
271 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
273 * VERSION: 1.5.53 released
275 * scm/lily.scm (ly-load): use primitive-load for loading.
277 * lily/misc.cc: remove quantise_iv()
279 * lily/*.cc: pass read-only arrays by reference.
281 * lily/grob.cc (common_refpoint_of_array): new function. Try to
282 use common_refpoint_of_{array, list} when possible.
284 * lily/include/accidental-placement.hh: new file.
286 * lily/accidental-placement.cc (alignment_callback): position
287 accidentals in a better way.
289 * lily/skyline.cc: new file. Compute distances for collections of
292 * lily/include/skyline.hh: new file
294 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
296 * lily/accidental.cc (class Accidental_interface): grob for a
299 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
302 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
303 together with new accidental-interface.
305 * lily/include/*.hh: remove spurious set_interface() decls.
307 * lily/key-signature-interface.cc (brew_molecule): add padding for
308 natural signs. Make natural typesetting like the sharp.
311 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
312 is now slightly curved, not straight.
315 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
317 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
319 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
320 more strictly. Use more clever regular expressions. Commented regexps.
322 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
324 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
326 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
328 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
329 to control width of staff symbol in ragged-right mode (by request
332 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
333 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
334 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
335 added support for ligature brackets (needed when transcribing
338 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
340 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
341 Fontify notes more strictly.
343 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
345 * mf/feta-din-code.mf: dynamic z sign.
347 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
349 * lilypond-mode.el: Prevent recoloring strings and comments.
351 * lilypond-font-lock.el: Handle block comments: block comments
352 can have also ordinary comments inside.
354 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
356 * lily/stem.cc (get_default_dir): set direction to CENTER if
357 invisible. Various other fixes to deal with invisible stems and
358 stem-direction == CENTER.
360 * lily/rest-collision.cc (do_shift): take direction from note if
363 * input/regression/tie-grace.ly: new file.
365 * lily/tie-engraver.cc (create_grobs): fix tied graces.
367 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
368 knee correction. Fixes tight spacing for knees.
370 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
372 * VERSION: 1.5.52 released
374 * lily/*.cc: add some undocced properties.
375 scm/grob-description.scm: idem.
377 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
379 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
380 multi-measure rests like "R1 *4" and scheme (typically has '#'
381 in the beginning). Small fixes. Add few reserved words.
383 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
385 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
388 * Documentation/windows/installing.texi: Suggest gswin32c (console
389 program) for getting the version. Layout fixes.
391 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
393 * Documentation/user/tutorial.itely (Running LilyPond): Separate
394 windows viewing commands, remove silly comment about Yap.
396 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
398 * Documentation/topdocs/INSTALL.texi: Describe how to learn
399 configure to find kpathsea on for example Slackware 8.0.
401 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
403 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
404 by default: avoid "1" over single bar rests.
406 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
407 and correct the handling of geometry options.
409 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
411 * lily/include/grob-interface.hh (ADD_INTERFACE): make
412 implementation for Class::has_interface automatically. Junk all
413 other implementations.
415 * lily/grob.cc (internal_get_grob_property): also typecheck
416 property reads. Catches even more undocced properties. Bugfixing
417 left for the uninspired masses.
419 * lily/beam.cc: remove end_after_line_breaking().
421 * lily/grob.cc (calculate_dependencies): remove list support for
424 * lily/font-size-engraver.cc: only do font-interface.
426 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
428 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
431 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
433 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
434 brackets using arpeggio requests.
436 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
437 molecule-callback to use for drawing the brackets.
439 * Documentation/user/refman.itely:
440 * input/test/chord-bracket.ly: Chord brackets documented
442 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
444 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
446 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
448 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
450 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
451 direction tuplets on beams.
453 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
455 * lilypond-indent.el: Bugfix of indentation of final point in buffer
457 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
459 * lilypond-mode.el: new command: LilyPond-un-comment-region.
460 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
461 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
462 submenu to "LilyPond"-menu.
464 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
465 an interface to play midi.
467 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
469 * input/regression/script-stack-order.ly: new file.
471 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
473 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
475 * mf/feta-din-code.mf: kerning for dynamics.
477 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
479 * input/regression/dynamics-glyphs.ly: new file
481 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
483 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
484 forte f for the 2 number. Some fixes for the other bulbed glyphs.
486 * Documentation/windows/gs-profile.sh:
487 * Documentation/windows/gsview-profile.sh: Remove. Functionality
488 moved to gs/gsview windows packages.
490 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
492 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
493 finding out the duration. Fixes chord tremolo bug.
495 * lily/completion-note-heads-engraver.cc (process_music): Set
496 correct duration for all requests of the broken notes.
498 * input/regression/completion-heads.ly: Added example of
499 Completion_heads_engraver.
501 * lilypond-mode.el: Added "2Midi" command
503 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
505 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
506 edge-width, edge-height and shorten-pair properties for tuplet
509 * lilypond-indent.el: Support for blinking of matching parentheses
511 * lilypond-font-lock.el: Fix fontification of closing > on its own line
513 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
514 cleanups of piano pedal brackets.
516 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
518 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
520 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
522 * mf/feta-new-code.mf: new dynamic f sign.
525 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
527 * mf/feta-new-code.mf: new dynamic p sign.
529 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
531 * lily/note-spacing.cc (stem_dir_correction): only do
532 beam-correction if a beam is there.
534 * lily/stem.cc (duration_log): change from flag_i (); better
536 (get_default_stem_end_position): fix dot/flag collision code.
538 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
540 * VERSION: release 1.5.50
542 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
543 unit spring here. Reduces number of warning messages.
545 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
547 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
549 * scm/generic-property.scm: remove generic-property, property-engraver
551 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
553 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
555 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
557 * scm/*.scm: remove volta, hairpin and tuplet functions.
559 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
560 note column for notes/stems/dots that already have parents. Fixes
561 nested grace contexts.
563 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
565 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
566 get too curved slurs.
568 * scm/slur.scm (default-slur-extremity-offset-alist)
569 (default-phrasing-slur-extremity-offset-alist): Move slur
570 attachments further away from note-head, vertically. Also, leave
571 a horizontal gap between slur and stem end.
573 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
575 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
577 * input/regression/spacing-grace-duration.ly: new file
579 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
580 for shortest durations.
582 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
583 extent of the mm rest.
585 * lily/spacing-spanner.cc (get_duration_space): better spacing for
588 * lily/tuplet-bracket.cc (make_bracket): new function
589 (get_x_offset): new function; make tuplet brackets align on stems
590 if stem has same direction.
591 (parallel_beam): be anal about matching bracket to tuplet.
593 * lily/lookup.cc (line): new function Lookup::line().
595 * scm/tex.scm (dashed-line): change -line to -system in names.
597 * lily/box.cc (add_point): new function.
599 * flower/include/interval.hh: new function add_point ().
602 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
604 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
606 * scm/grob-property-description.scm (number-threshold): Add
609 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
610 rest if #measures > number-threshold. Use padding (well, fake
613 * scm/font.scm (make-style-sheet): New styles: mark-number,
615 (paper20-style-sheet-alist): Add bigger bold fonts.
617 * lily/mark-engraver.cc (process_music): Use style mark-number or
620 * .cvsignore: Ignore all kinds of lilypond input and output.
622 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
624 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
626 * lily/staff-symbol.cc (brew_molecule): make line thickness
629 * lily/*.cc: replace stafflinethickness by linethickness.
631 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
633 * input/regression/beam-concave.ly: Add to-be-considered-concave
636 * lily/beam.cc (check_concave): Add check for large gap between an
637 inner notehead and the line through outer noteheads.
639 * scm/grob-description.scm (Beam): Add concaveness-gap, default
640 value 2.0 staff-space.
642 * scm/grob-property-description.scm (concaveness-gap): Add
645 * input/mozart-hrn3-allegro.ly: Fix typo.
647 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
649 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
650 lily/note-head-engraver: improved implementation of roundfilledbox
651 (according to Han-Wen's request)
653 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
654 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
655 lily/simple-spacer.cc: ragged-right alignment
657 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
659 * input/regression/spacing-note-flags.ly: new file
661 * input/regression/spacing-rest.ly: new file
663 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
665 * lily/spacing-spanner.cc (note_spacing): make note spacing after
666 all grace notes tight (not only the column directly following a
669 * scm/grob-description.scm (all-grob-descriptions): don't make
670 mm-rests larger than normal.
672 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
673 curved. Remove white space at the right of flags.
675 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
677 * ports/ports.make: Bugfix: ignore CVS directories.
679 * stepmake/.cvsignore: New file.
681 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
683 * lily/note-spacing.cc (stem_dir_correction): don't correct when
684 there is a flag on the stem.
686 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
688 * scm/grob-property-description.scm (measure-length):
689 measure-length grob property.
691 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
692 better spacing for breakable columns when they're juxtaposed: use
693 measure length if applicable
695 * lily/timing-engraver.cc (start_translation_timestep): store
696 measure length in breakable column at start of measure.
698 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
700 * ROADMAP: Add description for ports dir, to check email upon
703 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
705 * VERSION: 1.5.48 released
707 * lily/multi-measure-rest.cc (symbol_molecule): split off from
709 (set_spacing_rods): Use symbol_molecule() to determine minimum
711 (church_rest): split off from brew_molecule()
712 (big_rest): split off from brew_molecule(). Construct using
715 * mf/feta-eindelijk.mf: junk multi measure rest.
717 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
719 * lily/multi-measure-rest.cc (add_column): remove columns property.
721 * lily/dynamic-engraver.cc (process_music): add more verbose warning
723 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
726 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
728 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
729 keywords covered, dropped some non-keywords, include R- and 128-notes
731 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
733 * Code clean-up: Junk multiple implementations of ledger line
734 creation in note_head, custos, and porrectus. This is important
735 since there soon will be some more applications of ledger lines to
736 come (e.g. ambitus engraver).
738 * Make thickness of ledger lines adjustable. This is essential
739 for mensural notation.
741 * Fix some bugs in the current ledger_line implementation, most
742 notably that of the horizontal extent of ledger lines which equals
743 at least the extent of the metafont ledger_line character, and
744 which grows(!) if the desired extent shrinks below this limit.
746 * roundfilledbox: variable blotdiameter
748 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
750 * VERSION: 1.5.47 released
752 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
754 * lily/porrectus.cc: change line-thickness to thickness, change
755 stem-direction to direction.
757 * scm/backend-documentation-lib.scm (check-dangling-properties):
758 Automatically detect doc'ed properties that are not in an interface
760 * scm/grob-property-description.scm: property cleanup. Remove many
761 paper-column props that are non-existent.
763 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
764 the grob has a molecule-callback.
766 * lily/*.cc: remove many set_interface() calls, and their
769 * input/regression/spacing-knee.ly: new file
771 * input/regression/spacing-clef-first-note.ly: new file
773 * lily/staff-spacing.cc (get_spacing_params): different spacing
774 for pref matter to note at start of line, halfway during line.
776 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
777 correction only if stems have same direction (i.e. not for
778 stem-clef combination).
779 (stem_dir_correction): maximal correction for knees.
781 * lily/*.cc: many updates to interface descriptions.
783 * lily/grob.cc (internal_set_grob_property): add interface check
784 for every set_grob_property call
786 * lily/*.cc: document interface stuff in C++
788 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
790 * lily/volta-bracket.cc: naming: change volta spanner to
793 * input/bugs/*.ly: cleanup, remove lots of files.
795 * buildscripts/mf-to-table.py (write_ps_encoding): generate
796 .encoding file. WARNING: upgrade to pktrace 1.0.3
798 * mf/feta-toevallig.mf: change PS name for parentheses.
800 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
802 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
805 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
807 * lily/scope.cc: remove file .
809 * lily/include/scope.hh: remove file. Remove Scope class
813 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
814 score_forbidden_quants): ): take out of SCM, pass parameters so
815 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
817 (calc_stem_y): robustness: take care of last_visible_stem == 0.
820 * lily/lily-guile.cc (ly_unit): return internal unit.
822 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
824 * lily/paper-outputter.cc (output_version): output internal unit
827 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
829 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
831 * scripts/ly2dvi.py: clean up old .*pk font caching code.
833 * scm/ps.scm: Use uppercase postscript font names for the standard
836 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
837 Add all available TeX Type1 fonts, including Feta, to the
838 Ghostscript font path.
840 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
841 version (affects the FontName) in lilypond.map.
843 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
844 documentation file to fetaNNlist.ly to avoid name collisions between
845 lilypond generated .tex file and font .tex macros file.
848 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
850 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
851 made mensural longa and (semi-)brevis leaner
853 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
855 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
856 clean-up: moved bezier shape and slope from porrectus to lookup
858 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
859 and /usr/share/texmf/fonts
861 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
863 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
865 * lily/text-spanner.cc (brew_molecule): add #'thickness
866 (brew_molecule): add corrections for thickness in molecule padding.
868 * lily/line-spanner.cc (line_atom): make function private
870 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
871 discover bounding box. This solves the cropping problem.
873 * lily/bar-check-iterator.cc (process): Only resynchronize bar
874 check when it fails. This fixes the combination of grace notes
877 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
879 * lily/repeated-music.cc (minimum_start): new Scheme callable function
880 (first_start): new Scheme callable. This will fix repeated music
881 starting with grace notes.
883 * lily/music.cc (start_mom): check start-moment-function grob property.
885 * VERSION: 1.5.45 released
887 * input/regression/system-extents.ly: new regression test. Test
890 * lily/system.cc: rename LineOfScore into System
892 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
894 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
895 (ly_get_extent): new Scheme function ly-get-extent
897 * ps/lilyponddefs.ps: use output-scale for line-x
900 * scm/ps.scm (font-load-command):
903 2002-03-20 Rune Zedeler <rune@zedeler.dk>
905 * lily/beaming-info.cc: Stupid typo fixed
907 * lily/accidental-engraver.cc: rewrote accidental-routines to get
908 support for cross-context auto-accidentals.
909 Now the engraver can stay in Staff-context and see other contexts
911 Changed properties: autoAccidentals, autoCautionaries
913 * lily/translator-group.cc (set_children_property):
914 Function added recursively setting the same property (deep_copied)
915 for all children of a Translator_group.
917 * ly/property-init.ly: added commands
918 \pianoAccidentals \voiceAccidentals
919 \modernVoiceAccidentals \modernVoiceCautionaries
921 * ly/engraver-init.ly: Correct initialization of new accidentals.
923 * scm/translator-property-description.scm: Updated
925 * input/regression/accidental-voice.ly: Added
927 * Documentation/regression-test.tely: Added new test
929 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
931 * VERSION: 1.5.44 released
933 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
935 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
937 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
940 * tex/feta*.tex: remove.
942 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
943 all software dealing with it.
945 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
947 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
948 (this fixes pdf output). Drop awk dependency.
950 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
951 dimensions (linewidth) are in mm.
953 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
955 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
957 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
959 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
961 * VERSION: 1.5.43 released
963 * scm/beam.scm (beam-dir-majority-median): if majority is
964 undecided, use median. Removes a forced dir in sarabande.
966 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
968 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
970 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
971 widths, heights and shortens are now customisable properties.
973 * scm/grob-description.scm, scm/grob-property-description.scm: New
974 properties added to PianoPedalBracket, unnecessary
975 Y-offset-callbacks removed from *Pedal, undocumented properties
978 * Documentation/user/refman.itely: Piano pedal updates.
980 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
982 * scm/grob-property-description.scm:
983 * scm/interface-description.scm: Remove old stuff.
985 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
986 0.48 (previously 0.42).
987 (Beam): Remove old stuff.
990 * lily/stem-tremolo.cc:
992 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
993 (previously space-function).
995 * stepmake/bin/add-html-footer.py: Website title fix.
997 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
999 * scripts/ly2dvi.py (environment): use new font searching setup.
1001 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1003 * lily/tfm.cc (dimensions): make code dimension independent
1005 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1008 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1010 * lily/include/dimensions.hh: try MM as internal unit.
1012 * scm/*.scm: remove invoke-dim1
1014 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1016 * GNUmakefile.in (fontpaths): add fontpaths target,
1018 * make/mutopia-targets.make: add PDF rules.
1020 * make/mutopia-rules.make: add pdf rule.
1022 * buildscripts/mutopia-index.py (list_item): add PDF.
1024 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1026 * make/lilypond-vars.make: set TEXMF for the new font setup.
1028 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1030 * VERSION: 1.5.42 released
1032 * mf/feta-schrift.mf: endless twiddling of Tr.
1034 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1035 endless twiddling with the bulb shape.
1037 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1038 little smaller if there is an accidental.
1040 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1042 * buildscripts/lilypond-profile.sh:
1044 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1045 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1046 Implement new font installation strategy
1048 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1049 the new font installation strategy.
1051 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1054 * input/test/staff-size.ly: Simplified using StaffContainer
1056 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1059 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1061 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1063 * lily/beam.cc (score_stem_lengths): new quanting stuff
1064 (score_forbidden_quants): Second and third beam quant stuff.
1066 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1068 * lily/beam.cc (least_squares): Remember least-squares-dy for
1070 (quantise_interval): Don't quant to dy steeper that
1071 least-squares-dy. Return empty interval if no sane quants found.
1072 (quantise_position): Try quantise_interval until we have
1073 acceptable solution.
1075 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1077 * scm/interface-description.scm (beam-interface): Update.
1079 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1081 * VERSION: 1.5.41 released
1083 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1084 optima serifs on top of t, bottom of r.
1086 * mf/feta-bolletjes.mf: make ledger line rounder.
1088 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1090 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1093 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1095 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1096 well as text pedal indications and a combination of both. All
1097 pedal indications are horizontally aligned on a line spanner.
1099 * lily/text-spanner.cc: Edge-width property added to use in
1100 bracketed piano pedals. Function setup_sustain_pedal added to set
1101 the dimensions of the brackets.
1103 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1104 some of the *Pedal properties tweaked.
1106 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1107 edge-width (TextSpanner) properties.
1109 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1111 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1112 fontified identifiers list.
1114 * input/test/pedal.ly: New pedal features added.
1116 * Documentation/user/refman.itely: New pedal features documented.
1119 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1121 * lily/include/new-beam.hh: Previously new-beam.hh
1122 * lily/beam.cc: Previously new-beam.cc
1123 (least_squares): Bugfix: don't barf on beams with less than two
1124 visible stems (tremolos).
1127 * scm/grob-description.scm (Beam): Junk old beam stuff.
1130 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1134 * mf/feta-eindelijk.mf: new 8th rest.
1136 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1137 stick out of staffline
1139 * scripts/lilypond-book.py: fixes for texi regular expressions.
1141 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1143 * lily/include/new-beam.hh:
1144 * lily/new-beam.cc: New file.
1146 * flower/include/interval.hh:
1147 * flower/include/interval.tcc (delta): New method.
1148 (swap): Now public (previously private).
1150 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1151 1 staff-line-thickness. Sadly, this makes dy quanting problems
1152 (dy quants allowed should depend on actual left y) more visible.
1154 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1156 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1158 * scm/grob-property-description.scm (concaveness-threshold): Add
1159 typecheck and description.
1161 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1162 concaveness-threshold (previously concaveness).
1164 * lily/beam.cc (check_concave): Remove choices and debugging
1165 stuff: use best concaveness calculation.
1166 (quantise_dy): Remove choice. Try to never make a slope steeper
1167 by quantising, but certainly never quantise a slope away.
1168 (check_stem_length_f): Remove choice. In case of lengthening
1169 alowed, always lengthen to ideal length.
1171 * Documentation/index.texi: Fix FAQ url.
1173 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1174 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1176 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1178 * VERSION: 1.5.39 released
1180 * lily/simple-spacer.cc (add_rod): rods take precedence over
1181 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1183 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1185 * lily/note-spacing.cc (get_spacing): only insert space for
1186 accidentals if necessary.
1188 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1190 * lily/spacing-spanner.cc (musical_column_spacing): new
1191 function. Have correct spacing from note to end-of-line as well.
1193 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1195 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1197 * darwin.patch: New file.
1199 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1200 code. Shorten stems by fraction of stems to be shortened.
1202 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1203 of shorten value for boundary cases.
1205 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1206 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1208 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1210 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1212 * scm/grob-description.scm (Beam): Add concaveness. Replace
1213 Beam::cancel_suspect_slope with Beam::check_concave.
1215 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1216 set slope to horizontal if concaveness > Beam.concaveness. This
1217 handles cases that kludgy cancel_suspect_slope was meant to catch
1219 (cancel_suspect_slope): Remove.
1221 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1223 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1224 stemLeftBeamCount and stemRightBeamCount to equal 0.
1227 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1229 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1230 fixed spacing for pref matter, if the next column is musical, and
1233 * lily/note-spacing.cc (stem_dir_correction): Use correct
1234 discretionary for stem-bar spacing.
1236 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1238 * VERSION: 1.5.38 released
1240 * lily/grob.cc (warning): Use cause tracking to give more
1241 meaningful errors from the backend.
1243 * lily/property-iterator.cc (check_grob): Warn if setting grob
1244 property in unknown grob.
1246 * mf/feta-toevallig.mf: brushed stems for natural sign.
1248 * lily/molecule.cc (align_to): don't translate empty molecule.
1249 (this triggers a very subtle bug in time-signature.)
1251 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1253 * lily/spring.cc: remove file.
1255 * input/regression/spacing-stem-bar.ly: new file
1257 * lily/score.cc (run_translator): resurrect point-and-click
1259 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1262 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1263 spacing is now globally determined, using the most common shortest
1264 note. Notes that are shorter are spaced geometrically, and with
1265 expand hints. This makes spacing more even, and measures that have
1266 very short notes won't be that stretched out.
1268 * mf/feta-klef.mf: F-clef fixes, documentation on the
1269 shape. (WARNING: font changed.)
1271 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1273 * lily/simple-spacer.cc (add_columns): support for infinitely
1276 * lily/staff-spacing.cc (get_spacing_params): space after
1277 prefatory matter is fixed.
1279 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1281 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1282 barline following an upstem.
1284 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1285 function from next_notes_correction().
1286 (bar_y_positions): idem.
1288 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1290 * input/regression/break.ly (texidoc): bugfix: escape \ in
1293 * lily/staff-spacing.cc (next_notes_correction): Correct the
1294 spacing of a note following a barline.
1297 2002-03-04 Glen Prideaux
1299 * mf/feta-solfa.mf: Shaped note heads
1301 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1303 * VERSION: 1.5.37 released
1305 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1306 left-align molecule.
1308 * lily/break-align-interface.cc (do_alignment): completely
1309 rewritten. Now it does not use Align_interface anymore, but a
1310 separate routine. Like StaffSpacing, it reads space-alist from the
1311 breakable grobs. This allows you to set spacing using
1313 \property Staff.Clef \override #'space-alist = '(....stuff....)
1315 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1316 to Bar_line. Move files around as well.
1318 * lily/time-signature.cc (time_signature): left align time signatures.
1320 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1321 Corrections of the glyph shape C. Comments added.
1323 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1325 * lily/spacing-spanner.cc: move from third-try.cc; rename
1326 Third_spacing_spanner to Spacing_spanner.
1328 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1329 spacing stuff. Much cleaner now, and we prepare for neat spacing
1330 tricks around bar lines and such.
1332 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1333 variables with themselves. (Ouch.)
1335 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1338 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1342 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1345 * lily/music.cc (ly_get_mus_property): typechecking
1346 (ly_set_mus_property): idem
1347 (ly_make_music): idem
1348 (ly_music_name): idem
1350 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1352 * lily/note-spacing.cc (stem_dir_correction): correction for
1353 same stem notes as well.
1355 * lily/pitch.cc (pitch_transpose): stricter typechecking
1357 * mf/parmesan*mf: magnification fixes.
1359 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1361 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1363 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1364 documenting the font. (Doesn't work for parmesan at the moment)
1366 * Documentation/user/appendices.itely (The Feta font): Add list of
1367 Feta font symbols with names.
1369 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1372 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1374 * lily/translator-group.cc (ly_set_trans_property): typechecking
1375 (ly_get_trans_property): typechecking.
1377 * lily/font-metric.cc (ly_text_dimension): typechecking
1378 (ly_find_glyph_by_name): idem.
1380 * scm/bass-figure.scm (brew-complete-figure): support for
1383 * lily/grob.cc (ly_get_paper_var): new function
1385 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1387 * VERSION (PATCH_LEVEL): 1.5.35 released.
1389 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1390 (bracket): New function.
1392 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1393 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1395 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1398 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1401 * lily/grob.cc (ly_get_grob_property): be anal about types.
1402 (ly_set_grob_property): idem
1404 * lily/figured-bass-engraver.cc (process_music): move molecule
1405 building completely to Scheme
1407 * lily/include/musical-request.hh (class Bass_figure_req): Add
1410 * lily/parser.yy (bass_figure): add support for space figure.
1412 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1414 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1416 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1417 (ly_align_to_x): new function ly-align-to!
1419 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1420 function ly-get-font
1422 * mf/feta-nummer.mf: include normal-space dimension.
1424 * lily/collision.cc (check_meshing_chords): don't merge collisions
1427 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1430 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1432 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1434 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1436 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1439 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1442 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1443 scm/grob-description.scm: added mensural fermata symbol
1445 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1447 * VERSION: 1.5.34 released.
1449 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1451 * lily/staff-symbol-referencer.cc (callback): assume that
1452 staff-position is unset in general.
1454 * input/regression/rest-pitch.ly: new file.
1456 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1459 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1461 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1462 as Scheme option. Run regression test by default with
1463 internal-type-checking.
1465 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1467 * lily/lily-guile.cc (type_check_assignment): changed functions.
1469 * scm/*description*.scm: be anal about typechecks. Some changes
1470 for internal variable names.
1472 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1474 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1476 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1478 * VERSION: 1.5.33 released.
1480 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1481 flare_path everywhere (c-clef, numbers).
1483 * lily/bar-number-engraver.cc (process_music): also print bar
1484 number if measure starts with grace note.
1486 * input/regression/grace-bar-number.ly: new test.
1488 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1490 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1493 * scm/music-functions.scm (voicify-music): split chords into
1494 different voices automatically.
1496 * lily/music.cc (ly_music_list_p): new function
1498 * lily/music-sequence.cc (do_relative_octave): robustification
1500 * scm/music-functions.scm: many utility functions
1502 * lily/music.cc (ly_set_mus_property): add type checks to the
1503 Scheme property assignment.
1505 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1508 * mf/lilypond.map: .map file from Mats' page.
1510 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1512 * Some more parmesan related fixes;
1514 * Custos: varying shape (in particular, stem length), depending on the
1515 vertical position of the custos (on staffline / between stafflines);
1517 * Custos: added grob property "neutral-direction" (same semantics as
1518 with stem); introduced new grob property "neutral-position";
1520 * Time-signature: print a warning when resorting to default layout.
1522 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1524 * lily/translator-group.cc (add_fresh_simple_translator): remove
1525 function; initialize() is called through
1526 Translator_group::initialize().
1528 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1529 for the neighbors of a loose column.
1531 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1532 position loose columns so that they don't collide.
1534 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1536 * VERSION: 1.5.32 released.
1538 * scm/font.scm: remove font-name symbol.
1540 * mf/GNUmakefile: use pktrace for making PFAs
1542 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1544 * lily/rest-collision.cc (do_shift): read direction field from
1545 rest-column in case of note-rest collision. This should fix some
1546 problems with rest collisions.
1548 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1550 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1553 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1554 property. Read pitch directly from #'cause.
1556 * mf/feta-puntje.mf: bugfix
1558 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1560 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1562 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1564 * Documentation/windows/compiling.texi: Update.
1566 * Documentation/index.texi: Add link to orphaned compiling for
1569 * Documentation/footer.html.in: Comment fix.
1571 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1573 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1575 * VERSION: 1.5.31 released
1577 * lily/new-spacing-spanner.cc: remove file.
1579 * lily/third-try.cc (do_measure): only take spacings into account
1580 if they pertain to the column pair under consideration. This fixes
1581 spacing bug when mixing eighths triplets and normal eighths.
1583 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1584 lines don't take up space anymore. Document why in note-head.cc
1587 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1589 * lily/font-interface.cc (get_font): reinstate
1590 #'font-magnification. See input/regression/font-magnification.ly
1591 (get_font): Change the definition of #'font-name grob property.
1593 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1594 that have a #'cause field.
1596 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1598 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1600 * mf/GNUmakefile: remove metapost stuff
1602 * stepmake/aclocal.m4: remove metapost detection stuff.
1604 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1606 * mf/GNUmakefile (FET_FILES):
1607 (FONT_FILES): Include parmesan.
1609 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1612 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1614 * Documentation/user/refman.itely (Paper size): Quote braces.
1616 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1618 * stepmake/aclocal.m4: fixed bison version check to be more
1621 * lily/stem.cc (position_noteheads): fix for cluster chords.
1623 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1625 * python 2.2 support.
1627 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1629 * VERSION: 1.5.30 released
1631 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1633 * Documentation/user/refman.itely (Dynamics): add a note about
1636 * scm/grob-description.scm: add a 'translator-type? object
1637 property, so that \property Foo.Bar =\turnOff doesn't cause
1640 * lily/translator-group.cc (add_fresh_group_translator): make
1641 new add-translator functions to make distinction between fresh and
1642 used group-translators. Fixes problem with scripts on auto-changing voice
1644 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1645 add to Score_performer. Fixes bar checks in MIDI
1647 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1648 heads. Fixes many quirks with ties.
1650 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1651 in the grob property #'cause, instead of using Grob_info.
1653 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1654 staff context, fixing dot alignment on collisions.
1656 * lily/beam-engraver.cc (try_music): remove can't find beam start
1657 warning, so that skipTypesetting won't complain.
1659 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1661 * Documentation/user/refman.itely (Paper size): Documentation fix,
1664 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1666 * scm/grob-description.scm: \breathe: Use feta font comma by default
1668 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1670 * input/template/piano-dynamics.ly (pedal): Simplified
1672 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1674 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1676 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1678 * lilypond-mode.el (LilyPond-command-query): ignore case.
1680 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1682 * VERSION: 1.5.29 released
1684 * all files: change 2001 to 2002 in headers globally
1686 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1687 cheese") font. WARNING: fonts changed.
1689 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1691 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1693 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1695 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1697 * mf/*.mf: Fixed a few typos in various .mf files
1699 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1701 * mf/: added macro soft_penstroke
1703 softened some glyphs
1704 redrawn triangular noteheads
1706 added classical quarter rest
1708 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1710 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1711 lines and staff_space>=2
1713 * lily/rest.cc: Use default rests when current style glyphs not
1715 \property Staff.Rest \override #'style = #'classical
1717 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1719 * input/bugs/first-tie.ly: New file.
1721 * input/bugs/spacing-clash.ly: New file.
1723 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1727 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1729 * lilypond-indent.el: New file providing indentation for
1730 parenthesised blocks of lilypond code in Emacs
1732 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1733 indentation and handle block comments properly. Distinguish
1734 accents from close-brackets in fontification.
1736 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1738 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1740 * Documentation/windows/installing.texi:
1741 * Documentation/windows/compiling.texi: Include from 1.4.10.
1743 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1745 * input/bugs/first-midi-tie.ly: New file.
1747 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1749 * VERSION: 1.5.28 released
1751 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1752 illicit beams on [c4 c4] etc.
1754 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1755 file. Make separate iterator for Bar_checks. Bar_check now happen
1756 outside engravers, meaning that you can use them with
1757 skipTypesetting. Associated changes in other files.
1759 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1762 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1764 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1766 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1768 * lily/stem.cc (set_spacing_hints): removed function
1770 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1771 correction for spacing; now take vertical extents of the stem into
1774 * lily/third-try.cc: More hacking to get spacing working.
1776 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1777 sits at staff level and creates note spacing objects. Scrap it
1778 again, and document why.
1780 * lily/include/group-interface.hh: rename functions.
1782 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1784 * stepmake/stepmake/c++-rules.make:
1785 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1787 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1789 * make/lilypond-vars.make:
1790 * scripts/ly2dvi.py (setup_environment):
1791 * scripts/lilypond-book.py (setup_environment): Also set tex
1794 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1796 * VERSION: 1.5.27 released.
1798 * Documentation/user/refman.itely (Bar numbers): added bar number
1801 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1804 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1806 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1807 spread the last few lines all over the last page of a score.
1809 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1811 * lily/third-try.cc: 3rd try at revising spacing
1812 engine. Not yet finished.
1814 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1817 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1818 collecting past note heads.
1820 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1823 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1824 class. Keep a queue of grobs that are still playing in busyGrobs.
1826 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1827 function. Use busyGrobs to detect playing notes.
1829 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1831 * Documentation/topdocs/INSTALL.texi: Added note about broken
1832 python-2.1. Updated note for Debian's broken (well, broken for
1833 our use anyway) tex configuration.
1835 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1837 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1838 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1840 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1841 (But left margin of png's still misses a few pixels. Arg.)
1843 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1845 * lilypond-mode.el (LilyPond-command-next-midi): Make
1846 possible to kill midi-process (using "C-c C-m").
1848 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1850 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1851 Convert strings with dimensions to numbers.
1853 * lily/volta-engraver.cc: only make a bracket for the top staff,
1854 as found in stavesFound.
1856 * lily/bar-number-engraver.cc: remove staff administration.
1858 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1859 administration. This breaks support for invisible-staff.
1861 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1862 symbols into stavesFound.
1864 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1865 grobs, and put them into columns.
1867 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1868 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1870 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1872 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1873 midi section in the Emacs-mode, so it is possible to play certain
1874 score in a multiscore lilypond-file.
1876 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1877 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1878 (FIXME: not accessible from guile)
1880 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1881 better support for Kurt Stone's suggestions.
1882 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1884 Changed property: localKeySignature.
1885 Added properties: extraNatural, autoAccidentals,
1888 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1890 * ly/property-init.ly: added commands
1891 \defaultAccidentals \modernAccidentals \modernCautionaries
1892 \noResetKey \forgetAccidentals
1894 * ly/engraver-init.ly: Correct initialization of new accidentals.
1896 * scm/translator-property-description.scm: The new properties
1899 * input/: Some examples added, some changed.
1901 * Documentation/regression-test.tely: Added quick test of new
1904 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1906 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1909 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1911 * lily/beam.cc (before_line_breaking): Make beams without stems
1912 or with only one stem disappear.
1914 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1916 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1917 files to have standardised HTML bibliography output. Update build
1918 docs to reflect this.
1920 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1921 active_count_, so that we don't have to look for active springs
1924 * scm/interface-description.scm,scm/grob-property-description.scm:
1927 * lily/simple-spacer.cc (solve): Handle forced line breaks
1928 here. Fixes problems when combining linebreaks with non-fitting
1931 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1933 * 1.4.9.jcn3 forward ports.
1935 * Really included .cvsignore.
1937 * Included Han-Wen's uu1 windows fixes.
1939 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1941 * Added Cygwin setup.hint
1943 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1944 tetex/texmf, python installations.
1946 * Updated cygwin installer.
1948 * ly2dvi: Don't accept filenames with spaces (+ fix).
1950 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1952 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1954 * lily/translator-def.cc: Remove manual symbol caching.
1956 * lily/script-column.cc (before_line_breaking): robustness check:
1957 don't crash if no direction set.
1959 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1961 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1965 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1967 * lily/note-head.cc (head_extent): added to compute width without
1968 ledger lines. By default, ledger lines take up width now.
1970 * input/regression/fingering.ly: demonstrate auto fingering.
1971 Horizontal placement is still buggy.
1973 * lily/fingering-engraver.cc (class Fingering_engraver):
1974 added. Provides support for horizontal fingering scripts
1976 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1978 * lily/side-position-interface.cc (add_staff_support): add staff
1979 only for Y-axis side positions.
1981 * lily/parser.yy (request_chord): Fix mem leak.
1983 * lily/musical-request.cc (transpose): moved to Music::transpose()
1985 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1986 can store grobs as grob-creation cause as well.
1988 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1989 handle when adding. Use precomputed symbols throughout lily.
1991 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1992 track of spacing issues.
1994 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1995 to keep track of staff spacing
1997 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1999 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2000 code clean from conditionals and have a concentrated sets of
2001 compatibility fixes for old guile versions.
2003 * Fixes for guile 1.4, including embedded ps.
2005 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2007 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2008 well for markup texts.
2010 * lily/musical-request.cc (length_mom): kludge for null pointer.
2012 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2014 * scm/lily.scm (sign): bugfix
2016 * CHANGES: Change log instated.
2018 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.