1 2002-05-17 Jan Nieuwenhuizen <janneke@gnu.org>
3 * lily/include/midi-item.hh: Remove stray i.
5 * Documentation/windows/GNUmakefile: Avoid collapsed directory
8 * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
9 constructs '//' from arguments.
11 2002-05-17 Han-Wen <hanwen@cs.uu.nl>
13 * scm/music-functions.scm (check-start-chords): function to check
14 for chords without \context. Apply automatically from parser.
16 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
18 * lily/bar-line.cc: remove index entries. Texinfo can't handle :
21 * scm/output-lib.scm: fix ez notation stems.
23 * lily/paper-outputter.cc: various fixes to speed up compilation.
25 2002-05-16 Mats Bengtsson <mats.bengtsson@s3.kth.se>
27 * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
29 2002-05-16 Jan Nieuwenhuizen <janneke@gnu.org>
31 * scripts/lilypond-book.py (determine_format): Bugfix: correctly
32 determine latex input.
34 * stepmake/bin/install-sh: Include latest from libtool.
37 * configure: Regenerate.
39 * config.make.in: Remove dead variables. Add OPTIONAL/REQUIRED lists.
40 (USER_CFLAGS): Bugfix, include CPPFLAGS.
42 * configure.in: Use new OPTIONAL/REQUIRED mechanism.
44 * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
45 REQUIRED programs and version. Try to continue configuring, list
46 missing programs at the end, but don't generate a GNUmakefile if
47 REQUIRED programs are missing. Cleanups, junk obsolete stuff.
48 Fix Cygwin detection, drop '32' suffix. Hoping this is not too
49 fancy for some older systems.
51 2002-05-16 Han-Wen <hanwen@cs.uu.nl>
53 * lily/score-engraver.cc (typeset_all): sanity check for items
54 that are Y parent to spanner.
56 * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
59 2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
61 * lily/*.cc: remove as many iostream use as possible.
63 * flower/ : remove text-db, text-stream, data-file.
65 2002-05-15 Han-Wen <hanwen@cs.uu.nl>
67 * scripts/lilypond-book.py: add --no-music option: strip all blocks.
68 (completize_preamble): don't barf if no preamble present.
69 (do_file): allow extensions on --output
71 * scripts/ly2dvi.py (make_preview): make automatic preview of
72 first system. Small cleanups.
74 2002-05-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
76 * scripts/lilypond-book.py (make_pixmap): output png directly.
78 * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
81 * lily/parser.yy (My_lily_parser): comment out code. (Causes
82 problems with recent bison releases).
84 * make/lilypond.redhat.spec.in: add pfa fonts to X.
86 2002-05-07 Heikki Junes <hjunes@cc.hut.fi>
88 * lilypond-font-lock.el: Fixes the order of the note name list.
90 2002-05-06 Jan Nieuwenhuizen <janneke@gnu.org>
92 * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
93 capability, --verbose option, rlimit hack.
95 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
97 * lily/piano-pedal-engraver.cc: cleanups.
99 * lily/accidental.cc (after_line_breaking): add break tie
102 * lily/text-engraver.cc (try_music): don't typeset fingerings
104 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
106 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
108 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
110 * lily/*.cc: change gh_str02scm() to ly_str02scm().
112 * lily/spacing-spanner.cc (note_spacing): Bound
113 shortest-playing-length by the distance to next note. This should
114 fix chord tremolo spacing.
116 * VERSION: 1.5.55 released
118 * lily/stem.cc (off_callback): invisible stem over whole note is
119 centered on note now.
121 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
122 stem-tremolo is stem now.
124 * input/mozart-hrn*.ly: many corrections.
126 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
127 support for dynamic scripts.
129 * lily/accidental-placement.cc (position_accidentals): check for
130 collisions as well: should avoid those heads too.
132 * lily/beam.cc (check_concave): allow undefined gap and
133 threshold. Change the meaning of threshold/gap == 0.0.
134 (check_concave): skip Stolba concaveness check if we have a knee
137 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
139 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
140 tremolos of dotted duration.
142 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
144 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
145 downstroke again. Sigh.
147 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
150 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
152 * lily/slur.cc (add_column): allow slur over rest.
154 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
156 * lily/beam.cc: move scoring constants out of code
158 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
160 * mf/feta-nummer.mf: scalability fixes.
162 * mf/feta-nummer-code.mf: fixes for 5, 8.
164 * mf/feta-klef.mf: G clef fixes.
166 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
168 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
170 * scripts/lilypond-book.py: %Newline, rather than glue macros
171 after \end{verbatim}.
173 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
175 * Documentation/user/lilypond-book.itely:
176 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
179 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
181 * scm/grob-property-description.scm (beam-space): Junk.
183 * lily/beam.cc (space_function): New method.
184 (get_interbeam): Call space-function.
186 * scm/grob-description.scm (Beam): Initialize space-function with
187 Beam::space_function.
189 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
190 Beam.space-function. Don't quantise grace beams.
192 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
194 * VERSION: 1.5.54 released
196 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
199 * Documentation/index.texi: add PDF links.
201 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
203 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
204 compare #'glyph as strings.
206 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
208 * scripts/ly2dvi.py (setup_environment): fix by Mats.
210 * lily/stem.cc (head_count): Change function name. Change property
211 to #'note-heads i.s.o. #'heads.
212 (position_noteheads): Kern noteheads for invisible stems.
213 (before_line_breaking): Do position_noteheads() for whole note
216 * lily/accidental-placement.cc (position_accidentals): First
217 determine refpoints, only then determine extents.
219 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
221 * lily/accidental-placement.cc (position_accidentals): use all
222 note heads for note head-skyline.
224 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
226 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
228 * Documentation/windows/setup.hint (requires): Add gsview dependency.
230 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
232 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
234 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
236 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
238 * mf/feta-schrift.mf: lighter staccato.
240 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
242 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
244 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
246 * VERSION: 1.5.53 released
248 * scm/lily.scm (ly-load): use primitive-load for loading.
250 * lily/misc.cc: remove quantise_iv()
252 * lily/*.cc: pass read-only arrays by reference.
254 * lily/grob.cc (common_refpoint_of_array): new function. Try to
255 use common_refpoint_of_{array, list} when possible.
257 * lily/include/accidental-placement.hh: new file.
259 * lily/accidental-placement.cc (alignment_callback): position
260 accidentals in a better way.
262 * lily/skyline.cc: new file. Compute distances for collections of
265 * lily/include/skyline.hh: new file
267 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
269 * lily/accidental.cc (class Accidental_interface): grob for a
272 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
275 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
276 together with new accidental-interface.
278 * lily/include/*.hh: remove spurious set_interface() decls.
280 * lily/key-signature-interface.cc (brew_molecule): add padding for
281 natural signs. Make natural typesetting like the sharp.
284 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
285 is now slightly curved, not straight.
288 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
290 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
292 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
293 more strictly. Use more clever regular expressions. Commented regexps.
295 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
297 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
299 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
301 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
302 to control width of staff symbol in ragged-right mode (by request
305 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
306 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
307 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
308 added support for ligature brackets (needed when transcribing
311 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
313 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
314 Fontify notes more strictly.
316 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
318 * mf/feta-din-code.mf: dynamic z sign.
320 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
322 * lilypond-mode.el: Prevent recoloring strings and comments.
324 * lilypond-font-lock.el: Handle block comments: block comments
325 can have also ordinary comments inside.
327 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
329 * lily/stem.cc (get_default_dir): set direction to CENTER if
330 invisible. Various other fixes to deal with invisible stems and
331 stem-direction == CENTER.
333 * lily/rest-collision.cc (do_shift): take direction from note if
336 * input/regression/tie-grace.ly: new file.
338 * lily/tie-engraver.cc (create_grobs): fix tied graces.
340 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
341 knee correction. Fixes tight spacing for knees.
343 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
345 * VERSION: 1.5.52 released
347 * lily/*.cc: add some undocced properties.
348 scm/grob-description.scm: idem.
350 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
352 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
353 multi-measure rests like "R1 *4" and scheme (typically has '#'
354 in the beginning). Small fixes. Add few reserved words.
356 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
358 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
361 * Documentation/windows/installing.texi: Suggest gswin32c (console
362 program) for getting the version. Layout fixes.
364 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
366 * Documentation/user/tutorial.itely (Running LilyPond): Separate
367 windows viewing commands, remove silly comment about Yap.
369 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
371 * Documentation/topdocs/INSTALL.texi: Describe how to learn
372 configure to find kpathsea on for example Slackware 8.0.
374 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
376 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
377 by default: avoid "1" over single bar rests.
379 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
380 and correct the handling of geometry options.
382 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
384 * lily/include/grob-interface.hh (ADD_INTERFACE): make
385 implementation for Class::has_interface automatically. Junk all
386 other implementations.
388 * lily/grob.cc (internal_get_grob_property): also typecheck
389 property reads. Catches even more undocced properties. Bugfixing
390 left for the uninspired masses.
392 * lily/beam.cc: remove end_after_line_breaking().
394 * lily/grob.cc (calculate_dependencies): remove list support for
397 * lily/font-size-engraver.cc: only do font-interface.
399 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
401 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
404 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
406 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
407 brackets using arpeggio requests.
409 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
410 molecule-callback to use for drawing the brackets.
412 * Documentation/user/refman.itely:
413 * input/test/chord-bracket.ly: Chord brackets documented
415 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
417 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
419 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
421 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
423 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
424 direction tuplets on beams.
426 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
428 * lilypond-indent.el: Bugfix of indentation of final point in buffer
430 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
432 * lilypond-mode.el: new command: LilyPond-un-comment-region.
433 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
434 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
435 submenu to "LilyPond"-menu.
437 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
438 an interface to play midi.
440 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
442 * input/regression/script-stack-order.ly: new file.
444 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
446 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
448 * mf/feta-din-code.mf: kerning for dynamics.
450 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
452 * input/regression/dynamics-glyphs.ly: new file
454 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
456 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
457 forte f for the 2 number. Some fixes for the other bulbed glyphs.
459 * Documentation/windows/gs-profile.sh:
460 * Documentation/windows/gsview-profile.sh: Remove. Functionality
461 moved to gs/gsview windows packages.
463 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
465 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
466 finding out the duration. Fixes chord tremolo bug.
468 * lily/completion-note-heads-engraver.cc (process_music): Set
469 correct duration for all requests of the broken notes.
471 * input/regression/completion-heads.ly: Added example of
472 Completion_heads_engraver.
474 * lilypond-mode.el: Added "2Midi" command
476 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
478 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
479 edge-width, edge-height and shorten-pair properties for tuplet
482 * lilypond-indent.el: Support for blinking of matching parentheses
484 * lilypond-font-lock.el: Fix fontification of closing > on its own line
486 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
487 cleanups of piano pedal brackets.
489 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
491 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
493 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
495 * mf/feta-new-code.mf: new dynamic f sign.
498 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
500 * mf/feta-new-code.mf: new dynamic p sign.
502 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
504 * lily/note-spacing.cc (stem_dir_correction): only do
505 beam-correction if a beam is there.
507 * lily/stem.cc (duration_log): change from flag_i (); better
509 (get_default_stem_end_position): fix dot/flag collision code.
511 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
513 * VERSION: release 1.5.50
515 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
516 unit spring here. Reduces number of warning messages.
518 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
520 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
522 * scm/generic-property.scm: remove generic-property, property-engraver
524 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
526 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
528 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
530 * scm/*.scm: remove volta, hairpin and tuplet functions.
532 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
533 note column for notes/stems/dots that already have parents. Fixes
534 nested grace contexts.
536 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
538 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
539 get too curved slurs.
541 * scm/slur.scm (default-slur-extremity-offset-alist)
542 (default-phrasing-slur-extremity-offset-alist): Move slur
543 attachments further away from note-head, vertically. Also, leave
544 a horizontal gap between slur and stem end.
546 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
548 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
550 * input/regression/spacing-grace-duration.ly: new file
552 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
553 for shortest durations.
555 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
556 extent of the mm rest.
558 * lily/spacing-spanner.cc (get_duration_space): better spacing for
561 * lily/tuplet-bracket.cc (make_bracket): new function
562 (get_x_offset): new function; make tuplet brackets align on stems
563 if stem has same direction.
564 (parallel_beam): be anal about matching bracket to tuplet.
566 * lily/lookup.cc (line): new function Lookup::line().
568 * scm/tex.scm (dashed-line): change -line to -system in names.
570 * lily/box.cc (add_point): new function.
572 * flower/include/interval.hh: new function add_point ().
575 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
577 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
579 * scm/grob-property-description.scm (number-threshold): Add
582 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
583 rest if #measures > number-threshold. Use padding (well, fake
586 * scm/font.scm (make-style-sheet): New styles: mark-number,
588 (paper20-style-sheet-alist): Add bigger bold fonts.
590 * lily/mark-engraver.cc (process_music): Use style mark-number or
593 * .cvsignore: Ignore all kinds of lilypond input and output.
595 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
597 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
599 * lily/staff-symbol.cc (brew_molecule): make line thickness
602 * lily/*.cc: replace stafflinethickness by linethickness.
604 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
606 * input/regression/beam-concave.ly: Add to-be-considered-concave
609 * lily/beam.cc (check_concave): Add check for large gap between an
610 inner notehead and the line through outer noteheads.
612 * scm/grob-description.scm (Beam): Add concaveness-gap, default
613 value 2.0 staff-space.
615 * scm/grob-property-description.scm (concaveness-gap): Add
618 * input/mozart-hrn3-allegro.ly: Fix typo.
620 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
622 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
623 lily/note-head-engraver: improved implementation of roundfilledbox
624 (according to Han-Wen's request)
626 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
627 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
628 lily/simple-spacer.cc: ragged-right alignment
630 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
632 * input/regression/spacing-note-flags.ly: new file
634 * input/regression/spacing-rest.ly: new file
636 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
638 * lily/spacing-spanner.cc (note_spacing): make note spacing after
639 all grace notes tight (not only the column directly following a
642 * scm/grob-description.scm (all-grob-descriptions): don't make
643 mm-rests larger than normal.
645 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
646 curved. Remove white space at the right of flags.
648 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
650 * ports/ports.make: Bugfix: ignore CVS directories.
652 * stepmake/.cvsignore: New file.
654 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
656 * lily/note-spacing.cc (stem_dir_correction): don't correct when
657 there is a flag on the stem.
659 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
661 * scm/grob-property-description.scm (measure-length):
662 measure-length grob property.
664 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
665 better spacing for breakable columns when they're juxtaposed: use
666 measure length if applicable
668 * lily/timing-engraver.cc (start_translation_timestep): store
669 measure length in breakable column at start of measure.
671 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
673 * ROADMAP: Add description for ports dir, to check email upon
676 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
678 * VERSION: 1.5.48 released
680 * lily/multi-measure-rest.cc (symbol_molecule): split off from
682 (set_spacing_rods): Use symbol_molecule() to determine minimum
684 (church_rest): split off from brew_molecule()
685 (big_rest): split off from brew_molecule(). Construct using
688 * mf/feta-eindelijk.mf: junk multi measure rest.
690 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
692 * lily/multi-measure-rest.cc (add_column): remove columns property.
694 * lily/dynamic-engraver.cc (process_music): add more verbose warning
696 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
699 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
701 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
702 keywords covered, dropped some non-keywords, include R- and 128-notes
704 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
706 * Code clean-up: Junk multiple implementations of ledger line
707 creation in note_head, custos, and porrectus. This is important
708 since there soon will be some more applications of ledger lines to
709 come (e.g. ambitus engraver).
711 * Make thickness of ledger lines adjustable. This is essential
712 for mensural notation.
714 * Fix some bugs in the current ledger_line implementation, most
715 notably that of the horizontal extent of ledger lines which equals
716 at least the extent of the metafont ledger_line character, and
717 which grows(!) if the desired extent shrinks below this limit.
719 * roundfilledbox: variable blotdiameter
721 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
723 * VERSION: 1.5.47 released
725 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
727 * lily/porrectus.cc: change line-thickness to thickness, change
728 stem-direction to direction.
730 * scm/backend-documentation-lib.scm (check-dangling-properties):
731 Automatically detect doc'ed properties that are not in an interface
733 * scm/grob-property-description.scm: property cleanup. Remove many
734 paper-column props that are non-existent.
736 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
737 the grob has a molecule-callback.
739 * lily/*.cc: remove many set_interface() calls, and their
742 * input/regression/spacing-knee.ly: new file
744 * input/regression/spacing-clef-first-note.ly: new file
746 * lily/staff-spacing.cc (get_spacing_params): different spacing
747 for pref matter to note at start of line, halfway during line.
749 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
750 correction only if stems have same direction (i.e. not for
751 stem-clef combination).
752 (stem_dir_correction): maximal correction for knees.
754 * lily/*.cc: many updates to interface descriptions.
756 * lily/grob.cc (internal_set_grob_property): add interface check
757 for every set_grob_property call
759 * lily/*.cc: document interface stuff in C++
761 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
763 * lily/volta-bracket.cc: naming: change volta spanner to
766 * input/bugs/*.ly: cleanup, remove lots of files.
768 * buildscripts/mf-to-table.py (write_ps_encoding): generate
769 .encoding file. WARNING: upgrade to pktrace 1.0.3
771 * mf/feta-toevallig.mf: change PS name for parentheses.
773 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
775 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
778 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
780 * lily/scope.cc: remove file .
782 * lily/include/scope.hh: remove file. Remove Scope class
786 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
787 score_forbidden_quants): ): take out of SCM, pass parameters so
788 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
790 (calc_stem_y): robustness: take care of last_visible_stem == 0.
793 * lily/lily-guile.cc (ly_unit): return internal unit.
795 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
797 * lily/paper-outputter.cc (output_version): output internal unit
800 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
802 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
804 * scripts/ly2dvi.py: clean up old .*pk font caching code.
806 * scm/ps.scm: Use uppercase postscript font names for the standard
809 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
810 Add all available TeX Type1 fonts, including Feta, to the
811 Ghostscript font path.
813 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
814 version (affects the FontName) in lilypond.map.
816 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
817 documentation file to fetaNNlist.ly to avoid name collisions between
818 lilypond generated .tex file and font .tex macros file.
821 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
823 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
824 made mensural longa and (semi-)brevis leaner
826 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
828 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
829 clean-up: moved bezier shape and slope from porrectus to lookup
831 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
832 and /usr/share/texmf/fonts
834 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
836 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
838 * lily/text-spanner.cc (brew_molecule): add #'thickness
839 (brew_molecule): add corrections for thickness in molecule padding.
841 * lily/line-spanner.cc (line_atom): make function private
843 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
844 discover bounding box. This solves the cropping problem.
846 * lily/bar-check-iterator.cc (process): Only resynchronize bar
847 check when it fails. This fixes the combination of grace notes
850 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
852 * lily/repeated-music.cc (minimum_start): new Scheme callable function
853 (first_start): new Scheme callable. This will fix repeated music
854 starting with grace notes.
856 * lily/music.cc (start_mom): check start-moment-function grob property.
858 * VERSION: 1.5.45 released
860 * input/regression/system-extents.ly: new regression test. Test
863 * lily/system.cc: rename LineOfScore into System
865 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
867 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
868 (ly_get_extent): new Scheme function ly-get-extent
870 * ps/lilyponddefs.ps: use output-scale for line-x
873 * scm/ps.scm (font-load-command):
876 2002-03-20 Rune Zedeler <rune@zedeler.dk>
878 * lily/beaming-info.cc: Stupid typo fixed
880 * lily/accidental-engraver.cc: rewrote accidental-routines to get
881 support for cross-context auto-accidentals.
882 Now the engraver can stay in Staff-context and see other contexts
884 Changed properties: autoAccidentals, autoCautionaries
886 * lily/translator-group.cc (set_children_property):
887 Function added recursively setting the same property (deep_copied)
888 for all children of a Translator_group.
890 * ly/property-init.ly: added commands
891 \pianoAccidentals \voiceAccidentals
892 \modernVoiceAccidentals \modernVoiceCautionaries
894 * ly/engraver-init.ly: Correct initialization of new accidentals.
896 * scm/translator-property-description.scm: Updated
898 * input/regression/accidental-voice.ly: Added
900 * Documentation/regression-test.tely: Added new test
902 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
904 * VERSION: 1.5.44 released
906 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
908 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
910 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
913 * tex/feta*.tex: remove.
915 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
916 all software dealing with it.
918 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
920 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
921 (this fixes pdf output). Drop awk dependency.
923 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
924 dimensions (linewidth) are in mm.
926 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
928 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
930 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
932 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
934 * VERSION: 1.5.43 released
936 * scm/beam.scm (beam-dir-majority-median): if majority is
937 undecided, use median. Removes a forced dir in sarabande.
939 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
941 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
943 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
944 widths, heights and shortens are now customisable properties.
946 * scm/grob-description.scm, scm/grob-property-description.scm: New
947 properties added to PianoPedalBracket, unnecessary
948 Y-offset-callbacks removed from *Pedal, undocumented properties
951 * Documentation/user/refman.itely: Piano pedal updates.
953 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
955 * scm/grob-property-description.scm:
956 * scm/interface-description.scm: Remove old stuff.
958 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
959 0.48 (previously 0.42).
960 (Beam): Remove old stuff.
963 * lily/stem-tremolo.cc:
965 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
966 (previously space-function).
968 * stepmake/bin/add-html-footer.py: Website title fix.
970 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
972 * scripts/ly2dvi.py (environment): use new font searching setup.
974 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
976 * lily/tfm.cc (dimensions): make code dimension independent
978 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
981 * tex/lily-ps-defs.tex: scaling for PS points and MM.
983 * lily/include/dimensions.hh: try MM as internal unit.
985 * scm/*.scm: remove invoke-dim1
987 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
989 * GNUmakefile.in (fontpaths): add fontpaths target,
991 * make/mutopia-targets.make: add PDF rules.
993 * make/mutopia-rules.make: add pdf rule.
995 * buildscripts/mutopia-index.py (list_item): add PDF.
997 * buildscripts/lilypond-profile.sh (TEXMF): typo.
999 * make/lilypond-vars.make: set TEXMF for the new font setup.
1001 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
1003 * VERSION: 1.5.42 released
1005 * mf/feta-schrift.mf: endless twiddling of Tr.
1007 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1008 endless twiddling with the bulb shape.
1010 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1011 little smaller if there is an accidental.
1013 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1015 * buildscripts/lilypond-profile.sh:
1017 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1018 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1019 Implement new font installation strategy
1021 * Documentation/misc/fontinstallation (TEXMF): Documentation of
1022 the new font installation strategy.
1024 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1027 * input/test/staff-size.ly: Simplified using StaffContainer
1029 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1032 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
1034 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1036 * lily/beam.cc (score_stem_lengths): new quanting stuff
1037 (score_forbidden_quants): Second and third beam quant stuff.
1039 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
1041 * lily/beam.cc (least_squares): Remember least-squares-dy for
1043 (quantise_interval): Don't quant to dy steeper that
1044 least-squares-dy. Return empty interval if no sane quants found.
1045 (quantise_position): Try quantise_interval until we have
1046 acceptable solution.
1048 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1050 * scm/interface-description.scm (beam-interface): Update.
1052 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1054 * VERSION: 1.5.41 released
1056 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
1057 optima serifs on top of t, bottom of r.
1059 * mf/feta-bolletjes.mf: make ledger line rounder.
1061 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1063 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1066 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1068 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1069 well as text pedal indications and a combination of both. All
1070 pedal indications are horizontally aligned on a line spanner.
1072 * lily/text-spanner.cc: Edge-width property added to use in
1073 bracketed piano pedals. Function setup_sustain_pedal added to set
1074 the dimensions of the brackets.
1076 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
1077 some of the *Pedal properties tweaked.
1079 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1080 edge-width (TextSpanner) properties.
1082 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
1084 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1085 fontified identifiers list.
1087 * input/test/pedal.ly: New pedal features added.
1089 * Documentation/user/refman.itely: New pedal features documented.
1092 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
1094 * lily/include/new-beam.hh: Previously new-beam.hh
1095 * lily/beam.cc: Previously new-beam.cc
1096 (least_squares): Bugfix: don't barf on beams with less than two
1097 visible stems (tremolos).
1100 * scm/grob-description.scm (Beam): Junk old beam stuff.
1103 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1107 * mf/feta-eindelijk.mf: new 8th rest.
1109 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1110 stick out of staffline
1112 * scripts/lilypond-book.py: fixes for texi regular expressions.
1114 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1116 * lily/include/new-beam.hh:
1117 * lily/new-beam.cc: New file.
1119 * flower/include/interval.hh:
1120 * flower/include/interval.tcc (delta): New method.
1121 (swap): Now public (previously private).
1123 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1124 1 staff-line-thickness. Sadly, this makes dy quanting problems
1125 (dy quants allowed should depend on actual left y) more visible.
1127 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1129 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1131 * scm/grob-property-description.scm (concaveness-threshold): Add
1132 typecheck and description.
1134 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1135 concaveness-threshold (previously concaveness).
1137 * lily/beam.cc (check_concave): Remove choices and debugging
1138 stuff: use best concaveness calculation.
1139 (quantise_dy): Remove choice. Try to never make a slope steeper
1140 by quantising, but certainly never quantise a slope away.
1141 (check_stem_length_f): Remove choice. In case of lengthening
1142 alowed, always lengthen to ideal length.
1144 * Documentation/index.texi: Fix FAQ url.
1146 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1147 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1149 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1151 * VERSION: 1.5.39 released
1153 * lily/simple-spacer.cc (add_rod): rods take precedence over
1154 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1156 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1158 * lily/note-spacing.cc (get_spacing): only insert space for
1159 accidentals if necessary.
1161 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1163 * lily/spacing-spanner.cc (musical_column_spacing): new
1164 function. Have correct spacing from note to end-of-line as well.
1166 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1168 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1170 * darwin.patch: New file.
1172 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1173 code. Shorten stems by fraction of stems to be shortened.
1175 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1176 of shorten value for boundary cases.
1178 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1179 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1181 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1183 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1185 * scm/grob-description.scm (Beam): Add concaveness. Replace
1186 Beam::cancel_suspect_slope with Beam::check_concave.
1188 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1189 set slope to horizontal if concaveness > Beam.concaveness. This
1190 handles cases that kludgy cancel_suspect_slope was meant to catch
1192 (cancel_suspect_slope): Remove.
1194 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1196 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1197 stemLeftBeamCount and stemRightBeamCount to equal 0.
1200 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1202 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1203 fixed spacing for pref matter, if the next column is musical, and
1206 * lily/note-spacing.cc (stem_dir_correction): Use correct
1207 discretionary for stem-bar spacing.
1209 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1211 * VERSION: 1.5.38 released
1213 * lily/grob.cc (warning): Use cause tracking to give more
1214 meaningful errors from the backend.
1216 * lily/property-iterator.cc (check_grob): Warn if setting grob
1217 property in unknown grob.
1219 * mf/feta-toevallig.mf: brushed stems for natural sign.
1221 * lily/molecule.cc (align_to): don't translate empty molecule.
1222 (this triggers a very subtle bug in time-signature.)
1224 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1226 * lily/spring.cc: remove file.
1228 * input/regression/spacing-stem-bar.ly: new file
1230 * lily/score.cc (run_translator): resurrect point-and-click
1232 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1235 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1236 spacing is now globally determined, using the most common shortest
1237 note. Notes that are shorter are spaced geometrically, and with
1238 expand hints. This makes spacing more even, and measures that have
1239 very short notes won't be that stretched out.
1241 * mf/feta-klef.mf: F-clef fixes, documentation on the
1242 shape. (WARNING: font changed.)
1244 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1246 * lily/simple-spacer.cc (add_columns): support for infinitely
1249 * lily/staff-spacing.cc (get_spacing_params): space after
1250 prefatory matter is fixed.
1252 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1254 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1255 barline following an upstem.
1257 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1258 function from next_notes_correction().
1259 (bar_y_positions): idem.
1261 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1263 * input/regression/break.ly (texidoc): bugfix: escape \ in
1266 * lily/staff-spacing.cc (next_notes_correction): Correct the
1267 spacing of a note following a barline.
1270 2002-03-04 Glen Prideaux
1272 * mf/feta-solfa.mf: Shaped note heads
1274 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1276 * VERSION: 1.5.37 released
1278 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1279 left-align molecule.
1281 * lily/break-align-interface.cc (do_alignment): completely
1282 rewritten. Now it does not use Align_interface anymore, but a
1283 separate routine. Like StaffSpacing, it reads space-alist from the
1284 breakable grobs. This allows you to set spacing using
1286 \property Staff.Clef \override #'space-alist = '(....stuff....)
1288 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1289 to Bar_line. Move files around as well.
1291 * lily/time-signature.cc (time_signature): left align time signatures.
1293 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1294 Corrections of the glyph shape C. Comments added.
1296 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1298 * lily/spacing-spanner.cc: move from third-try.cc; rename
1299 Third_spacing_spanner to Spacing_spanner.
1301 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1302 spacing stuff. Much cleaner now, and we prepare for neat spacing
1303 tricks around bar lines and such.
1305 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1306 variables with themselves. (Ouch.)
1308 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1311 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1315 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1318 * lily/music.cc (ly_get_mus_property): typechecking
1319 (ly_set_mus_property): idem
1320 (ly_make_music): idem
1321 (ly_music_name): idem
1323 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1325 * lily/note-spacing.cc (stem_dir_correction): correction for
1326 same stem notes as well.
1328 * lily/pitch.cc (pitch_transpose): stricter typechecking
1330 * mf/parmesan*mf: magnification fixes.
1332 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1334 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1336 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1337 documenting the font. (Doesn't work for parmesan at the moment)
1339 * Documentation/user/appendices.itely (The Feta font): Add list of
1340 Feta font symbols with names.
1342 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1345 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1347 * lily/translator-group.cc (ly_set_trans_property): typechecking
1348 (ly_get_trans_property): typechecking.
1350 * lily/font-metric.cc (ly_text_dimension): typechecking
1351 (ly_find_glyph_by_name): idem.
1353 * scm/bass-figure.scm (brew-complete-figure): support for
1356 * lily/grob.cc (ly_get_paper_var): new function
1358 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1360 * VERSION (PATCH_LEVEL): 1.5.35 released.
1362 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1363 (bracket): New function.
1365 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1366 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1368 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1371 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1374 * lily/grob.cc (ly_get_grob_property): be anal about types.
1375 (ly_set_grob_property): idem
1377 * lily/figured-bass-engraver.cc (process_music): move molecule
1378 building completely to Scheme
1380 * lily/include/musical-request.hh (class Bass_figure_req): Add
1383 * lily/parser.yy (bass_figure): add support for space figure.
1385 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1387 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1389 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1390 (ly_align_to_x): new function ly-align-to!
1392 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1393 function ly-get-font
1395 * mf/feta-nummer.mf: include normal-space dimension.
1397 * lily/collision.cc (check_meshing_chords): don't merge collisions
1400 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1403 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1405 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1407 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1409 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1412 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1415 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1416 scm/grob-description.scm: added mensural fermata symbol
1418 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1420 * VERSION: 1.5.34 released.
1422 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1424 * lily/staff-symbol-referencer.cc (callback): assume that
1425 staff-position is unset in general.
1427 * input/regression/rest-pitch.ly: new file.
1429 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1432 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1434 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1435 as Scheme option. Run regression test by default with
1436 internal-type-checking.
1438 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1440 * lily/lily-guile.cc (type_check_assignment): changed functions.
1442 * scm/*description*.scm: be anal about typechecks. Some changes
1443 for internal variable names.
1445 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1447 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1449 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1451 * VERSION: 1.5.33 released.
1453 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1454 flare_path everywhere (c-clef, numbers).
1456 * lily/bar-number-engraver.cc (process_music): also print bar
1457 number if measure starts with grace note.
1459 * input/regression/grace-bar-number.ly: new test.
1461 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1463 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1466 * scm/music-functions.scm (voicify-music): split chords into
1467 different voices automatically.
1469 * lily/music.cc (ly_music_list_p): new function
1471 * lily/music-sequence.cc (do_relative_octave): robustification
1473 * scm/music-functions.scm: many utility functions
1475 * lily/music.cc (ly_set_mus_property): add type checks to the
1476 Scheme property assignment.
1478 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1481 * mf/lilypond.map: .map file from Mats' page.
1483 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1485 * Some more parmesan related fixes;
1487 * Custos: varying shape (in particular, stem length), depending on the
1488 vertical position of the custos (on staffline / between stafflines);
1490 * Custos: added grob property "neutral-direction" (same semantics as
1491 with stem); introduced new grob property "neutral-position";
1493 * Time-signature: print a warning when resorting to default layout.
1495 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1497 * lily/translator-group.cc (add_fresh_simple_translator): remove
1498 function; initialize() is called through
1499 Translator_group::initialize().
1501 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1502 for the neighbors of a loose column.
1504 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1505 position loose columns so that they don't collide.
1507 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1509 * VERSION: 1.5.32 released.
1511 * scm/font.scm: remove font-name symbol.
1513 * mf/GNUmakefile: use pktrace for making PFAs
1515 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1517 * lily/rest-collision.cc (do_shift): read direction field from
1518 rest-column in case of note-rest collision. This should fix some
1519 problems with rest collisions.
1521 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1523 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1526 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1527 property. Read pitch directly from #'cause.
1529 * mf/feta-puntje.mf: bugfix
1531 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1533 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1535 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1537 * Documentation/windows/compiling.texi: Update.
1539 * Documentation/index.texi: Add link to orphaned compiling for
1542 * Documentation/footer.html.in: Comment fix.
1544 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1546 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1548 * VERSION: 1.5.31 released
1550 * lily/new-spacing-spanner.cc: remove file.
1552 * lily/third-try.cc (do_measure): only take spacings into account
1553 if they pertain to the column pair under consideration. This fixes
1554 spacing bug when mixing eighths triplets and normal eighths.
1556 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1557 lines don't take up space anymore. Document why in note-head.cc
1560 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1562 * lily/font-interface.cc (get_font): reinstate
1563 #'font-magnification. See input/regression/font-magnification.ly
1564 (get_font): Change the definition of #'font-name grob property.
1566 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1567 that have a #'cause field.
1569 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1571 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1573 * mf/GNUmakefile: remove metapost stuff
1575 * stepmake/aclocal.m4: remove metapost detection stuff.
1577 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1579 * mf/GNUmakefile (FET_FILES):
1580 (FONT_FILES): Include parmesan.
1582 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1585 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1587 * Documentation/user/refman.itely (Paper size): Quote braces.
1589 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1591 * stepmake/aclocal.m4: fixed bison version check to be more
1594 * lily/stem.cc (position_noteheads): fix for cluster chords.
1596 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1598 * python 2.2 support.
1600 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1602 * VERSION: 1.5.30 released
1604 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1606 * Documentation/user/refman.itely (Dynamics): add a note about
1609 * scm/grob-description.scm: add a 'translator-type? object
1610 property, so that \property Foo.Bar =\turnOff doesn't cause
1613 * lily/translator-group.cc (add_fresh_group_translator): make
1614 new add-translator functions to make distinction between fresh and
1615 used group-translators. Fixes problem with scripts on auto-changing voice
1617 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1618 add to Score_performer. Fixes bar checks in MIDI
1620 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1621 heads. Fixes many quirks with ties.
1623 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1624 in the grob property #'cause, instead of using Grob_info.
1626 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1627 staff context, fixing dot alignment on collisions.
1629 * lily/beam-engraver.cc (try_music): remove can't find beam start
1630 warning, so that skipTypesetting won't complain.
1632 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1634 * Documentation/user/refman.itely (Paper size): Documentation fix,
1637 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1639 * scm/grob-description.scm: \breathe: Use feta font comma by default
1641 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1643 * input/template/piano-dynamics.ly (pedal): Simplified
1645 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1647 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1649 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1651 * lilypond-mode.el (LilyPond-command-query): ignore case.
1653 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1655 * VERSION: 1.5.29 released
1657 * all files: change 2001 to 2002 in headers globally
1659 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1660 cheese") font. WARNING: fonts changed.
1662 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1664 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1666 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1668 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1670 * mf/*.mf: Fixed a few typos in various .mf files
1672 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1674 * mf/: added macro soft_penstroke
1676 softened some glyphs
1677 redrawn triangular noteheads
1679 added classical quarter rest
1681 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1683 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1684 lines and staff_space>=2
1686 * lily/rest.cc: Use default rests when current style glyphs not
1688 \property Staff.Rest \override #'style = #'classical
1690 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1692 * input/bugs/first-tie.ly: New file.
1694 * input/bugs/spacing-clash.ly: New file.
1696 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1700 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1702 * lilypond-indent.el: New file providing indentation for
1703 parenthesised blocks of lilypond code in Emacs
1705 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1706 indentation and handle block comments properly. Distinguish
1707 accents from close-brackets in fontification.
1709 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1711 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1713 * Documentation/windows/installing.texi:
1714 * Documentation/windows/compiling.texi: Include from 1.4.10.
1716 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1718 * input/bugs/first-midi-tie.ly: New file.
1720 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1722 * VERSION: 1.5.28 released
1724 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1725 illicit beams on [c4 c4] etc.
1727 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1728 file. Make separate iterator for Bar_checks. Bar_check now happen
1729 outside engravers, meaning that you can use them with
1730 skipTypesetting. Associated changes in other files.
1732 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1735 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1737 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1739 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1741 * lily/stem.cc (set_spacing_hints): removed function
1743 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1744 correction for spacing; now take vertical extents of the stem into
1747 * lily/third-try.cc: More hacking to get spacing working.
1749 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1750 sits at staff level and creates note spacing objects. Scrap it
1751 again, and document why.
1753 * lily/include/group-interface.hh: rename functions.
1755 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1757 * stepmake/stepmake/c++-rules.make:
1758 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1760 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1762 * make/lilypond-vars.make:
1763 * scripts/ly2dvi.py (setup_environment):
1764 * scripts/lilypond-book.py (setup_environment): Also set tex
1767 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1769 * VERSION: 1.5.27 released.
1771 * Documentation/user/refman.itely (Bar numbers): added bar number
1774 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1777 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1779 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1780 spread the last few lines all over the last page of a score.
1782 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1784 * lily/third-try.cc: 3rd try at revising spacing
1785 engine. Not yet finished.
1787 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1790 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1791 collecting past note heads.
1793 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1796 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1797 class. Keep a queue of grobs that are still playing in busyGrobs.
1799 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1800 function. Use busyGrobs to detect playing notes.
1802 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1804 * Documentation/topdocs/INSTALL.texi: Added note about broken
1805 python-2.1. Updated note for Debian's broken (well, broken for
1806 our use anyway) tex configuration.
1808 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1810 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1811 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1813 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1814 (But left margin of png's still misses a few pixels. Arg.)
1816 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1818 * lilypond-mode.el (LilyPond-command-next-midi): Make
1819 possible to kill midi-process (using "C-c C-m").
1821 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1823 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1824 Convert strings with dimensions to numbers.
1826 * lily/volta-engraver.cc: only make a bracket for the top staff,
1827 as found in stavesFound.
1829 * lily/bar-number-engraver.cc: remove staff administration.
1831 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1832 administration. This breaks support for invisible-staff.
1834 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1835 symbols into stavesFound.
1837 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1838 grobs, and put them into columns.
1840 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1841 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1843 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1845 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1846 midi section in the Emacs-mode, so it is possible to play certain
1847 score in a multiscore lilypond-file.
1849 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1850 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1851 (FIXME: not accessible from guile)
1853 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1854 better support for Kurt Stone's suggestions.
1855 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1857 Changed property: localKeySignature.
1858 Added properties: extraNatural, autoAccidentals,
1861 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1863 * ly/property-init.ly: added commands
1864 \defaultAccidentals \modernAccidentals \modernCautionaries
1865 \noResetKey \forgetAccidentals
1867 * ly/engraver-init.ly: Correct initialization of new accidentals.
1869 * scm/translator-property-description.scm: The new properties
1872 * input/: Some examples added, some changed.
1874 * Documentation/regression-test.tely: Added quick test of new
1877 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1879 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1882 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1884 * lily/beam.cc (before_line_breaking): Make beams without stems
1885 or with only one stem disappear.
1887 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1889 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1890 files to have standardised HTML bibliography output. Update build
1891 docs to reflect this.
1893 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1894 active_count_, so that we don't have to look for active springs
1897 * scm/interface-description.scm,scm/grob-property-description.scm:
1900 * lily/simple-spacer.cc (solve): Handle forced line breaks
1901 here. Fixes problems when combining linebreaks with non-fitting
1904 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1906 * 1.4.9.jcn3 forward ports.
1908 * Really included .cvsignore.
1910 * Included Han-Wen's uu1 windows fixes.
1912 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1914 * Added Cygwin setup.hint
1916 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1917 tetex/texmf, python installations.
1919 * Updated cygwin installer.
1921 * ly2dvi: Don't accept filenames with spaces (+ fix).
1923 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1925 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1927 * lily/translator-def.cc: Remove manual symbol caching.
1929 * lily/script-column.cc (before_line_breaking): robustness check:
1930 don't crash if no direction set.
1932 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1934 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1938 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1940 * lily/note-head.cc (head_extent): added to compute width without
1941 ledger lines. By default, ledger lines take up width now.
1943 * input/regression/fingering.ly: demonstrate auto fingering.
1944 Horizontal placement is still buggy.
1946 * lily/fingering-engraver.cc (class Fingering_engraver):
1947 added. Provides support for horizontal fingering scripts
1949 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1951 * lily/side-position-interface.cc (add_staff_support): add staff
1952 only for Y-axis side positions.
1954 * lily/parser.yy (request_chord): Fix mem leak.
1956 * lily/musical-request.cc (transpose): moved to Music::transpose()
1958 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1959 can store grobs as grob-creation cause as well.
1961 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1962 handle when adding. Use precomputed symbols throughout lily.
1964 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1965 track of spacing issues.
1967 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1968 to keep track of staff spacing
1970 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1972 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1973 code clean from conditionals and have a concentrated sets of
1974 compatibility fixes for old guile versions.
1976 * Fixes for guile 1.4, including embedded ps.
1978 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1980 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1981 well for markup texts.
1983 * lily/musical-request.cc (length_mom): kludge for null pointer.
1985 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1987 * scm/lily.scm (sign): bugfix
1989 * CHANGES: Change log instated.
1991 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.