1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * autogen.sh: Generate.
6 * configure: Regenerate.
8 * stepmake/stepmake/automatically-generated.sub.make: Keep
11 * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
13 * stepmake/stepmake/generic-targets.make (configure): Generate
16 * GNUmakefile.in (SCRIPTS):
17 * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
19 * stepmake/autogen.sh: New file.
21 * configure: Check for g++ >= 2.95.
23 * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers. GNU
24 c/c++ version checking.
26 * flower/include/string.hh: Typo fix.
28 * lily/include/midi-item.hh: Remove stray i.
30 * Documentation/windows/GNUmakefile: Avoid collapsed directory
33 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
34 constructs '//' from arguments.
36 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
38 * scm/music-functions.scm (check-start-chords): function to check
39 for chords without \context. Apply automatically from parser.
41 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
43 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
46 * scm/output-lib.scm: fix ez notation stems.
48 * lily/paper-outputter.cc: various fixes to speed up compilation.
50 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
52 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
54 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
56 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
57 determine latex input.
59 * stepmake/bin/install-sh: Include latest from libtool.
62 * configure: Regenerate.
64 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
65 (USER_CFLAGS): Bugfix, include CPPFLAGS.
67 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
69 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
70 REQUIRED programs and version. Try to continue configuring, list
71 missing programs at the end, but don't generate a GNUmakefile if
72 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
73 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
74 fancy for some older systems.
76 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
78 * lily/score-engraver.cc (typeset_all): sanity check for items
79 that are Y parent to spanner.
81 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
84 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
86 * lily/*.cc: remove as many iostream use as possible.
88 * flower/ : remove text-db, text-stream, data-file.
90 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
92 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
93 (completize_preamble): don't barf if no preamble present.
94 (do_file): allow extensions on --output
96 * scripts/ly2dvi.py (make_preview): make automatic preview of
97 first system. Small cleanups.
99 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
101 * scripts/lilypond-book.py (make_pixmap): output png directly.
103 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
106 * lily/parser.yy (My_lily_parser): comment out code. (Causes
107 problems with recent bison releases).
109 * make/lilypond.redhat.spec.in: add pfa fonts to X.
111 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
113 * lilypond-font-lock.el: Fixes the order of the note name list.
115 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
117 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
118 capability, --verbose option, rlimit hack.
120 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
122 * lily/piano-pedal-engraver.cc: cleanups.
124 * lily/accidental.cc (after_line_breaking): add break tie
127 * lily/text-engraver.cc (try_music): don't typeset fingerings
129 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
131 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
133 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
135 * lily/*.cc: change gh_str02scm() to ly_str02scm().
137 * lily/spacing-spanner.cc (note_spacing): Bound
138 shortest-playing-length by the distance to next note. This should
139 fix chord tremolo spacing.
141 * VERSION: 1.5.55 released
143 * lily/stem.cc (off_callback): invisible stem over whole note is
144 centered on note now.
146 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
147 stem-tremolo is stem now.
149 * input/mozart-hrn*.ly: many corrections.
151 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
152 support for dynamic scripts.
154 * lily/accidental-placement.cc (position_accidentals): check for
155 collisions as well: should avoid those heads too.
157 * lily/beam.cc (check_concave): allow undefined gap and
158 threshold. Change the meaning of threshold/gap == 0.0.
159 (check_concave): skip Stolba concaveness check if we have a knee
162 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
164 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
165 tremolos of dotted duration.
167 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
169 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
170 downstroke again. Sigh.
172 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
175 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
177 * lily/slur.cc (add_column): allow slur over rest.
179 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
181 * lily/beam.cc: move scoring constants out of code
183 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
185 * mf/feta-nummer.mf: scalability fixes.
187 * mf/feta-nummer-code.mf: fixes for 5, 8.
189 * mf/feta-klef.mf: G clef fixes.
191 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
193 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
195 * scripts/lilypond-book.py: %Newline, rather than glue macros
196 after \end{verbatim}.
198 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
200 * Documentation/user/lilypond-book.itely:
201 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
204 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
206 * scm/grob-property-description.scm (beam-space): Junk.
208 * lily/beam.cc (space_function): New method.
209 (get_interbeam): Call space-function.
211 * scm/grob-description.scm (Beam): Initialize space-function with
212 Beam::space_function.
214 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
215 Beam.space-function. Don't quantise grace beams.
217 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
219 * VERSION: 1.5.54 released
221 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
224 * Documentation/index.texi: add PDF links.
226 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
228 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
229 compare #'glyph as strings.
231 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
233 * scripts/ly2dvi.py (setup_environment): fix by Mats.
235 * lily/stem.cc (head_count): Change function name. Change property
236 to #'note-heads i.s.o. #'heads.
237 (position_noteheads): Kern noteheads for invisible stems.
238 (before_line_breaking): Do position_noteheads() for whole note
241 * lily/accidental-placement.cc (position_accidentals): First
242 determine refpoints, only then determine extents.
244 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
246 * lily/accidental-placement.cc (position_accidentals): use all
247 note heads for note head-skyline.
249 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
251 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
253 * Documentation/windows/setup.hint (requires): Add gsview dependency.
255 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
257 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
259 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
261 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
263 * mf/feta-schrift.mf: lighter staccato.
265 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
267 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
269 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
271 * VERSION: 1.5.53 released
273 * scm/lily.scm (ly-load): use primitive-load for loading.
275 * lily/misc.cc: remove quantise_iv()
277 * lily/*.cc: pass read-only arrays by reference.
279 * lily/grob.cc (common_refpoint_of_array): new function. Try to
280 use common_refpoint_of_{array, list} when possible.
282 * lily/include/accidental-placement.hh: new file.
284 * lily/accidental-placement.cc (alignment_callback): position
285 accidentals in a better way.
287 * lily/skyline.cc: new file. Compute distances for collections of
290 * lily/include/skyline.hh: new file
292 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
294 * lily/accidental.cc (class Accidental_interface): grob for a
297 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
300 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
301 together with new accidental-interface.
303 * lily/include/*.hh: remove spurious set_interface() decls.
305 * lily/key-signature-interface.cc (brew_molecule): add padding for
306 natural signs. Make natural typesetting like the sharp.
309 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
310 is now slightly curved, not straight.
313 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
315 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
317 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
318 more strictly. Use more clever regular expressions. Commented regexps.
320 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
322 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
324 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
326 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
327 to control width of staff symbol in ragged-right mode (by request
330 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
331 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
332 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
333 added support for ligature brackets (needed when transcribing
336 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
338 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
339 Fontify notes more strictly.
341 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
343 * mf/feta-din-code.mf: dynamic z sign.
345 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
347 * lilypond-mode.el: Prevent recoloring strings and comments.
349 * lilypond-font-lock.el: Handle block comments: block comments
350 can have also ordinary comments inside.
352 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
354 * lily/stem.cc (get_default_dir): set direction to CENTER if
355 invisible. Various other fixes to deal with invisible stems and
356 stem-direction == CENTER.
358 * lily/rest-collision.cc (do_shift): take direction from note if
361 * input/regression/tie-grace.ly: new file.
363 * lily/tie-engraver.cc (create_grobs): fix tied graces.
365 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
366 knee correction. Fixes tight spacing for knees.
368 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
370 * VERSION: 1.5.52 released
372 * lily/*.cc: add some undocced properties.
373 scm/grob-description.scm: idem.
375 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
377 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
378 multi-measure rests like "R1 *4" and scheme (typically has '#'
379 in the beginning). Small fixes. Add few reserved words.
381 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
383 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
386 * Documentation/windows/installing.texi: Suggest gswin32c (console
387 program) for getting the version. Layout fixes.
389 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
391 * Documentation/user/tutorial.itely (Running LilyPond): Separate
392 windows viewing commands, remove silly comment about Yap.
394 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
396 * Documentation/topdocs/INSTALL.texi: Describe how to learn
397 configure to find kpathsea on for example Slackware 8.0.
399 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
401 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
402 by default: avoid "1" over single bar rests.
404 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
405 and correct the handling of geometry options.
407 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
409 * lily/include/grob-interface.hh (ADD_INTERFACE): make
410 implementation for Class::has_interface automatically. Junk all
411 other implementations.
413 * lily/grob.cc (internal_get_grob_property): also typecheck
414 property reads. Catches even more undocced properties. Bugfixing
415 left for the uninspired masses.
417 * lily/beam.cc: remove end_after_line_breaking().
419 * lily/grob.cc (calculate_dependencies): remove list support for
422 * lily/font-size-engraver.cc: only do font-interface.
424 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
426 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
429 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
431 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
432 brackets using arpeggio requests.
434 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
435 molecule-callback to use for drawing the brackets.
437 * Documentation/user/refman.itely:
438 * input/test/chord-bracket.ly: Chord brackets documented
440 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
442 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
444 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
446 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
448 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
449 direction tuplets on beams.
451 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
453 * lilypond-indent.el: Bugfix of indentation of final point in buffer
455 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
457 * lilypond-mode.el: new command: LilyPond-un-comment-region.
458 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
459 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
460 submenu to "LilyPond"-menu.
462 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
463 an interface to play midi.
465 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
467 * input/regression/script-stack-order.ly: new file.
469 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
471 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
473 * mf/feta-din-code.mf: kerning for dynamics.
475 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
477 * input/regression/dynamics-glyphs.ly: new file
479 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
481 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
482 forte f for the 2 number. Some fixes for the other bulbed glyphs.
484 * Documentation/windows/gs-profile.sh:
485 * Documentation/windows/gsview-profile.sh: Remove. Functionality
486 moved to gs/gsview windows packages.
488 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
490 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
491 finding out the duration. Fixes chord tremolo bug.
493 * lily/completion-note-heads-engraver.cc (process_music): Set
494 correct duration for all requests of the broken notes.
496 * input/regression/completion-heads.ly: Added example of
497 Completion_heads_engraver.
499 * lilypond-mode.el: Added "2Midi" command
501 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
503 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
504 edge-width, edge-height and shorten-pair properties for tuplet
507 * lilypond-indent.el: Support for blinking of matching parentheses
509 * lilypond-font-lock.el: Fix fontification of closing > on its own line
511 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
512 cleanups of piano pedal brackets.
514 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
516 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
518 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
520 * mf/feta-new-code.mf: new dynamic f sign.
523 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
525 * mf/feta-new-code.mf: new dynamic p sign.
527 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
529 * lily/note-spacing.cc (stem_dir_correction): only do
530 beam-correction if a beam is there.
532 * lily/stem.cc (duration_log): change from flag_i (); better
534 (get_default_stem_end_position): fix dot/flag collision code.
536 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
538 * VERSION: release 1.5.50
540 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
541 unit spring here. Reduces number of warning messages.
543 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
545 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
547 * scm/generic-property.scm: remove generic-property, property-engraver
549 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
551 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
553 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
555 * scm/*.scm: remove volta, hairpin and tuplet functions.
557 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
558 note column for notes/stems/dots that already have parents. Fixes
559 nested grace contexts.
561 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
563 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
564 get too curved slurs.
566 * scm/slur.scm (default-slur-extremity-offset-alist)
567 (default-phrasing-slur-extremity-offset-alist): Move slur
568 attachments further away from note-head, vertically. Also, leave
569 a horizontal gap between slur and stem end.
571 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
573 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
575 * input/regression/spacing-grace-duration.ly: new file
577 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
578 for shortest durations.
580 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
581 extent of the mm rest.
583 * lily/spacing-spanner.cc (get_duration_space): better spacing for
586 * lily/tuplet-bracket.cc (make_bracket): new function
587 (get_x_offset): new function; make tuplet brackets align on stems
588 if stem has same direction.
589 (parallel_beam): be anal about matching bracket to tuplet.
591 * lily/lookup.cc (line): new function Lookup::line().
593 * scm/tex.scm (dashed-line): change -line to -system in names.
595 * lily/box.cc (add_point): new function.
597 * flower/include/interval.hh: new function add_point ().
600 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
602 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
604 * scm/grob-property-description.scm (number-threshold): Add
607 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
608 rest if #measures > number-threshold. Use padding (well, fake
611 * scm/font.scm (make-style-sheet): New styles: mark-number,
613 (paper20-style-sheet-alist): Add bigger bold fonts.
615 * lily/mark-engraver.cc (process_music): Use style mark-number or
618 * .cvsignore: Ignore all kinds of lilypond input and output.
620 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
622 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
624 * lily/staff-symbol.cc (brew_molecule): make line thickness
627 * lily/*.cc: replace stafflinethickness by linethickness.
629 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
631 * input/regression/beam-concave.ly: Add to-be-considered-concave
634 * lily/beam.cc (check_concave): Add check for large gap between an
635 inner notehead and the line through outer noteheads.
637 * scm/grob-description.scm (Beam): Add concaveness-gap, default
638 value 2.0 staff-space.
640 * scm/grob-property-description.scm (concaveness-gap): Add
643 * input/mozart-hrn3-allegro.ly: Fix typo.
645 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
647 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
648 lily/note-head-engraver: improved implementation of roundfilledbox
649 (according to Han-Wen's request)
651 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
652 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
653 lily/simple-spacer.cc: ragged-right alignment
655 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
657 * input/regression/spacing-note-flags.ly: new file
659 * input/regression/spacing-rest.ly: new file
661 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
663 * lily/spacing-spanner.cc (note_spacing): make note spacing after
664 all grace notes tight (not only the column directly following a
667 * scm/grob-description.scm (all-grob-descriptions): don't make
668 mm-rests larger than normal.
670 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
671 curved. Remove white space at the right of flags.
673 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
675 * ports/ports.make: Bugfix: ignore CVS directories.
677 * stepmake/.cvsignore: New file.
679 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
681 * lily/note-spacing.cc (stem_dir_correction): don't correct when
682 there is a flag on the stem.
684 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
686 * scm/grob-property-description.scm (measure-length):
687 measure-length grob property.
689 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
690 better spacing for breakable columns when they're juxtaposed: use
691 measure length if applicable
693 * lily/timing-engraver.cc (start_translation_timestep): store
694 measure length in breakable column at start of measure.
696 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
698 * ROADMAP: Add description for ports dir, to check email upon
701 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
703 * VERSION: 1.5.48 released
705 * lily/multi-measure-rest.cc (symbol_molecule): split off from
707 (set_spacing_rods): Use symbol_molecule() to determine minimum
709 (church_rest): split off from brew_molecule()
710 (big_rest): split off from brew_molecule(). Construct using
713 * mf/feta-eindelijk.mf: junk multi measure rest.
715 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
717 * lily/multi-measure-rest.cc (add_column): remove columns property.
719 * lily/dynamic-engraver.cc (process_music): add more verbose warning
721 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
724 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
726 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
727 keywords covered, dropped some non-keywords, include R- and 128-notes
729 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
731 * Code clean-up: Junk multiple implementations of ledger line
732 creation in note_head, custos, and porrectus. This is important
733 since there soon will be some more applications of ledger lines to
734 come (e.g. ambitus engraver).
736 * Make thickness of ledger lines adjustable. This is essential
737 for mensural notation.
739 * Fix some bugs in the current ledger_line implementation, most
740 notably that of the horizontal extent of ledger lines which equals
741 at least the extent of the metafont ledger_line character, and
742 which grows(!) if the desired extent shrinks below this limit.
744 * roundfilledbox: variable blotdiameter
746 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
748 * VERSION: 1.5.47 released
750 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
752 * lily/porrectus.cc: change line-thickness to thickness, change
753 stem-direction to direction.
755 * scm/backend-documentation-lib.scm (check-dangling-properties):
756 Automatically detect doc'ed properties that are not in an interface
758 * scm/grob-property-description.scm: property cleanup. Remove many
759 paper-column props that are non-existent.
761 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
762 the grob has a molecule-callback.
764 * lily/*.cc: remove many set_interface() calls, and their
767 * input/regression/spacing-knee.ly: new file
769 * input/regression/spacing-clef-first-note.ly: new file
771 * lily/staff-spacing.cc (get_spacing_params): different spacing
772 for pref matter to note at start of line, halfway during line.
774 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
775 correction only if stems have same direction (i.e. not for
776 stem-clef combination).
777 (stem_dir_correction): maximal correction for knees.
779 * lily/*.cc: many updates to interface descriptions.
781 * lily/grob.cc (internal_set_grob_property): add interface check
782 for every set_grob_property call
784 * lily/*.cc: document interface stuff in C++
786 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
788 * lily/volta-bracket.cc: naming: change volta spanner to
791 * input/bugs/*.ly: cleanup, remove lots of files.
793 * buildscripts/mf-to-table.py (write_ps_encoding): generate
794 .encoding file. WARNING: upgrade to pktrace 1.0.3
796 * mf/feta-toevallig.mf: change PS name for parentheses.
798 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
800 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
803 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
805 * lily/scope.cc: remove file .
807 * lily/include/scope.hh: remove file. Remove Scope class
811 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
812 score_forbidden_quants): ): take out of SCM, pass parameters so
813 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
815 (calc_stem_y): robustness: take care of last_visible_stem == 0.
818 * lily/lily-guile.cc (ly_unit): return internal unit.
820 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
822 * lily/paper-outputter.cc (output_version): output internal unit
825 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
827 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
829 * scripts/ly2dvi.py: clean up old .*pk font caching code.
831 * scm/ps.scm: Use uppercase postscript font names for the standard
834 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
835 Add all available TeX Type1 fonts, including Feta, to the
836 Ghostscript font path.
838 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
839 version (affects the FontName) in lilypond.map.
841 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
842 documentation file to fetaNNlist.ly to avoid name collisions between
843 lilypond generated .tex file and font .tex macros file.
846 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
848 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
849 made mensural longa and (semi-)brevis leaner
851 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
853 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
854 clean-up: moved bezier shape and slope from porrectus to lookup
856 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
857 and /usr/share/texmf/fonts
859 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
861 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
863 * lily/text-spanner.cc (brew_molecule): add #'thickness
864 (brew_molecule): add corrections for thickness in molecule padding.
866 * lily/line-spanner.cc (line_atom): make function private
868 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
869 discover bounding box. This solves the cropping problem.
871 * lily/bar-check-iterator.cc (process): Only resynchronize bar
872 check when it fails. This fixes the combination of grace notes
875 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
877 * lily/repeated-music.cc (minimum_start): new Scheme callable function
878 (first_start): new Scheme callable. This will fix repeated music
879 starting with grace notes.
881 * lily/music.cc (start_mom): check start-moment-function grob property.
883 * VERSION: 1.5.45 released
885 * input/regression/system-extents.ly: new regression test. Test
888 * lily/system.cc: rename LineOfScore into System
890 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
892 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
893 (ly_get_extent): new Scheme function ly-get-extent
895 * ps/lilyponddefs.ps: use output-scale for line-x
898 * scm/ps.scm (font-load-command):
901 2002-03-20 Rune Zedeler <rune@zedeler.dk>
903 * lily/beaming-info.cc: Stupid typo fixed
905 * lily/accidental-engraver.cc: rewrote accidental-routines to get
906 support for cross-context auto-accidentals.
907 Now the engraver can stay in Staff-context and see other contexts
909 Changed properties: autoAccidentals, autoCautionaries
911 * lily/translator-group.cc (set_children_property):
912 Function added recursively setting the same property (deep_copied)
913 for all children of a Translator_group.
915 * ly/property-init.ly: added commands
916 \pianoAccidentals \voiceAccidentals
917 \modernVoiceAccidentals \modernVoiceCautionaries
919 * ly/engraver-init.ly: Correct initialization of new accidentals.
921 * scm/translator-property-description.scm: Updated
923 * input/regression/accidental-voice.ly: Added
925 * Documentation/regression-test.tely: Added new test
927 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
929 * VERSION: 1.5.44 released
931 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
933 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
935 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
938 * tex/feta*.tex: remove.
940 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
941 all software dealing with it.
943 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
945 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
946 (this fixes pdf output). Drop awk dependency.
948 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
949 dimensions (linewidth) are in mm.
951 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
953 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
955 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
957 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
959 * VERSION: 1.5.43 released
961 * scm/beam.scm (beam-dir-majority-median): if majority is
962 undecided, use median. Removes a forced dir in sarabande.
964 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
966 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
968 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
969 widths, heights and shortens are now customisable properties.
971 * scm/grob-description.scm, scm/grob-property-description.scm: New
972 properties added to PianoPedalBracket, unnecessary
973 Y-offset-callbacks removed from *Pedal, undocumented properties
976 * Documentation/user/refman.itely: Piano pedal updates.
978 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
980 * scm/grob-property-description.scm:
981 * scm/interface-description.scm: Remove old stuff.
983 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
984 0.48 (previously 0.42).
985 (Beam): Remove old stuff.
988 * lily/stem-tremolo.cc:
990 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
991 (previously space-function).
993 * stepmake/bin/add-html-footer.py: Website title fix.
995 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
997 * scripts/ly2dvi.py (environment): use new font searching setup.
999 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1001 * lily/tfm.cc (dimensions): make code dimension independent
1003 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1006 * tex/lily-ps-defs.tex: scaling for PS points and MM.
1008 * lily/include/dimensions.hh: try MM as internal unit.
1010 * scm/*.scm: remove invoke-dim1
1012 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1014 * GNUmakefile.in (fontpaths): add fontpaths target,
1016 * make/mutopia-targets.make: add PDF rules.
1018 * make/mutopia-rules.make: add pdf rule.
1020 * buildscripts/mutopia-index.py (list_item): add PDF.
1022 * buildscripts/lilypond-profile.sh (TEXMF): typo.
1024 * make/lilypond-vars.make: set TEXMF for the new font setup.
1026 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1028 * VERSION: 1.5.42 released
1030 * mf/feta-schrift.mf: endless twiddling of Tr.
1032 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1033 endless twiddling with the bulb shape.
1035 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1036 little smaller if there is an accidental.
1038 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1040 * buildscripts/lilypond-profile.sh:
1042 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1043 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1044 Implement new font installation strategy
1046 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1047 the new font installation strategy.
1049 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1052 * input/test/staff-size.ly: Simplified using StaffContainer
1054 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1057 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1059 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1061 * lily/beam.cc (score_stem_lengths): new quanting stuff
1062 (score_forbidden_quants): Second and third beam quant stuff.
1064 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1066 * lily/beam.cc (least_squares): Remember least-squares-dy for
1068 (quantise_interval): Don't quant to dy steeper that
1069 least-squares-dy. Return empty interval if no sane quants found.
1070 (quantise_position): Try quantise_interval until we have
1071 acceptable solution.
1073 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1075 * scm/interface-description.scm (beam-interface): Update.
1077 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1079 * VERSION: 1.5.41 released
1081 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1082 optima serifs on top of t, bottom of r.
1084 * mf/feta-bolletjes.mf: make ledger line rounder.
1086 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1088 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1091 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1093 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1094 well as text pedal indications and a combination of both. All
1095 pedal indications are horizontally aligned on a line spanner.
1097 * lily/text-spanner.cc: Edge-width property added to use in
1098 bracketed piano pedals. Function setup_sustain_pedal added to set
1099 the dimensions of the brackets.
1101 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1102 some of the *Pedal properties tweaked.
1104 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1105 edge-width (TextSpanner) properties.
1107 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1109 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1110 fontified identifiers list.
1112 * input/test/pedal.ly: New pedal features added.
1114 * Documentation/user/refman.itely: New pedal features documented.
1117 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1119 * lily/include/new-beam.hh: Previously new-beam.hh
1120 * lily/beam.cc: Previously new-beam.cc
1121 (least_squares): Bugfix: don't barf on beams with less than two
1122 visible stems (tremolos).
1125 * scm/grob-description.scm (Beam): Junk old beam stuff.
1128 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1132 * mf/feta-eindelijk.mf: new 8th rest.
1134 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1135 stick out of staffline
1137 * scripts/lilypond-book.py: fixes for texi regular expressions.
1139 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1141 * lily/include/new-beam.hh:
1142 * lily/new-beam.cc: New file.
1144 * flower/include/interval.hh:
1145 * flower/include/interval.tcc (delta): New method.
1146 (swap): Now public (previously private).
1148 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1149 1 staff-line-thickness. Sadly, this makes dy quanting problems
1150 (dy quants allowed should depend on actual left y) more visible.
1152 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1154 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1156 * scm/grob-property-description.scm (concaveness-threshold): Add
1157 typecheck and description.
1159 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1160 concaveness-threshold (previously concaveness).
1162 * lily/beam.cc (check_concave): Remove choices and debugging
1163 stuff: use best concaveness calculation.
1164 (quantise_dy): Remove choice. Try to never make a slope steeper
1165 by quantising, but certainly never quantise a slope away.
1166 (check_stem_length_f): Remove choice. In case of lengthening
1167 alowed, always lengthen to ideal length.
1169 * Documentation/index.texi: Fix FAQ url.
1171 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1172 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1174 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1176 * VERSION: 1.5.39 released
1178 * lily/simple-spacer.cc (add_rod): rods take precedence over
1179 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1181 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1183 * lily/note-spacing.cc (get_spacing): only insert space for
1184 accidentals if necessary.
1186 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1188 * lily/spacing-spanner.cc (musical_column_spacing): new
1189 function. Have correct spacing from note to end-of-line as well.
1191 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1193 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1195 * darwin.patch: New file.
1197 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1198 code. Shorten stems by fraction of stems to be shortened.
1200 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1201 of shorten value for boundary cases.
1203 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1204 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1206 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1208 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1210 * scm/grob-description.scm (Beam): Add concaveness. Replace
1211 Beam::cancel_suspect_slope with Beam::check_concave.
1213 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1214 set slope to horizontal if concaveness > Beam.concaveness. This
1215 handles cases that kludgy cancel_suspect_slope was meant to catch
1217 (cancel_suspect_slope): Remove.
1219 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1221 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1222 stemLeftBeamCount and stemRightBeamCount to equal 0.
1225 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1227 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1228 fixed spacing for pref matter, if the next column is musical, and
1231 * lily/note-spacing.cc (stem_dir_correction): Use correct
1232 discretionary for stem-bar spacing.
1234 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1236 * VERSION: 1.5.38 released
1238 * lily/grob.cc (warning): Use cause tracking to give more
1239 meaningful errors from the backend.
1241 * lily/property-iterator.cc (check_grob): Warn if setting grob
1242 property in unknown grob.
1244 * mf/feta-toevallig.mf: brushed stems for natural sign.
1246 * lily/molecule.cc (align_to): don't translate empty molecule.
1247 (this triggers a very subtle bug in time-signature.)
1249 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1251 * lily/spring.cc: remove file.
1253 * input/regression/spacing-stem-bar.ly: new file
1255 * lily/score.cc (run_translator): resurrect point-and-click
1257 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1260 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1261 spacing is now globally determined, using the most common shortest
1262 note. Notes that are shorter are spaced geometrically, and with
1263 expand hints. This makes spacing more even, and measures that have
1264 very short notes won't be that stretched out.
1266 * mf/feta-klef.mf: F-clef fixes, documentation on the
1267 shape. (WARNING: font changed.)
1269 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1271 * lily/simple-spacer.cc (add_columns): support for infinitely
1274 * lily/staff-spacing.cc (get_spacing_params): space after
1275 prefatory matter is fixed.
1277 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1279 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1280 barline following an upstem.
1282 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1283 function from next_notes_correction().
1284 (bar_y_positions): idem.
1286 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1288 * input/regression/break.ly (texidoc): bugfix: escape \ in
1291 * lily/staff-spacing.cc (next_notes_correction): Correct the
1292 spacing of a note following a barline.
1295 2002-03-04 Glen Prideaux
1297 * mf/feta-solfa.mf: Shaped note heads
1299 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1301 * VERSION: 1.5.37 released
1303 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1304 left-align molecule.
1306 * lily/break-align-interface.cc (do_alignment): completely
1307 rewritten. Now it does not use Align_interface anymore, but a
1308 separate routine. Like StaffSpacing, it reads space-alist from the
1309 breakable grobs. This allows you to set spacing using
1311 \property Staff.Clef \override #'space-alist = '(....stuff....)
1313 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1314 to Bar_line. Move files around as well.
1316 * lily/time-signature.cc (time_signature): left align time signatures.
1318 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1319 Corrections of the glyph shape C. Comments added.
1321 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1323 * lily/spacing-spanner.cc: move from third-try.cc; rename
1324 Third_spacing_spanner to Spacing_spanner.
1326 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1327 spacing stuff. Much cleaner now, and we prepare for neat spacing
1328 tricks around bar lines and such.
1330 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1331 variables with themselves. (Ouch.)
1333 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1336 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1340 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1343 * lily/music.cc (ly_get_mus_property): typechecking
1344 (ly_set_mus_property): idem
1345 (ly_make_music): idem
1346 (ly_music_name): idem
1348 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1350 * lily/note-spacing.cc (stem_dir_correction): correction for
1351 same stem notes as well.
1353 * lily/pitch.cc (pitch_transpose): stricter typechecking
1355 * mf/parmesan*mf: magnification fixes.
1357 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1359 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1361 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1362 documenting the font. (Doesn't work for parmesan at the moment)
1364 * Documentation/user/appendices.itely (The Feta font): Add list of
1365 Feta font symbols with names.
1367 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1370 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1372 * lily/translator-group.cc (ly_set_trans_property): typechecking
1373 (ly_get_trans_property): typechecking.
1375 * lily/font-metric.cc (ly_text_dimension): typechecking
1376 (ly_find_glyph_by_name): idem.
1378 * scm/bass-figure.scm (brew-complete-figure): support for
1381 * lily/grob.cc (ly_get_paper_var): new function
1383 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1385 * VERSION (PATCH_LEVEL): 1.5.35 released.
1387 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1388 (bracket): New function.
1390 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1391 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1393 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1396 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1399 * lily/grob.cc (ly_get_grob_property): be anal about types.
1400 (ly_set_grob_property): idem
1402 * lily/figured-bass-engraver.cc (process_music): move molecule
1403 building completely to Scheme
1405 * lily/include/musical-request.hh (class Bass_figure_req): Add
1408 * lily/parser.yy (bass_figure): add support for space figure.
1410 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1412 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1414 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1415 (ly_align_to_x): new function ly-align-to!
1417 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1418 function ly-get-font
1420 * mf/feta-nummer.mf: include normal-space dimension.
1422 * lily/collision.cc (check_meshing_chords): don't merge collisions
1425 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1428 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1430 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1432 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1434 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1437 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1440 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1441 scm/grob-description.scm: added mensural fermata symbol
1443 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1445 * VERSION: 1.5.34 released.
1447 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1449 * lily/staff-symbol-referencer.cc (callback): assume that
1450 staff-position is unset in general.
1452 * input/regression/rest-pitch.ly: new file.
1454 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1457 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1459 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1460 as Scheme option. Run regression test by default with
1461 internal-type-checking.
1463 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1465 * lily/lily-guile.cc (type_check_assignment): changed functions.
1467 * scm/*description*.scm: be anal about typechecks. Some changes
1468 for internal variable names.
1470 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1472 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1474 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1476 * VERSION: 1.5.33 released.
1478 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1479 flare_path everywhere (c-clef, numbers).
1481 * lily/bar-number-engraver.cc (process_music): also print bar
1482 number if measure starts with grace note.
1484 * input/regression/grace-bar-number.ly: new test.
1486 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1488 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1491 * scm/music-functions.scm (voicify-music): split chords into
1492 different voices automatically.
1494 * lily/music.cc (ly_music_list_p): new function
1496 * lily/music-sequence.cc (do_relative_octave): robustification
1498 * scm/music-functions.scm: many utility functions
1500 * lily/music.cc (ly_set_mus_property): add type checks to the
1501 Scheme property assignment.
1503 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1506 * mf/lilypond.map: .map file from Mats' page.
1508 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1510 * Some more parmesan related fixes;
1512 * Custos: varying shape (in particular, stem length), depending on the
1513 vertical position of the custos (on staffline / between stafflines);
1515 * Custos: added grob property "neutral-direction" (same semantics as
1516 with stem); introduced new grob property "neutral-position";
1518 * Time-signature: print a warning when resorting to default layout.
1520 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1522 * lily/translator-group.cc (add_fresh_simple_translator): remove
1523 function; initialize() is called through
1524 Translator_group::initialize().
1526 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1527 for the neighbors of a loose column.
1529 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1530 position loose columns so that they don't collide.
1532 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1534 * VERSION: 1.5.32 released.
1536 * scm/font.scm: remove font-name symbol.
1538 * mf/GNUmakefile: use pktrace for making PFAs
1540 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1542 * lily/rest-collision.cc (do_shift): read direction field from
1543 rest-column in case of note-rest collision. This should fix some
1544 problems with rest collisions.
1546 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1548 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1551 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1552 property. Read pitch directly from #'cause.
1554 * mf/feta-puntje.mf: bugfix
1556 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1558 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1560 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1562 * Documentation/windows/compiling.texi: Update.
1564 * Documentation/index.texi: Add link to orphaned compiling for
1567 * Documentation/footer.html.in: Comment fix.
1569 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1571 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1573 * VERSION: 1.5.31 released
1575 * lily/new-spacing-spanner.cc: remove file.
1577 * lily/third-try.cc (do_measure): only take spacings into account
1578 if they pertain to the column pair under consideration. This fixes
1579 spacing bug when mixing eighths triplets and normal eighths.
1581 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1582 lines don't take up space anymore. Document why in note-head.cc
1585 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1587 * lily/font-interface.cc (get_font): reinstate
1588 #'font-magnification. See input/regression/font-magnification.ly
1589 (get_font): Change the definition of #'font-name grob property.
1591 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1592 that have a #'cause field.
1594 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1596 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1598 * mf/GNUmakefile: remove metapost stuff
1600 * stepmake/aclocal.m4: remove metapost detection stuff.
1602 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1604 * mf/GNUmakefile (FET_FILES):
1605 (FONT_FILES): Include parmesan.
1607 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1610 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1612 * Documentation/user/refman.itely (Paper size): Quote braces.
1614 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1616 * stepmake/aclocal.m4: fixed bison version check to be more
1619 * lily/stem.cc (position_noteheads): fix for cluster chords.
1621 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1623 * python 2.2 support.
1625 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1627 * VERSION: 1.5.30 released
1629 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1631 * Documentation/user/refman.itely (Dynamics): add a note about
1634 * scm/grob-description.scm: add a 'translator-type? object
1635 property, so that \property Foo.Bar =\turnOff doesn't cause
1638 * lily/translator-group.cc (add_fresh_group_translator): make
1639 new add-translator functions to make distinction between fresh and
1640 used group-translators. Fixes problem with scripts on auto-changing voice
1642 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1643 add to Score_performer. Fixes bar checks in MIDI
1645 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1646 heads. Fixes many quirks with ties.
1648 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1649 in the grob property #'cause, instead of using Grob_info.
1651 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1652 staff context, fixing dot alignment on collisions.
1654 * lily/beam-engraver.cc (try_music): remove can't find beam start
1655 warning, so that skipTypesetting won't complain.
1657 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1659 * Documentation/user/refman.itely (Paper size): Documentation fix,
1662 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1664 * scm/grob-description.scm: \breathe: Use feta font comma by default
1666 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1668 * input/template/piano-dynamics.ly (pedal): Simplified
1670 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1672 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1674 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1676 * lilypond-mode.el (LilyPond-command-query): ignore case.
1678 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1680 * VERSION: 1.5.29 released
1682 * all files: change 2001 to 2002 in headers globally
1684 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1685 cheese") font. WARNING: fonts changed.
1687 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1689 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1691 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1693 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1695 * mf/*.mf: Fixed a few typos in various .mf files
1697 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1699 * mf/: added macro soft_penstroke
1701 softened some glyphs
1702 redrawn triangular noteheads
1704 added classical quarter rest
1706 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1708 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1709 lines and staff_space>=2
1711 * lily/rest.cc: Use default rests when current style glyphs not
1713 \property Staff.Rest \override #'style = #'classical
1715 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1717 * input/bugs/first-tie.ly: New file.
1719 * input/bugs/spacing-clash.ly: New file.
1721 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1725 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1727 * lilypond-indent.el: New file providing indentation for
1728 parenthesised blocks of lilypond code in Emacs
1730 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1731 indentation and handle block comments properly. Distinguish
1732 accents from close-brackets in fontification.
1734 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1736 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1738 * Documentation/windows/installing.texi:
1739 * Documentation/windows/compiling.texi: Include from 1.4.10.
1741 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1743 * input/bugs/first-midi-tie.ly: New file.
1745 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1747 * VERSION: 1.5.28 released
1749 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1750 illicit beams on [c4 c4] etc.
1752 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1753 file. Make separate iterator for Bar_checks. Bar_check now happen
1754 outside engravers, meaning that you can use them with
1755 skipTypesetting. Associated changes in other files.
1757 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1760 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1762 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1764 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1766 * lily/stem.cc (set_spacing_hints): removed function
1768 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1769 correction for spacing; now take vertical extents of the stem into
1772 * lily/third-try.cc: More hacking to get spacing working.
1774 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1775 sits at staff level and creates note spacing objects. Scrap it
1776 again, and document why.
1778 * lily/include/group-interface.hh: rename functions.
1780 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1782 * stepmake/stepmake/c++-rules.make:
1783 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1785 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1787 * make/lilypond-vars.make:
1788 * scripts/ly2dvi.py (setup_environment):
1789 * scripts/lilypond-book.py (setup_environment): Also set tex
1792 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1794 * VERSION: 1.5.27 released.
1796 * Documentation/user/refman.itely (Bar numbers): added bar number
1799 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1802 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1804 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1805 spread the last few lines all over the last page of a score.
1807 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1809 * lily/third-try.cc: 3rd try at revising spacing
1810 engine. Not yet finished.
1812 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1815 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1816 collecting past note heads.
1818 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1821 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1822 class. Keep a queue of grobs that are still playing in busyGrobs.
1824 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1825 function. Use busyGrobs to detect playing notes.
1827 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1829 * Documentation/topdocs/INSTALL.texi: Added note about broken
1830 python-2.1. Updated note for Debian's broken (well, broken for
1831 our use anyway) tex configuration.
1833 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1835 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1836 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1838 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1839 (But left margin of png's still misses a few pixels. Arg.)
1841 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1843 * lilypond-mode.el (LilyPond-command-next-midi): Make
1844 possible to kill midi-process (using "C-c C-m").
1846 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1848 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1849 Convert strings with dimensions to numbers.
1851 * lily/volta-engraver.cc: only make a bracket for the top staff,
1852 as found in stavesFound.
1854 * lily/bar-number-engraver.cc: remove staff administration.
1856 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1857 administration. This breaks support for invisible-staff.
1859 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1860 symbols into stavesFound.
1862 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1863 grobs, and put them into columns.
1865 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1866 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1868 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1870 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1871 midi section in the Emacs-mode, so it is possible to play certain
1872 score in a multiscore lilypond-file.
1874 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1875 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1876 (FIXME: not accessible from guile)
1878 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1879 better support for Kurt Stone's suggestions.
1880 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1882 Changed property: localKeySignature.
1883 Added properties: extraNatural, autoAccidentals,
1886 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1888 * ly/property-init.ly: added commands
1889 \defaultAccidentals \modernAccidentals \modernCautionaries
1890 \noResetKey \forgetAccidentals
1892 * ly/engraver-init.ly: Correct initialization of new accidentals.
1894 * scm/translator-property-description.scm: The new properties
1897 * input/: Some examples added, some changed.
1899 * Documentation/regression-test.tely: Added quick test of new
1902 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1904 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1907 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1909 * lily/beam.cc (before_line_breaking): Make beams without stems
1910 or with only one stem disappear.
1912 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1914 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1915 files to have standardised HTML bibliography output. Update build
1916 docs to reflect this.
1918 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1919 active_count_, so that we don't have to look for active springs
1922 * scm/interface-description.scm,scm/grob-property-description.scm:
1925 * lily/simple-spacer.cc (solve): Handle forced line breaks
1926 here. Fixes problems when combining linebreaks with non-fitting
1929 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1931 * 1.4.9.jcn3 forward ports.
1933 * Really included .cvsignore.
1935 * Included Han-Wen's uu1 windows fixes.
1937 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1939 * Added Cygwin setup.hint
1941 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1942 tetex/texmf, python installations.
1944 * Updated cygwin installer.
1946 * ly2dvi: Don't accept filenames with spaces (+ fix).
1948 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1950 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1952 * lily/translator-def.cc: Remove manual symbol caching.
1954 * lily/script-column.cc (before_line_breaking): robustness check:
1955 don't crash if no direction set.
1957 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1959 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1963 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1965 * lily/note-head.cc (head_extent): added to compute width without
1966 ledger lines. By default, ledger lines take up width now.
1968 * input/regression/fingering.ly: demonstrate auto fingering.
1969 Horizontal placement is still buggy.
1971 * lily/fingering-engraver.cc (class Fingering_engraver):
1972 added. Provides support for horizontal fingering scripts
1974 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1976 * lily/side-position-interface.cc (add_staff_support): add staff
1977 only for Y-axis side positions.
1979 * lily/parser.yy (request_chord): Fix mem leak.
1981 * lily/musical-request.cc (transpose): moved to Music::transpose()
1983 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1984 can store grobs as grob-creation cause as well.
1986 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1987 handle when adding. Use precomputed symbols throughout lily.
1989 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1990 track of spacing issues.
1992 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1993 to keep track of staff spacing
1995 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1997 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1998 code clean from conditionals and have a concentrated sets of
1999 compatibility fixes for old guile versions.
2001 * Fixes for guile 1.4, including embedded ps.
2003 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
2005 * lily/stanza-number-engraver.cc (process_music): allow pairs as
2006 well for markup texts.
2008 * lily/musical-request.cc (length_mom): kludge for null pointer.
2010 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2012 * scm/lily.scm (sign): bugfix
2014 * CHANGES: Change log instated.
2016 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.