1 2002-05-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
3 * lily/accidental.cc (after_line_breaking): add break tie
6 * lily/text-engraver.cc (try_music): don't typeset fingerings
8 2002-05-05 Heikki Junes <hjunes@cc.hut.fi>
10 * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
12 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
14 * lily/*.cc: change gh_str02scm() to ly_str02scm().
16 * lily/spacing-spanner.cc (note_spacing): Bound
17 shortest-playing-length by the distance to next note. This should
18 fix chord tremolo spacing.
20 * VERSION: 1.5.55 released
22 * lily/stem.cc (off_callback): invisible stem over whole note is
25 * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
26 stem-tremolo is stem now.
28 * input/mozart-hrn*.ly: many corrections.
30 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
31 support for dynamic scripts.
33 * lily/accidental-placement.cc (position_accidentals): check for
34 collisions as well: should avoid those heads too.
36 * lily/beam.cc (check_concave): allow undefined gap and
37 threshold. Change the meaning of threshold/gap == 0.0.
38 (check_concave): skip Stolba concaveness check if we have a knee
41 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
43 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
44 tremolos of dotted duration.
46 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
48 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
49 downstroke again. Sigh.
51 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
54 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
56 * lily/slur.cc (add_column): allow slur over rest.
58 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
60 * lily/beam.cc: move scoring constants out of code
62 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
64 * mf/feta-nummer.mf: scalability fixes.
66 * mf/feta-nummer-code.mf: fixes for 5, 8.
68 * mf/feta-klef.mf: G clef fixes.
70 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
72 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
74 * scripts/lilypond-book.py: %Newline, rather than glue macros
77 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
79 * Documentation/user/lilypond-book.itely:
80 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
83 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
85 * scm/grob-property-description.scm (beam-space): Junk.
87 * lily/beam.cc (space_function): New method.
88 (get_interbeam): Call space-function.
90 * scm/grob-description.scm (Beam): Initialize space-function with
93 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
94 Beam.space-function. Don't quantise grace beams.
96 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
98 * VERSION: 1.5.54 released
100 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
103 * Documentation/index.texi: add PDF links.
105 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
107 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
108 compare #'glyph as strings.
110 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
112 * scripts/ly2dvi.py (setup_environment): fix by Mats.
114 * lily/stem.cc (head_count): Change function name. Change property
115 to #'note-heads i.s.o. #'heads.
116 (position_noteheads): Kern noteheads for invisible stems.
117 (before_line_breaking): Do position_noteheads() for whole note
120 * lily/accidental-placement.cc (position_accidentals): First
121 determine refpoints, only then determine extents.
123 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
125 * lily/accidental-placement.cc (position_accidentals): use all
126 note heads for note head-skyline.
128 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
130 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
132 * Documentation/windows/setup.hint (requires): Add gsview dependency.
134 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
136 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
138 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
140 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
142 * mf/feta-schrift.mf: lighter staccato.
144 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
146 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
148 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
150 * VERSION: 1.5.53 released
152 * scm/lily.scm (ly-load): use primitive-load for loading.
154 * lily/misc.cc: remove quantise_iv()
156 * lily/*.cc: pass read-only arrays by reference.
158 * lily/grob.cc (common_refpoint_of_array): new function. Try to
159 use common_refpoint_of_{array, list} when possible.
161 * lily/include/accidental-placement.hh: new file.
163 * lily/accidental-placement.cc (alignment_callback): position
164 accidentals in a better way.
166 * lily/skyline.cc: new file. Compute distances for collections of
169 * lily/include/skyline.hh: new file
171 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
173 * lily/accidental.cc (class Accidental_interface): grob for a
176 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
179 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
180 together with new accidental-interface.
182 * lily/include/*.hh: remove spurious set_interface() decls.
184 * lily/key-signature-interface.cc (brew_molecule): add padding for
185 natural signs. Make natural typesetting like the sharp.
188 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
189 is now slightly curved, not straight.
192 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
194 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
196 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
197 more strictly. Use more clever regular expressions. Commented regexps.
199 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
201 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
203 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
205 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
206 to control width of staff symbol in ragged-right mode (by request
209 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
210 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
211 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
212 added support for ligature brackets (needed when transcribing
215 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
217 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
218 Fontify notes more strictly.
220 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
222 * mf/feta-din-code.mf: dynamic z sign.
224 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
226 * lilypond-mode.el: Prevent recoloring strings and comments.
228 * lilypond-font-lock.el: Handle block comments: block comments
229 can have also ordinary comments inside.
231 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
233 * lily/stem.cc (get_default_dir): set direction to CENTER if
234 invisible. Various other fixes to deal with invisible stems and
235 stem-direction == CENTER.
237 * lily/rest-collision.cc (do_shift): take direction from note if
240 * input/regression/tie-grace.ly: new file.
242 * lily/tie-engraver.cc (create_grobs): fix tied graces.
244 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
245 knee correction. Fixes tight spacing for knees.
247 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
249 * VERSION: 1.5.52 released
251 * lily/*.cc: add some undocced properties.
252 scm/grob-description.scm: idem.
254 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
256 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
257 multi-measure rests like "R1 *4" and scheme (typically has '#'
258 in the beginning). Small fixes. Add few reserved words.
260 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
262 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
265 * Documentation/windows/installing.texi: Suggest gswin32c (console
266 program) for getting the version. Layout fixes.
268 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
270 * Documentation/user/tutorial.itely (Running LilyPond): Separate
271 windows viewing commands, remove silly comment about Yap.
273 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
275 * Documentation/topdocs/INSTALL.texi: Describe how to learn
276 configure to find kpathsea on for example Slackware 8.0.
278 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
280 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
281 by default: avoid "1" over single bar rests.
283 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
284 and correct the handling of geometry options.
286 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
288 * lily/include/grob-interface.hh (ADD_INTERFACE): make
289 implementation for Class::has_interface automatically. Junk all
290 other implementations.
292 * lily/grob.cc (internal_get_grob_property): also typecheck
293 property reads. Catches even more undocced properties. Bugfixing
294 left for the uninspired masses.
296 * lily/beam.cc: remove end_after_line_breaking().
298 * lily/grob.cc (calculate_dependencies): remove list support for
301 * lily/font-size-engraver.cc: only do font-interface.
303 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
305 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
308 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
310 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
311 brackets using arpeggio requests.
313 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
314 molecule-callback to use for drawing the brackets.
316 * Documentation/user/refman.itely:
317 * input/test/chord-bracket.ly: Chord brackets documented
319 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
321 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
323 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
325 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
327 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
328 direction tuplets on beams.
330 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
332 * lilypond-indent.el: Bugfix of indentation of final point in buffer
334 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
336 * lilypond-mode.el: new command: LilyPond-un-comment-region.
337 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
338 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
339 submenu to "LilyPond"-menu.
341 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
342 an interface to play midi.
344 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
346 * input/regression/script-stack-order.ly: new file.
348 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
350 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
352 * mf/feta-din-code.mf: kerning for dynamics.
354 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
356 * input/regression/dynamics-glyphs.ly: new file
358 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
360 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
361 forte f for the 2 number. Some fixes for the other bulbed glyphs.
363 * Documentation/windows/gs-profile.sh:
364 * Documentation/windows/gsview-profile.sh: Remove. Functionality
365 moved to gs/gsview windows packages.
367 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
369 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
370 finding out the duration. Fixes chord tremolo bug.
372 * lily/completion-note-heads-engraver.cc (process_music): Set
373 correct duration for all requests of the broken notes.
375 * input/regression/completion-heads.ly: Added example of
376 Completion_heads_engraver.
378 * lilypond-mode.el: Added "2Midi" command
380 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
382 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
383 edge-width, edge-height and shorten-pair properties for tuplet
386 * lilypond-indent.el: Support for blinking of matching parentheses
388 * lilypond-font-lock.el: Fix fontification of closing > on its own line
390 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
391 cleanups of piano pedal brackets.
393 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
395 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
397 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
399 * mf/feta-new-code.mf: new dynamic f sign.
402 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
404 * mf/feta-new-code.mf: new dynamic p sign.
406 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
408 * lily/note-spacing.cc (stem_dir_correction): only do
409 beam-correction if a beam is there.
411 * lily/stem.cc (duration_log): change from flag_i (); better
413 (get_default_stem_end_position): fix dot/flag collision code.
415 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
417 * VERSION: release 1.5.50
419 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
420 unit spring here. Reduces number of warning messages.
422 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
424 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
426 * scm/generic-property.scm: remove generic-property, property-engraver
428 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
430 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
432 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
434 * scm/*.scm: remove volta, hairpin and tuplet functions.
436 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
437 note column for notes/stems/dots that already have parents. Fixes
438 nested grace contexts.
440 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
442 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
443 get too curved slurs.
445 * scm/slur.scm (default-slur-extremity-offset-alist)
446 (default-phrasing-slur-extremity-offset-alist): Move slur
447 attachments further away from note-head, vertically. Also, leave
448 a horizontal gap between slur and stem end.
450 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
452 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
454 * input/regression/spacing-grace-duration.ly: new file
456 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
457 for shortest durations.
459 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
460 extent of the mm rest.
462 * lily/spacing-spanner.cc (get_duration_space): better spacing for
465 * lily/tuplet-bracket.cc (make_bracket): new function
466 (get_x_offset): new function; make tuplet brackets align on stems
467 if stem has same direction.
468 (parallel_beam): be anal about matching bracket to tuplet.
470 * lily/lookup.cc (line): new function Lookup::line().
472 * scm/tex.scm (dashed-line): change -line to -system in names.
474 * lily/box.cc (add_point): new function.
476 * flower/include/interval.hh: new function add_point ().
479 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
481 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
483 * scm/grob-property-description.scm (number-threshold): Add
486 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
487 rest if #measures > number-threshold. Use padding (well, fake
490 * scm/font.scm (make-style-sheet): New styles: mark-number,
492 (paper20-style-sheet-alist): Add bigger bold fonts.
494 * lily/mark-engraver.cc (process_music): Use style mark-number or
497 * .cvsignore: Ignore all kinds of lilypond input and output.
499 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
501 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
503 * lily/staff-symbol.cc (brew_molecule): make line thickness
506 * lily/*.cc: replace stafflinethickness by linethickness.
508 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
510 * input/regression/beam-concave.ly: Add to-be-considered-concave
513 * lily/beam.cc (check_concave): Add check for large gap between an
514 inner notehead and the line through outer noteheads.
516 * scm/grob-description.scm (Beam): Add concaveness-gap, default
517 value 2.0 staff-space.
519 * scm/grob-property-description.scm (concaveness-gap): Add
522 * input/mozart-hrn3-allegro.ly: Fix typo.
524 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
526 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
527 lily/note-head-engraver: improved implementation of roundfilledbox
528 (according to Han-Wen's request)
530 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
531 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
532 lily/simple-spacer.cc: ragged-right alignment
534 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
536 * input/regression/spacing-note-flags.ly: new file
538 * input/regression/spacing-rest.ly: new file
540 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
542 * lily/spacing-spanner.cc (note_spacing): make note spacing after
543 all grace notes tight (not only the column directly following a
546 * scm/grob-description.scm (all-grob-descriptions): don't make
547 mm-rests larger than normal.
549 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
550 curved. Remove white space at the right of flags.
552 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
554 * ports/ports.make: Bugfix: ignore CVS directories.
556 * stepmake/.cvsignore: New file.
558 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
560 * lily/note-spacing.cc (stem_dir_correction): don't correct when
561 there is a flag on the stem.
563 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
565 * scm/grob-property-description.scm (measure-length):
566 measure-length grob property.
568 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
569 better spacing for breakable columns when they're juxtaposed: use
570 measure length if applicable
572 * lily/timing-engraver.cc (start_translation_timestep): store
573 measure length in breakable column at start of measure.
575 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
577 * ROADMAP: Add description for ports dir, to check email upon
580 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
582 * VERSION: 1.5.48 released
584 * lily/multi-measure-rest.cc (symbol_molecule): split off from
586 (set_spacing_rods): Use symbol_molecule() to determine minimum
588 (church_rest): split off from brew_molecule()
589 (big_rest): split off from brew_molecule(). Construct using
592 * mf/feta-eindelijk.mf: junk multi measure rest.
594 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
596 * lily/multi-measure-rest.cc (add_column): remove columns property.
598 * lily/dynamic-engraver.cc (process_music): add more verbose warning
600 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
603 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
605 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
606 keywords covered, dropped some non-keywords, include R- and 128-notes
608 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
610 * Code clean-up: Junk multiple implementations of ledger line
611 creation in note_head, custos, and porrectus. This is important
612 since there soon will be some more applications of ledger lines to
613 come (e.g. ambitus engraver).
615 * Make thickness of ledger lines adjustable. This is essential
616 for mensural notation.
618 * Fix some bugs in the current ledger_line implementation, most
619 notably that of the horizontal extent of ledger lines which equals
620 at least the extent of the metafont ledger_line character, and
621 which grows(!) if the desired extent shrinks below this limit.
623 * roundfilledbox: variable blotdiameter
625 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
627 * VERSION: 1.5.47 released
629 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
631 * lily/porrectus.cc: change line-thickness to thickness, change
632 stem-direction to direction.
634 * scm/backend-documentation-lib.scm (check-dangling-properties):
635 Automatically detect doc'ed properties that are not in an interface
637 * scm/grob-property-description.scm: property cleanup. Remove many
638 paper-column props that are non-existent.
640 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
641 the grob has a molecule-callback.
643 * lily/*.cc: remove many set_interface() calls, and their
646 * input/regression/spacing-knee.ly: new file
648 * input/regression/spacing-clef-first-note.ly: new file
650 * lily/staff-spacing.cc (get_spacing_params): different spacing
651 for pref matter to note at start of line, halfway during line.
653 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
654 correction only if stems have same direction (i.e. not for
655 stem-clef combination).
656 (stem_dir_correction): maximal correction for knees.
658 * lily/*.cc: many updates to interface descriptions.
660 * lily/grob.cc (internal_set_grob_property): add interface check
661 for every set_grob_property call
663 * lily/*.cc: document interface stuff in C++
665 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
667 * lily/volta-bracket.cc: naming: change volta spanner to
670 * input/bugs/*.ly: cleanup, remove lots of files.
672 * buildscripts/mf-to-table.py (write_ps_encoding): generate
673 .encoding file. WARNING: upgrade to pktrace 1.0.3
675 * mf/feta-toevallig.mf: change PS name for parentheses.
677 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
679 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
682 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
684 * lily/scope.cc: remove file .
686 * lily/include/scope.hh: remove file. Remove Scope class
690 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
691 score_forbidden_quants): ): take out of SCM, pass parameters so
692 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
694 (calc_stem_y): robustness: take care of last_visible_stem == 0.
697 * lily/lily-guile.cc (ly_unit): return internal unit.
699 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
701 * lily/paper-outputter.cc (output_version): output internal unit
704 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
706 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
708 * scripts/ly2dvi.py: clean up old .*pk font caching code.
710 * scm/ps.scm: Use uppercase postscript font names for the standard
713 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
714 Add all available TeX Type1 fonts, including Feta, to the
715 Ghostscript font path.
717 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
718 version (affects the FontName) in lilypond.map.
720 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
721 documentation file to fetaNNlist.ly to avoid name collisions between
722 lilypond generated .tex file and font .tex macros file.
725 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
727 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
728 made mensural longa and (semi-)brevis leaner
730 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
732 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
733 clean-up: moved bezier shape and slope from porrectus to lookup
735 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
736 and /usr/share/texmf/fonts
738 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
740 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
742 * lily/text-spanner.cc (brew_molecule): add #'thickness
743 (brew_molecule): add corrections for thickness in molecule padding.
745 * lily/line-spanner.cc (line_atom): make function private
747 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
748 discover bounding box. This solves the cropping problem.
750 * lily/bar-check-iterator.cc (process): Only resynchronize bar
751 check when it fails. This fixes the combination of grace notes
754 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
756 * lily/repeated-music.cc (minimum_start): new Scheme callable function
757 (first_start): new Scheme callable. This will fix repeated music
758 starting with grace notes.
760 * lily/music.cc (start_mom): check start-moment-function grob property.
762 * VERSION: 1.5.45 released
764 * input/regression/system-extents.ly: new regression test. Test
767 * lily/system.cc: rename LineOfScore into System
769 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
771 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
772 (ly_get_extent): new Scheme function ly-get-extent
774 * ps/lilyponddefs.ps: use output-scale for line-x
777 * scm/ps.scm (font-load-command):
780 2002-03-20 Rune Zedeler <rune@zedeler.dk>
782 * lily/beaming-info.cc: Stupid typo fixed
784 * lily/accidental-engraver.cc: rewrote accidental-routines to get
785 support for cross-context auto-accidentals.
786 Now the engraver can stay in Staff-context and see other contexts
788 Changed properties: autoAccidentals, autoCautionaries
790 * lily/translator-group.cc (set_children_property):
791 Function added recursively setting the same property (deep_copied)
792 for all children of a Translator_group.
794 * ly/property-init.ly: added commands
795 \pianoAccidentals \voiceAccidentals
796 \modernVoiceAccidentals \modernVoiceCautionaries
798 * ly/engraver-init.ly: Correct initialization of new accidentals.
800 * scm/translator-property-description.scm: Updated
802 * input/regression/accidental-voice.ly: Added
804 * Documentation/regression-test.tely: Added new test
806 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
808 * VERSION: 1.5.44 released
810 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
812 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
814 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
817 * tex/feta*.tex: remove.
819 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
820 all software dealing with it.
822 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
824 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
825 (this fixes pdf output). Drop awk dependency.
827 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
828 dimensions (linewidth) are in mm.
830 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
832 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
834 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
836 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
838 * VERSION: 1.5.43 released
840 * scm/beam.scm (beam-dir-majority-median): if majority is
841 undecided, use median. Removes a forced dir in sarabande.
843 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
845 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
847 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
848 widths, heights and shortens are now customisable properties.
850 * scm/grob-description.scm, scm/grob-property-description.scm: New
851 properties added to PianoPedalBracket, unnecessary
852 Y-offset-callbacks removed from *Pedal, undocumented properties
855 * Documentation/user/refman.itely: Piano pedal updates.
857 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
859 * scm/grob-property-description.scm:
860 * scm/interface-description.scm: Remove old stuff.
862 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
863 0.48 (previously 0.42).
864 (Beam): Remove old stuff.
867 * lily/stem-tremolo.cc:
869 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
870 (previously space-function).
872 * stepmake/bin/add-html-footer.py: Website title fix.
874 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
876 * scripts/ly2dvi.py (environment): use new font searching setup.
878 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
880 * lily/tfm.cc (dimensions): make code dimension independent
882 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
885 * tex/lily-ps-defs.tex: scaling for PS points and MM.
887 * lily/include/dimensions.hh: try MM as internal unit.
889 * scm/*.scm: remove invoke-dim1
891 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
893 * GNUmakefile.in (fontpaths): add fontpaths target,
895 * make/mutopia-targets.make: add PDF rules.
897 * make/mutopia-rules.make: add pdf rule.
899 * buildscripts/mutopia-index.py (list_item): add PDF.
901 * buildscripts/lilypond-profile.sh (TEXMF): typo.
903 * make/lilypond-vars.make: set TEXMF for the new font setup.
905 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
907 * VERSION: 1.5.42 released
909 * mf/feta-schrift.mf: endless twiddling of Tr.
911 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
912 endless twiddling with the bulb shape.
914 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
915 little smaller if there is an accidental.
917 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
919 * buildscripts/lilypond-profile.sh:
921 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
922 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
923 Implement new font installation strategy
925 * Documentation/misc/fontinstallation (TEXMF): Documentation of
926 the new font installation strategy.
928 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
931 * input/test/staff-size.ly: Simplified using StaffContainer
933 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
936 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
938 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
940 * lily/beam.cc (score_stem_lengths): new quanting stuff
941 (score_forbidden_quants): Second and third beam quant stuff.
943 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
945 * lily/beam.cc (least_squares): Remember least-squares-dy for
947 (quantise_interval): Don't quant to dy steeper that
948 least-squares-dy. Return empty interval if no sane quants found.
949 (quantise_position): Try quantise_interval until we have
952 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
954 * scm/interface-description.scm (beam-interface): Update.
956 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
958 * VERSION: 1.5.41 released
960 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
961 optima serifs on top of t, bottom of r.
963 * mf/feta-bolletjes.mf: make ledger line rounder.
965 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
967 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
970 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
972 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
973 well as text pedal indications and a combination of both. All
974 pedal indications are horizontally aligned on a line spanner.
976 * lily/text-spanner.cc: Edge-width property added to use in
977 bracketed piano pedals. Function setup_sustain_pedal added to set
978 the dimensions of the brackets.
980 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
981 some of the *Pedal properties tweaked.
983 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
984 edge-width (TextSpanner) properties.
986 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
988 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
989 fontified identifiers list.
991 * input/test/pedal.ly: New pedal features added.
993 * Documentation/user/refman.itely: New pedal features documented.
996 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
998 * lily/include/new-beam.hh: Previously new-beam.hh
999 * lily/beam.cc: Previously new-beam.cc
1000 (least_squares): Bugfix: don't barf on beams with less than two
1001 visible stems (tremolos).
1004 * scm/grob-description.scm (Beam): Junk old beam stuff.
1007 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1011 * mf/feta-eindelijk.mf: new 8th rest.
1013 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1014 stick out of staffline
1016 * scripts/lilypond-book.py: fixes for texi regular expressions.
1018 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
1020 * lily/include/new-beam.hh:
1021 * lily/new-beam.cc: New file.
1023 * flower/include/interval.hh:
1024 * flower/include/interval.tcc (delta): New method.
1025 (swap): Now public (previously private).
1027 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1028 1 staff-line-thickness. Sadly, this makes dy quanting problems
1029 (dy quants allowed should depend on actual left y) more visible.
1031 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1033 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1035 * scm/grob-property-description.scm (concaveness-threshold): Add
1036 typecheck and description.
1038 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1039 concaveness-threshold (previously concaveness).
1041 * lily/beam.cc (check_concave): Remove choices and debugging
1042 stuff: use best concaveness calculation.
1043 (quantise_dy): Remove choice. Try to never make a slope steeper
1044 by quantising, but certainly never quantise a slope away.
1045 (check_stem_length_f): Remove choice. In case of lengthening
1046 alowed, always lengthen to ideal length.
1048 * Documentation/index.texi: Fix FAQ url.
1050 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1051 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1053 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1055 * VERSION: 1.5.39 released
1057 * lily/simple-spacer.cc (add_rod): rods take precedence over
1058 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1060 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1062 * lily/note-spacing.cc (get_spacing): only insert space for
1063 accidentals if necessary.
1065 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1067 * lily/spacing-spanner.cc (musical_column_spacing): new
1068 function. Have correct spacing from note to end-of-line as well.
1070 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1072 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1074 * darwin.patch: New file.
1076 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1077 code. Shorten stems by fraction of stems to be shortened.
1079 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1080 of shorten value for boundary cases.
1082 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1083 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1085 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1087 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1089 * scm/grob-description.scm (Beam): Add concaveness. Replace
1090 Beam::cancel_suspect_slope with Beam::check_concave.
1092 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1093 set slope to horizontal if concaveness > Beam.concaveness. This
1094 handles cases that kludgy cancel_suspect_slope was meant to catch
1096 (cancel_suspect_slope): Remove.
1098 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1100 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1101 stemLeftBeamCount and stemRightBeamCount to equal 0.
1104 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1106 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1107 fixed spacing for pref matter, if the next column is musical, and
1110 * lily/note-spacing.cc (stem_dir_correction): Use correct
1111 discretionary for stem-bar spacing.
1113 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1115 * VERSION: 1.5.38 released
1117 * lily/grob.cc (warning): Use cause tracking to give more
1118 meaningful errors from the backend.
1120 * lily/property-iterator.cc (check_grob): Warn if setting grob
1121 property in unknown grob.
1123 * mf/feta-toevallig.mf: brushed stems for natural sign.
1125 * lily/molecule.cc (align_to): don't translate empty molecule.
1126 (this triggers a very subtle bug in time-signature.)
1128 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1130 * lily/spring.cc: remove file.
1132 * input/regression/spacing-stem-bar.ly: new file
1134 * lily/score.cc (run_translator): resurrect point-and-click
1136 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1139 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1140 spacing is now globally determined, using the most common shortest
1141 note. Notes that are shorter are spaced geometrically, and with
1142 expand hints. This makes spacing more even, and measures that have
1143 very short notes won't be that stretched out.
1145 * mf/feta-klef.mf: F-clef fixes, documentation on the
1146 shape. (WARNING: font changed.)
1148 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1150 * lily/simple-spacer.cc (add_columns): support for infinitely
1153 * lily/staff-spacing.cc (get_spacing_params): space after
1154 prefatory matter is fixed.
1156 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1158 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1159 barline following an upstem.
1161 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1162 function from next_notes_correction().
1163 (bar_y_positions): idem.
1165 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1167 * input/regression/break.ly (texidoc): bugfix: escape \ in
1170 * lily/staff-spacing.cc (next_notes_correction): Correct the
1171 spacing of a note following a barline.
1174 2002-03-04 Glen Prideaux
1176 * mf/feta-solfa.mf: Shaped note heads
1178 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1180 * VERSION: 1.5.37 released
1182 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1183 left-align molecule.
1185 * lily/break-align-interface.cc (do_alignment): completely
1186 rewritten. Now it does not use Align_interface anymore, but a
1187 separate routine. Like StaffSpacing, it reads space-alist from the
1188 breakable grobs. This allows you to set spacing using
1190 \property Staff.Clef \override #'space-alist = '(....stuff....)
1192 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1193 to Bar_line. Move files around as well.
1195 * lily/time-signature.cc (time_signature): left align time signatures.
1197 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1198 Corrections of the glyph shape C. Comments added.
1200 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1202 * lily/spacing-spanner.cc: move from third-try.cc; rename
1203 Third_spacing_spanner to Spacing_spanner.
1205 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1206 spacing stuff. Much cleaner now, and we prepare for neat spacing
1207 tricks around bar lines and such.
1209 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1210 variables with themselves. (Ouch.)
1212 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1215 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1219 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1222 * lily/music.cc (ly_get_mus_property): typechecking
1223 (ly_set_mus_property): idem
1224 (ly_make_music): idem
1225 (ly_music_name): idem
1227 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1229 * lily/note-spacing.cc (stem_dir_correction): correction for
1230 same stem notes as well.
1232 * lily/pitch.cc (pitch_transpose): stricter typechecking
1234 * mf/parmesan*mf: magnification fixes.
1236 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1238 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1240 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1241 documenting the font. (Doesn't work for parmesan at the moment)
1243 * Documentation/user/appendices.itely (The Feta font): Add list of
1244 Feta font symbols with names.
1246 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1249 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1251 * lily/translator-group.cc (ly_set_trans_property): typechecking
1252 (ly_get_trans_property): typechecking.
1254 * lily/font-metric.cc (ly_text_dimension): typechecking
1255 (ly_find_glyph_by_name): idem.
1257 * scm/bass-figure.scm (brew-complete-figure): support for
1260 * lily/grob.cc (ly_get_paper_var): new function
1262 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1264 * VERSION (PATCH_LEVEL): 1.5.35 released.
1266 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1267 (bracket): New function.
1269 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1270 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1272 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1275 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1278 * lily/grob.cc (ly_get_grob_property): be anal about types.
1279 (ly_set_grob_property): idem
1281 * lily/figured-bass-engraver.cc (process_music): move molecule
1282 building completely to Scheme
1284 * lily/include/musical-request.hh (class Bass_figure_req): Add
1287 * lily/parser.yy (bass_figure): add support for space figure.
1289 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1291 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1293 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1294 (ly_align_to_x): new function ly-align-to!
1296 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1297 function ly-get-font
1299 * mf/feta-nummer.mf: include normal-space dimension.
1301 * lily/collision.cc (check_meshing_chords): don't merge collisions
1304 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1307 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1309 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1311 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1313 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1316 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1319 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1320 scm/grob-description.scm: added mensural fermata symbol
1322 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1324 * VERSION: 1.5.34 released.
1326 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1328 * lily/staff-symbol-referencer.cc (callback): assume that
1329 staff-position is unset in general.
1331 * input/regression/rest-pitch.ly: new file.
1333 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1336 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1338 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1339 as Scheme option. Run regression test by default with
1340 internal-type-checking.
1342 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1344 * lily/lily-guile.cc (type_check_assignment): changed functions.
1346 * scm/*description*.scm: be anal about typechecks. Some changes
1347 for internal variable names.
1349 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1351 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1353 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1355 * VERSION: 1.5.33 released.
1357 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1358 flare_path everywhere (c-clef, numbers).
1360 * lily/bar-number-engraver.cc (process_music): also print bar
1361 number if measure starts with grace note.
1363 * input/regression/grace-bar-number.ly: new test.
1365 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1367 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1370 * scm/music-functions.scm (voicify-music): split chords into
1371 different voices automatically.
1373 * lily/music.cc (ly_music_list_p): new function
1375 * lily/music-sequence.cc (do_relative_octave): robustification
1377 * scm/music-functions.scm: many utility functions
1379 * lily/music.cc (ly_set_mus_property): add type checks to the
1380 Scheme property assignment.
1382 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1385 * mf/lilypond.map: .map file from Mats' page.
1387 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1389 * Some more parmesan related fixes;
1391 * Custos: varying shape (in particular, stem length), depending on the
1392 vertical position of the custos (on staffline / between stafflines);
1394 * Custos: added grob property "neutral-direction" (same semantics as
1395 with stem); introduced new grob property "neutral-position";
1397 * Time-signature: print a warning when resorting to default layout.
1399 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1401 * lily/translator-group.cc (add_fresh_simple_translator): remove
1402 function; initialize() is called through
1403 Translator_group::initialize().
1405 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1406 for the neighbors of a loose column.
1408 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1409 position loose columns so that they don't collide.
1411 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1413 * VERSION: 1.5.32 released.
1415 * scm/font.scm: remove font-name symbol.
1417 * mf/GNUmakefile: use pktrace for making PFAs
1419 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1421 * lily/rest-collision.cc (do_shift): read direction field from
1422 rest-column in case of note-rest collision. This should fix some
1423 problems with rest collisions.
1425 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1427 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1430 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1431 property. Read pitch directly from #'cause.
1433 * mf/feta-puntje.mf: bugfix
1435 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1437 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1439 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1441 * Documentation/windows/compiling.texi: Update.
1443 * Documentation/index.texi: Add link to orphaned compiling for
1446 * Documentation/footer.html.in: Comment fix.
1448 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1450 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1452 * VERSION: 1.5.31 released
1454 * lily/new-spacing-spanner.cc: remove file.
1456 * lily/third-try.cc (do_measure): only take spacings into account
1457 if they pertain to the column pair under consideration. This fixes
1458 spacing bug when mixing eighths triplets and normal eighths.
1460 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1461 lines don't take up space anymore. Document why in note-head.cc
1464 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1466 * lily/font-interface.cc (get_font): reinstate
1467 #'font-magnification. See input/regression/font-magnification.ly
1468 (get_font): Change the definition of #'font-name grob property.
1470 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1471 that have a #'cause field.
1473 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1475 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1477 * mf/GNUmakefile: remove metapost stuff
1479 * stepmake/aclocal.m4: remove metapost detection stuff.
1481 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1483 * mf/GNUmakefile (FET_FILES):
1484 (FONT_FILES): Include parmesan.
1486 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1489 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1491 * Documentation/user/refman.itely (Paper size): Quote braces.
1493 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1495 * stepmake/aclocal.m4: fixed bison version check to be more
1498 * lily/stem.cc (position_noteheads): fix for cluster chords.
1500 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1502 * python 2.2 support.
1504 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1506 * VERSION: 1.5.30 released
1508 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1510 * Documentation/user/refman.itely (Dynamics): add a note about
1513 * scm/grob-description.scm: add a 'translator-type? object
1514 property, so that \property Foo.Bar =\turnOff doesn't cause
1517 * lily/translator-group.cc (add_fresh_group_translator): make
1518 new add-translator functions to make distinction between fresh and
1519 used group-translators. Fixes problem with scripts on auto-changing voice
1521 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1522 add to Score_performer. Fixes bar checks in MIDI
1524 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1525 heads. Fixes many quirks with ties.
1527 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1528 in the grob property #'cause, instead of using Grob_info.
1530 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1531 staff context, fixing dot alignment on collisions.
1533 * lily/beam-engraver.cc (try_music): remove can't find beam start
1534 warning, so that skipTypesetting won't complain.
1536 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1538 * Documentation/user/refman.itely (Paper size): Documentation fix,
1541 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1543 * scm/grob-description.scm: \breathe: Use feta font comma by default
1545 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1547 * input/template/piano-dynamics.ly (pedal): Simplified
1549 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1551 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1553 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1555 * lilypond-mode.el (LilyPond-command-query): ignore case.
1557 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1559 * VERSION: 1.5.29 released
1561 * all files: change 2001 to 2002 in headers globally
1563 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1564 cheese") font. WARNING: fonts changed.
1566 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1568 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1570 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1572 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1574 * mf/*.mf: Fixed a few typos in various .mf files
1576 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1578 * mf/: added macro soft_penstroke
1580 softened some glyphs
1581 redrawn triangular noteheads
1583 added classical quarter rest
1585 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1587 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1588 lines and staff_space>=2
1590 * lily/rest.cc: Use default rests when current style glyphs not
1592 \property Staff.Rest \override #'style = #'classical
1594 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1596 * input/bugs/first-tie.ly: New file.
1598 * input/bugs/spacing-clash.ly: New file.
1600 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1604 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1606 * lilypond-indent.el: New file providing indentation for
1607 parenthesised blocks of lilypond code in Emacs
1609 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1610 indentation and handle block comments properly. Distinguish
1611 accents from close-brackets in fontification.
1613 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1615 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1617 * Documentation/windows/installing.texi:
1618 * Documentation/windows/compiling.texi: Include from 1.4.10.
1620 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1622 * input/bugs/first-midi-tie.ly: New file.
1624 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1626 * VERSION: 1.5.28 released
1628 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1629 illicit beams on [c4 c4] etc.
1631 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1632 file. Make separate iterator for Bar_checks. Bar_check now happen
1633 outside engravers, meaning that you can use them with
1634 skipTypesetting. Associated changes in other files.
1636 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1639 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1641 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1643 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1645 * lily/stem.cc (set_spacing_hints): removed function
1647 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1648 correction for spacing; now take vertical extents of the stem into
1651 * lily/third-try.cc: More hacking to get spacing working.
1653 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1654 sits at staff level and creates note spacing objects. Scrap it
1655 again, and document why.
1657 * lily/include/group-interface.hh: rename functions.
1659 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1661 * stepmake/stepmake/c++-rules.make:
1662 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1664 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1666 * make/lilypond-vars.make:
1667 * scripts/ly2dvi.py (setup_environment):
1668 * scripts/lilypond-book.py (setup_environment): Also set tex
1671 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1673 * VERSION: 1.5.27 released.
1675 * Documentation/user/refman.itely (Bar numbers): added bar number
1678 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1681 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1683 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1684 spread the last few lines all over the last page of a score.
1686 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1688 * lily/third-try.cc: 3rd try at revising spacing
1689 engine. Not yet finished.
1691 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1694 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1695 collecting past note heads.
1697 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1700 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1701 class. Keep a queue of grobs that are still playing in busyGrobs.
1703 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1704 function. Use busyGrobs to detect playing notes.
1706 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1708 * Documentation/topdocs/INSTALL.texi: Added note about broken
1709 python-2.1. Updated note for Debian's broken (well, broken for
1710 our use anyway) tex configuration.
1712 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1714 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1715 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1717 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1718 (But left margin of png's still misses a few pixels. Arg.)
1720 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1722 * lilypond-mode.el (LilyPond-command-next-midi): Make
1723 possible to kill midi-process (using "C-c C-m").
1725 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1727 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1728 Convert strings with dimensions to numbers.
1730 * lily/volta-engraver.cc: only make a bracket for the top staff,
1731 as found in stavesFound.
1733 * lily/bar-number-engraver.cc: remove staff administration.
1735 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1736 administration. This breaks support for invisible-staff.
1738 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1739 symbols into stavesFound.
1741 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1742 grobs, and put them into columns.
1744 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1745 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1747 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1749 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1750 midi section in the Emacs-mode, so it is possible to play certain
1751 score in a multiscore lilypond-file.
1753 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1754 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1755 (FIXME: not accessible from guile)
1757 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1758 better support for Kurt Stone's suggestions.
1759 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1761 Changed property: localKeySignature.
1762 Added properties: extraNatural, autoAccidentals,
1765 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1767 * ly/property-init.ly: added commands
1768 \defaultAccidentals \modernAccidentals \modernCautionaries
1769 \noResetKey \forgetAccidentals
1771 * ly/engraver-init.ly: Correct initialization of new accidentals.
1773 * scm/translator-property-description.scm: The new properties
1776 * input/: Some examples added, some changed.
1778 * Documentation/regression-test.tely: Added quick test of new
1781 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1783 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1786 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1788 * lily/beam.cc (before_line_breaking): Make beams without stems
1789 or with only one stem disappear.
1791 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1793 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1794 files to have standardised HTML bibliography output. Update build
1795 docs to reflect this.
1797 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1798 active_count_, so that we don't have to look for active springs
1801 * scm/interface-description.scm,scm/grob-property-description.scm:
1804 * lily/simple-spacer.cc (solve): Handle forced line breaks
1805 here. Fixes problems when combining linebreaks with non-fitting
1808 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1810 * 1.4.9.jcn3 forward ports.
1812 * Really included .cvsignore.
1814 * Included Han-Wen's uu1 windows fixes.
1816 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1818 * Added Cygwin setup.hint
1820 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1821 tetex/texmf, python installations.
1823 * Updated cygwin installer.
1825 * ly2dvi: Don't accept filenames with spaces (+ fix).
1827 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1829 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1831 * lily/translator-def.cc: Remove manual symbol caching.
1833 * lily/script-column.cc (before_line_breaking): robustness check:
1834 don't crash if no direction set.
1836 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1838 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1842 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1844 * lily/note-head.cc (head_extent): added to compute width without
1845 ledger lines. By default, ledger lines take up width now.
1847 * input/regression/fingering.ly: demonstrate auto fingering.
1848 Horizontal placement is still buggy.
1850 * lily/fingering-engraver.cc (class Fingering_engraver):
1851 added. Provides support for horizontal fingering scripts
1853 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1855 * lily/side-position-interface.cc (add_staff_support): add staff
1856 only for Y-axis side positions.
1858 * lily/parser.yy (request_chord): Fix mem leak.
1860 * lily/musical-request.cc (transpose): moved to Music::transpose()
1862 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1863 can store grobs as grob-creation cause as well.
1865 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1866 handle when adding. Use precomputed symbols throughout lily.
1868 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1869 track of spacing issues.
1871 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1872 to keep track of staff spacing
1874 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1876 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1877 code clean from conditionals and have a concentrated sets of
1878 compatibility fixes for old guile versions.
1880 * Fixes for guile 1.4, including embedded ps.
1882 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1884 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1885 well for markup texts.
1887 * lily/musical-request.cc (length_mom): kludge for null pointer.
1889 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1891 * scm/lily.scm (sign): bugfix
1893 * CHANGES: Change log instated.
1895 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.