1 2002-05-03 Mats Bengtsson <mats.bengtsson@s3.kth.se>
3 * lily/chord-tremolo-engraver.cc (try_music): Handle chord
4 tremolos of dotted duration.
6 2002-05-04 Han-Wen <hanwen@cs.uu.nl>
8 * input/mozart-hrn*.ly: many corrections.
10 * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts to
11 support for dynamic scripts.
13 * lily/accidental-placement.cc (position_accidentals): check for
14 collisions as well: should avoid those heads too.
16 * lily/beam.cc (check_concave): allow undefined gap and
17 threshold. Change the meaning of threshold/gap == 0.0.
18 (check_concave): skip Stolba concaveness check if we have a knee
21 2002-05-03 Han-Wen <hanwen@cs.uu.nl>
23 * mf/feta-klef.mf: more twiddling with G clef. Almost straight
24 downstroke again. Sigh.
26 * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
29 2002-05-02 Han-Wen <hanwen@cs.uu.nl>
31 * lily/slur.cc (add_column): allow slur over rest.
33 2002-04-27 Han-Wen <hanwen@cs.uu.nl>
35 * lily/beam.cc: move scoring constants out of code
37 2002-04-25 Han-Wen <hanwen@cs.uu.nl>
39 * mf/feta-nummer.mf: scalability fixes.
41 * mf/feta-nummer-code.mf: fixes for 5, 8.
43 * mf/feta-klef.mf: G clef fixes.
45 2002-04-25 Jan Nieuwenhuizen <janneke@gnu.org>
47 * scripts/ly2dvi.py: Mats' fix. Try to import pre if available.
49 * scripts/lilypond-book.py: %Newline, rather than glue macros
52 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
54 * Documentation/user/lilypond-book.itely:
55 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
58 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
60 * scm/grob-property-description.scm (beam-space): Junk.
62 * lily/beam.cc (space_function): New method.
63 (get_interbeam): Call space-function.
65 * scm/grob-description.scm (Beam): Initialize space-function with
68 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
69 Beam.space-function. Don't quantise grace beams.
71 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
73 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
76 * Documentation/index.texi: add PDF links.
78 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
80 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
81 compare #'glyph as strings.
83 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
85 * scripts/ly2dvi.py (setup_environment): fix by Mats.
87 * lily/stem.cc (head_count): Change function name. Change property
88 to #'note-heads i.s.o. #'heads.
89 (position_noteheads): Kern noteheads for invisible stems.
90 (before_line_breaking): Do position_noteheads() for whole note
93 * lily/accidental-placement.cc (position_accidentals): First
94 determine refpoints, only then determine extents.
96 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
98 * lily/accidental-placement.cc (position_accidentals): use all
99 note heads for note head-skyline.
101 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
103 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
105 * Documentation/windows/setup.hint (requires): Add gsview dependency.
107 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
109 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
111 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
113 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
115 * mf/feta-schrift.mf: lighter staccato.
117 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
119 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
121 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
123 * VERSION: 1.5.53 released
125 * scm/lily.scm (ly-load): use primitive-load for loading.
127 * lily/misc.cc: remove quantise_iv()
129 * lily/*.cc: pass read-only arrays by reference.
131 * lily/grob.cc (common_refpoint_of_array): new function. Try to
132 use common_refpoint_of_{array, list} when possible.
134 * lily/include/accidental-placement.hh: new file.
136 * lily/accidental-placement.cc (alignment_callback): position
137 accidentals in a better way.
139 * lily/skyline.cc: new file. Compute distances for collections of
142 * lily/include/skyline.hh: new file
144 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
146 * lily/accidental.cc (class Accidental_interface): grob for a
149 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
152 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
153 together with new accidental-interface.
155 * lily/include/*.hh: remove spurious set_interface() decls.
157 * lily/key-signature-interface.cc (brew_molecule): add padding for
158 natural signs. Make natural typesetting like the sharp.
161 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
162 is now slightly curved, not straight.
165 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
167 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
169 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
170 more strictly. Use more clever regular expressions. Commented regexps.
172 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
174 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
176 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
178 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
179 to control width of staff symbol in ragged-right mode (by request
182 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
183 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
184 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
185 added support for ligature brackets (needed when transcribing
188 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
190 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
191 Fontify notes more strictly.
193 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
195 * mf/feta-din-code.mf: dynamic z sign.
197 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
199 * lilypond-mode.el: Prevent recoloring strings and comments.
201 * lilypond-font-lock.el: Handle block comments: block comments
202 can have also ordinary comments inside.
204 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
206 * lily/stem.cc (get_default_dir): set direction to CENTER if
207 invisible. Various other fixes to deal with invisible stems and
208 stem-direction == CENTER.
210 * lily/rest-collision.cc (do_shift): take direction from note if
213 * input/regression/tie-grace.ly: new file.
215 * lily/tie-engraver.cc (create_grobs): fix tied graces.
217 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
218 knee correction. Fixes tight spacing for knees.
220 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
222 * VERSION: 1.5.52 released
224 * lily/*.cc: add some undocced properties.
225 scm/grob-description.scm: idem.
227 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
229 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
230 multi-measure rests like "R1 *4" and scheme (typically has '#'
231 in the beginning). Small fixes. Add few reserved words.
233 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
235 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
238 * Documentation/windows/installing.texi: Suggest gswin32c (console
239 program) for getting the version. Layout fixes.
241 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
243 * Documentation/user/tutorial.itely (Running LilyPond): Separate
244 windows viewing commands, remove silly comment about Yap.
246 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
248 * Documentation/topdocs/INSTALL.texi: Describe how to learn
249 configure to find kpathsea on for example Slackware 8.0.
251 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
253 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
254 by default: avoid "1" over single bar rests.
256 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
257 and correct the handling of geometry options.
259 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
261 * lily/include/grob-interface.hh (ADD_INTERFACE): make
262 implementation for Class::has_interface automatically. Junk all
263 other implementations.
265 * lily/grob.cc (internal_get_grob_property): also typecheck
266 property reads. Catches even more undocced properties. Bugfixing
267 left for the uninspired masses.
269 * lily/beam.cc: remove end_after_line_breaking().
271 * lily/grob.cc (calculate_dependencies): remove list support for
274 * lily/font-size-engraver.cc: only do font-interface.
276 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
278 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
281 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
283 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
284 brackets using arpeggio requests.
286 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
287 molecule-callback to use for drawing the brackets.
289 * Documentation/user/refman.itely:
290 * input/test/chord-bracket.ly: Chord brackets documented
292 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
294 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
296 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
298 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
300 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
301 direction tuplets on beams.
303 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
305 * lilypond-indent.el: Bugfix of indentation of final point in buffer
307 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
309 * lilypond-mode.el: new command: LilyPond-un-comment-region.
310 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
311 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
312 submenu to "LilyPond"-menu.
314 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
315 an interface to play midi.
317 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
319 * input/regression/script-stack-order.ly: new file.
321 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
323 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
325 * mf/feta-din-code.mf: kerning for dynamics.
327 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
329 * input/regression/dynamics-glyphs.ly: new file
331 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
333 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
334 forte f for the 2 number. Some fixes for the other bulbed glyphs.
336 * Documentation/windows/gs-profile.sh:
337 * Documentation/windows/gsview-profile.sh: Remove. Functionality
338 moved to gs/gsview windows packages.
340 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
342 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
343 finding out the duration. Fixes chord tremolo bug.
345 * lily/completion-note-heads-engraver.cc (process_music): Set
346 correct duration for all requests of the broken notes.
348 * input/regression/completion-heads.ly: Added example of
349 Completion_heads_engraver.
351 * lilypond-mode.el: Added "2Midi" command
353 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
355 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
356 edge-width, edge-height and shorten-pair properties for tuplet
359 * lilypond-indent.el: Support for blinking of matching parentheses
361 * lilypond-font-lock.el: Fix fontification of closing > on its own line
363 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
364 cleanups of piano pedal brackets.
366 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
368 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
370 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
372 * mf/feta-new-code.mf: new dynamic f sign.
375 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
377 * mf/feta-new-code.mf: new dynamic p sign.
379 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
381 * lily/note-spacing.cc (stem_dir_correction): only do
382 beam-correction if a beam is there.
384 * lily/stem.cc (duration_log): change from flag_i (); better
386 (get_default_stem_end_position): fix dot/flag collision code.
388 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
390 * VERSION: release 1.5.50
392 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
393 unit spring here. Reduces number of warning messages.
395 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
397 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
399 * scm/generic-property.scm: remove generic-property, property-engraver
401 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
403 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
405 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
407 * scm/*.scm: remove volta, hairpin and tuplet functions.
409 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
410 note column for notes/stems/dots that already have parents. Fixes
411 nested grace contexts.
413 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
415 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
416 get too curved slurs.
418 * scm/slur.scm (default-slur-extremity-offset-alist)
419 (default-phrasing-slur-extremity-offset-alist): Move slur
420 attachments further away from note-head, vertically. Also, leave
421 a horizontal gap between slur and stem end.
423 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
425 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
427 * input/regression/spacing-grace-duration.ly: new file
429 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
430 for shortest durations.
432 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
433 extent of the mm rest.
435 * lily/spacing-spanner.cc (get_duration_space): better spacing for
438 * lily/tuplet-bracket.cc (make_bracket): new function
439 (get_x_offset): new function; make tuplet brackets align on stems
440 if stem has same direction.
441 (parallel_beam): be anal about matching bracket to tuplet.
443 * lily/lookup.cc (line): new function Lookup::line().
445 * scm/tex.scm (dashed-line): change -line to -system in names.
447 * lily/box.cc (add_point): new function.
449 * flower/include/interval.hh: new function add_point ().
452 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
454 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
456 * scm/grob-property-description.scm (number-threshold): Add
459 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
460 rest if #measures > number-threshold. Use padding (well, fake
463 * scm/font.scm (make-style-sheet): New styles: mark-number,
465 (paper20-style-sheet-alist): Add bigger bold fonts.
467 * lily/mark-engraver.cc (process_music): Use style mark-number or
470 * .cvsignore: Ignore all kinds of lilypond input and output.
472 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
474 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
476 * lily/staff-symbol.cc (brew_molecule): make line thickness
479 * lily/*.cc: replace stafflinethickness by linethickness.
481 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
483 * input/regression/beam-concave.ly: Add to-be-considered-concave
486 * lily/beam.cc (check_concave): Add check for large gap between an
487 inner notehead and the line through outer noteheads.
489 * scm/grob-description.scm (Beam): Add concaveness-gap, default
490 value 2.0 staff-space.
492 * scm/grob-property-description.scm (concaveness-gap): Add
495 * input/mozart-hrn3-allegro.ly: Fix typo.
497 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
499 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
500 lily/note-head-engraver: improved implementation of roundfilledbox
501 (according to Han-Wen's request)
503 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
504 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
505 lily/simple-spacer.cc: ragged-right alignment
507 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
509 * input/regression/spacing-note-flags.ly: new file
511 * input/regression/spacing-rest.ly: new file
513 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
515 * lily/spacing-spanner.cc (note_spacing): make note spacing after
516 all grace notes tight (not only the column directly following a
519 * scm/grob-description.scm (all-grob-descriptions): don't make
520 mm-rests larger than normal.
522 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
523 curved. Remove white space at the right of flags.
525 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
527 * ports/ports.make: Bugfix: ignore CVS directories.
529 * stepmake/.cvsignore: New file.
531 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
533 * lily/note-spacing.cc (stem_dir_correction): don't correct when
534 there is a flag on the stem.
536 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
538 * scm/grob-property-description.scm (measure-length):
539 measure-length grob property.
541 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
542 better spacing for breakable columns when they're juxtaposed: use
543 measure length if applicable
545 * lily/timing-engraver.cc (start_translation_timestep): store
546 measure length in breakable column at start of measure.
548 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
550 * ROADMAP: Add description for ports dir, to check email upon
553 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
555 * VERSION: 1.5.48 released
557 * lily/multi-measure-rest.cc (symbol_molecule): split off from
559 (set_spacing_rods): Use symbol_molecule() to determine minimum
561 (church_rest): split off from brew_molecule()
562 (big_rest): split off from brew_molecule(). Construct using
565 * mf/feta-eindelijk.mf: junk multi measure rest.
567 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
569 * lily/multi-measure-rest.cc (add_column): remove columns property.
571 * lily/dynamic-engraver.cc (process_music): add more verbose warning
573 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
576 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
578 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
579 keywords covered, dropped some non-keywords, include R- and 128-notes
581 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
583 * Code clean-up: Junk multiple implementations of ledger line
584 creation in note_head, custos, and porrectus. This is important
585 since there soon will be some more applications of ledger lines to
586 come (e.g. ambitus engraver).
588 * Make thickness of ledger lines adjustable. This is essential
589 for mensural notation.
591 * Fix some bugs in the current ledger_line implementation, most
592 notably that of the horizontal extent of ledger lines which equals
593 at least the extent of the metafont ledger_line character, and
594 which grows(!) if the desired extent shrinks below this limit.
596 * roundfilledbox: variable blotdiameter
598 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
600 * VERSION: 1.5.47 released
602 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
604 * lily/porrectus.cc: change line-thickness to thickness, change
605 stem-direction to direction.
607 * scm/backend-documentation-lib.scm (check-dangling-properties):
608 Automatically detect doc'ed properties that are not in an interface
610 * scm/grob-property-description.scm: property cleanup. Remove many
611 paper-column props that are non-existent.
613 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
614 the grob has a molecule-callback.
616 * lily/*.cc: remove many set_interface() calls, and their
619 * input/regression/spacing-knee.ly: new file
621 * input/regression/spacing-clef-first-note.ly: new file
623 * lily/staff-spacing.cc (get_spacing_params): different spacing
624 for pref matter to note at start of line, halfway during line.
626 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
627 correction only if stems have same direction (i.e. not for
628 stem-clef combination).
629 (stem_dir_correction): maximal correction for knees.
631 * lily/*.cc: many updates to interface descriptions.
633 * lily/grob.cc (internal_set_grob_property): add interface check
634 for every set_grob_property call
636 * lily/*.cc: document interface stuff in C++
638 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
640 * lily/volta-bracket.cc: naming: change volta spanner to
643 * input/bugs/*.ly: cleanup, remove lots of files.
645 * buildscripts/mf-to-table.py (write_ps_encoding): generate
646 .encoding file. WARNING: upgrade to pktrace 1.0.3
648 * mf/feta-toevallig.mf: change PS name for parentheses.
650 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
652 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
655 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
657 * lily/scope.cc: remove file .
659 * lily/include/scope.hh: remove file. Remove Scope class
663 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
664 score_forbidden_quants): ): take out of SCM, pass parameters so
665 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
667 (calc_stem_y): robustness: take care of last_visible_stem == 0.
670 * lily/lily-guile.cc (ly_unit): return internal unit.
672 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
674 * lily/paper-outputter.cc (output_version): output internal unit
677 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
679 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
681 * scripts/ly2dvi.py: clean up old .*pk font caching code.
683 * scm/ps.scm: Use uppercase postscript font names for the standard
686 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
687 Add all available TeX Type1 fonts, including Feta, to the
688 Ghostscript font path.
690 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
691 version (affects the FontName) in lilypond.map.
693 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
694 documentation file to fetaNNlist.ly to avoid name collisions between
695 lilypond generated .tex file and font .tex macros file.
698 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
700 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
701 made mensural longa and (semi-)brevis leaner
703 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
705 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
706 clean-up: moved bezier shape and slope from porrectus to lookup
708 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
709 and /usr/share/texmf/fonts
711 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
713 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
715 * lily/text-spanner.cc (brew_molecule): add #'thickness
716 (brew_molecule): add corrections for thickness in molecule padding.
718 * lily/line-spanner.cc (line_atom): make function private
720 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
721 discover bounding box. This solves the cropping problem.
723 * lily/bar-check-iterator.cc (process): Only resynchronize bar
724 check when it fails. This fixes the combination of grace notes
727 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
729 * lily/repeated-music.cc (minimum_start): new Scheme callable function
730 (first_start): new Scheme callable. This will fix repeated music
731 starting with grace notes.
733 * lily/music.cc (start_mom): check start-moment-function grob property.
735 * VERSION: 1.5.45 released
737 * input/regression/system-extents.ly: new regression test. Test
740 * lily/system.cc: rename LineOfScore into System
742 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
744 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
745 (ly_get_extent): new Scheme function ly-get-extent
747 * ps/lilyponddefs.ps: use output-scale for line-x
750 * scm/ps.scm (font-load-command):
753 2002-03-20 Rune Zedeler <rune@zedeler.dk>
755 * lily/beaming-info.cc: Stupid typo fixed
757 * lily/accidental-engraver.cc: rewrote accidental-routines to get
758 support for cross-context auto-accidentals.
759 Now the engraver can stay in Staff-context and see other contexts
761 Changed properties: autoAccidentals, autoCautionaries
763 * lily/translator-group.cc (set_children_property):
764 Function added recursively setting the same property (deep_copied)
765 for all children of a Translator_group.
767 * ly/property-init.ly: added commands
768 \pianoAccidentals \voiceAccidentals
769 \modernVoiceAccidentals \modernVoiceCautionaries
771 * ly/engraver-init.ly: Correct initialization of new accidentals.
773 * scm/translator-property-description.scm: Updated
775 * input/regression/accidental-voice.ly: Added
777 * Documentation/regression-test.tely: Added new test
779 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
781 * VERSION: 1.5.44 released
783 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
785 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
787 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
790 * tex/feta*.tex: remove.
792 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
793 all software dealing with it.
795 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
797 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
798 (this fixes pdf output). Drop awk dependency.
800 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
801 dimensions (linewidth) are in mm.
803 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
805 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
807 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
809 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
811 * VERSION: 1.5.43 released
813 * scm/beam.scm (beam-dir-majority-median): if majority is
814 undecided, use median. Removes a forced dir in sarabande.
816 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
818 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
820 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
821 widths, heights and shortens are now customisable properties.
823 * scm/grob-description.scm, scm/grob-property-description.scm: New
824 properties added to PianoPedalBracket, unnecessary
825 Y-offset-callbacks removed from *Pedal, undocumented properties
828 * Documentation/user/refman.itely: Piano pedal updates.
830 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
832 * scm/grob-property-description.scm:
833 * scm/interface-description.scm: Remove old stuff.
835 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
836 0.48 (previously 0.42).
837 (Beam): Remove old stuff.
840 * lily/stem-tremolo.cc:
842 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
843 (previously space-function).
845 * stepmake/bin/add-html-footer.py: Website title fix.
847 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
849 * scripts/ly2dvi.py (environment): use new font searching setup.
851 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
853 * lily/tfm.cc (dimensions): make code dimension independent
855 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
858 * tex/lily-ps-defs.tex: scaling for PS points and MM.
860 * lily/include/dimensions.hh: try MM as internal unit.
862 * scm/*.scm: remove invoke-dim1
864 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
866 * GNUmakefile.in (fontpaths): add fontpaths target,
868 * make/mutopia-targets.make: add PDF rules.
870 * make/mutopia-rules.make: add pdf rule.
872 * buildscripts/mutopia-index.py (list_item): add PDF.
874 * buildscripts/lilypond-profile.sh (TEXMF): typo.
876 * make/lilypond-vars.make: set TEXMF for the new font setup.
878 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
880 * VERSION: 1.5.42 released
882 * mf/feta-schrift.mf: endless twiddling of Tr.
884 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
885 endless twiddling with the bulb shape.
887 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
888 little smaller if there is an accidental.
890 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
892 * buildscripts/lilypond-profile.sh:
894 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
895 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
896 Implement new font installation strategy
898 * Documentation/misc/fontinstallation (TEXMF): Documentation of
899 the new font installation strategy.
901 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
904 * input/test/staff-size.ly: Simplified using StaffContainer
906 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
909 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
911 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
913 * lily/beam.cc (score_stem_lengths): new quanting stuff
914 (score_forbidden_quants): Second and third beam quant stuff.
916 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
918 * lily/beam.cc (least_squares): Remember least-squares-dy for
920 (quantise_interval): Don't quant to dy steeper that
921 least-squares-dy. Return empty interval if no sane quants found.
922 (quantise_position): Try quantise_interval until we have
925 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
927 * scm/interface-description.scm (beam-interface): Update.
929 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
931 * VERSION: 1.5.41 released
933 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
934 optima serifs on top of t, bottom of r.
936 * mf/feta-bolletjes.mf: make ledger line rounder.
938 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
940 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
943 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
945 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
946 well as text pedal indications and a combination of both. All
947 pedal indications are horizontally aligned on a line spanner.
949 * lily/text-spanner.cc: Edge-width property added to use in
950 bracketed piano pedals. Function setup_sustain_pedal added to set
951 the dimensions of the brackets.
953 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
954 some of the *Pedal properties tweaked.
956 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
957 edge-width (TextSpanner) properties.
959 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
961 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
962 fontified identifiers list.
964 * input/test/pedal.ly: New pedal features added.
966 * Documentation/user/refman.itely: New pedal features documented.
969 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
971 * lily/include/new-beam.hh: Previously new-beam.hh
972 * lily/beam.cc: Previously new-beam.cc
973 (least_squares): Bugfix: don't barf on beams with less than two
974 visible stems (tremolos).
977 * scm/grob-description.scm (Beam): Junk old beam stuff.
980 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
984 * mf/feta-eindelijk.mf: new 8th rest.
986 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
987 stick out of staffline
989 * scripts/lilypond-book.py: fixes for texi regular expressions.
991 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
993 * lily/include/new-beam.hh:
994 * lily/new-beam.cc: New file.
996 * flower/include/interval.hh:
997 * flower/include/interval.tcc (delta): New method.
998 (swap): Now public (previously private).
1000 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1001 1 staff-line-thickness. Sadly, this makes dy quanting problems
1002 (dy quants allowed should depend on actual left y) more visible.
1004 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
1006 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
1008 * scm/grob-property-description.scm (concaveness-threshold): Add
1009 typecheck and description.
1011 * scm/grob-description.scm (Beam): Remove obsolete properties, add
1012 concaveness-threshold (previously concaveness).
1014 * lily/beam.cc (check_concave): Remove choices and debugging
1015 stuff: use best concaveness calculation.
1016 (quantise_dy): Remove choice. Try to never make a slope steeper
1017 by quantising, but certainly never quantise a slope away.
1018 (check_stem_length_f): Remove choice. In case of lengthening
1019 alowed, always lengthen to ideal length.
1021 * Documentation/index.texi: Fix FAQ url.
1023 * Documentation/topdocs/INSTALL.texi: Add information about fink,
1024 compile fix and 1.4 specific fix that doesn't hurt 1.5.
1026 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
1028 * VERSION: 1.5.39 released
1030 * lily/simple-spacer.cc (add_rod): rods take precedence over
1031 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1033 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1035 * lily/note-spacing.cc (get_spacing): only insert space for
1036 accidentals if necessary.
1038 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1040 * lily/spacing-spanner.cc (musical_column_spacing): new
1041 function. Have correct spacing from note to end-of-line as well.
1043 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
1045 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1047 * darwin.patch: New file.
1049 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1050 code. Shorten stems by fraction of stems to be shortened.
1052 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1053 of shorten value for boundary cases.
1055 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1056 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1058 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1060 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1062 * scm/grob-description.scm (Beam): Add concaveness. Replace
1063 Beam::cancel_suspect_slope with Beam::check_concave.
1065 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1066 set slope to horizontal if concaveness > Beam.concaveness. This
1067 handles cases that kludgy cancel_suspect_slope was meant to catch
1069 (cancel_suspect_slope): Remove.
1071 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1073 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc allow for
1074 stemLeftBeamCount and stemRightBeamCount to equal 0.
1077 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1079 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1080 fixed spacing for pref matter, if the next column is musical, and
1083 * lily/note-spacing.cc (stem_dir_correction): Use correct
1084 discretionary for stem-bar spacing.
1086 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1088 * VERSION: 1.5.38 released
1090 * lily/grob.cc (warning): Use cause tracking to give more
1091 meaningful errors from the backend.
1093 * lily/property-iterator.cc (check_grob): Warn if setting grob
1094 property in unknown grob.
1096 * mf/feta-toevallig.mf: brushed stems for natural sign.
1098 * lily/molecule.cc (align_to): don't translate empty molecule.
1099 (this triggers a very subtle bug in time-signature.)
1101 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1103 * lily/spring.cc: remove file.
1105 * input/regression/spacing-stem-bar.ly: new file
1107 * lily/score.cc (run_translator): resurrect point-and-click
1109 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1112 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1113 spacing is now globally determined, using the most common shortest
1114 note. Notes that are shorter are spaced geometrically, and with
1115 expand hints. This makes spacing more even, and measures that have
1116 very short notes won't be that stretched out.
1118 * mf/feta-klef.mf: F-clef fixes, documentation on the
1119 shape. (WARNING: font changed.)
1121 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1123 * lily/simple-spacer.cc (add_columns): support for infinitely
1126 * lily/staff-spacing.cc (get_spacing_params): space after
1127 prefatory matter is fixed.
1129 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1131 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1132 barline following an upstem.
1134 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1135 function from next_notes_correction().
1136 (bar_y_positions): idem.
1138 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1140 * input/regression/break.ly (texidoc): bugfix: escape \ in
1143 * lily/staff-spacing.cc (next_notes_correction): Correct the
1144 spacing of a note following a barline.
1147 2002-03-04 Glen Prideaux
1149 * mf/feta-solfa.mf: Shaped note heads
1151 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1153 * VERSION: 1.5.37 released
1155 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1156 left-align molecule.
1158 * lily/break-align-interface.cc (do_alignment): completely
1159 rewritten. Now it does not use Align_interface anymore, but a
1160 separate routine. Like StaffSpacing, it reads space-alist from the
1161 breakable grobs. This allows you to set spacing using
1163 \property Staff.Clef \override #'space-alist = '(....stuff....)
1165 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1166 to Bar_line. Move files around as well.
1168 * lily/time-signature.cc (time_signature): left align time signatures.
1170 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1171 Corrections of the glyph shape C. Comments added.
1173 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1175 * lily/spacing-spanner.cc: move from third-try.cc; rename
1176 Third_spacing_spanner to Spacing_spanner.
1178 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1179 spacing stuff. Much cleaner now, and we prepare for neat spacing
1180 tricks around bar lines and such.
1182 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1183 variables with themselves. (Ouch.)
1185 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1188 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1192 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1195 * lily/music.cc (ly_get_mus_property): typechecking
1196 (ly_set_mus_property): idem
1197 (ly_make_music): idem
1198 (ly_music_name): idem
1200 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1202 * lily/note-spacing.cc (stem_dir_correction): correction for
1203 same stem notes as well.
1205 * lily/pitch.cc (pitch_transpose): stricter typechecking
1207 * mf/parmesan*mf: magnification fixes.
1209 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1211 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1213 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1214 documenting the font. (Doesn't work for parmesan at the moment)
1216 * Documentation/user/appendices.itely (The Feta font): Add list of
1217 Feta font symbols with names.
1219 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1222 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1224 * lily/translator-group.cc (ly_set_trans_property): typechecking
1225 (ly_get_trans_property): typechecking.
1227 * lily/font-metric.cc (ly_text_dimension): typechecking
1228 (ly_find_glyph_by_name): idem.
1230 * scm/bass-figure.scm (brew-complete-figure): support for
1233 * lily/grob.cc (ly_get_paper_var): new function
1235 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1237 * VERSION (PATCH_LEVEL): 1.5.35 released.
1239 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1240 (bracket): New function.
1242 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1243 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1245 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1248 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1251 * lily/grob.cc (ly_get_grob_property): be anal about types.
1252 (ly_set_grob_property): idem
1254 * lily/figured-bass-engraver.cc (process_music): move molecule
1255 building completely to Scheme
1257 * lily/include/musical-request.hh (class Bass_figure_req): Add
1260 * lily/parser.yy (bass_figure): add support for space figure.
1262 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1264 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1266 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1267 (ly_align_to_x): new function ly-align-to!
1269 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1270 function ly-get-font
1272 * mf/feta-nummer.mf: include normal-space dimension.
1274 * lily/collision.cc (check_meshing_chords): don't merge collisions
1277 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1280 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1282 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1284 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1286 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1289 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1292 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1293 scm/grob-description.scm: added mensural fermata symbol
1295 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1297 * VERSION: 1.5.34 released.
1299 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1301 * lily/staff-symbol-referencer.cc (callback): assume that
1302 staff-position is unset in general.
1304 * input/regression/rest-pitch.ly: new file.
1306 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1309 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1311 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1312 as Scheme option. Run regression test by default with
1313 internal-type-checking.
1315 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1317 * lily/lily-guile.cc (type_check_assignment): changed functions.
1319 * scm/*description*.scm: be anal about typechecks. Some changes
1320 for internal variable names.
1322 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1324 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1326 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1328 * VERSION: 1.5.33 released.
1330 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1331 flare_path everywhere (c-clef, numbers).
1333 * lily/bar-number-engraver.cc (process_music): also print bar
1334 number if measure starts with grace note.
1336 * input/regression/grace-bar-number.ly: new test.
1338 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1340 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1343 * scm/music-functions.scm (voicify-music): split chords into
1344 different voices automatically.
1346 * lily/music.cc (ly_music_list_p): new function
1348 * lily/music-sequence.cc (do_relative_octave): robustification
1350 * scm/music-functions.scm: many utility functions
1352 * lily/music.cc (ly_set_mus_property): add type checks to the
1353 Scheme property assignment.
1355 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1358 * mf/lilypond.map: .map file from Mats' page.
1360 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1362 * Some more parmesan related fixes;
1364 * Custos: varying shape (in particular, stem length), depending on the
1365 vertical position of the custos (on staffline / between stafflines);
1367 * Custos: added grob property "neutral-direction" (same semantics as
1368 with stem); introduced new grob property "neutral-position";
1370 * Time-signature: print a warning when resorting to default layout.
1372 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1374 * lily/translator-group.cc (add_fresh_simple_translator): remove
1375 function; initialize() is called through
1376 Translator_group::initialize().
1378 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1379 for the neighbors of a loose column.
1381 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1382 position loose columns so that they don't collide.
1384 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1386 * VERSION: 1.5.32 released.
1388 * scm/font.scm: remove font-name symbol.
1390 * mf/GNUmakefile: use pktrace for making PFAs
1392 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1394 * lily/rest-collision.cc (do_shift): read direction field from
1395 rest-column in case of note-rest collision. This should fix some
1396 problems with rest collisions.
1398 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1400 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1403 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1404 property. Read pitch directly from #'cause.
1406 * mf/feta-puntje.mf: bugfix
1408 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1410 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1412 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1414 * Documentation/windows/compiling.texi: Update.
1416 * Documentation/index.texi: Add link to orphaned compiling for
1419 * Documentation/footer.html.in: Comment fix.
1421 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1423 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1425 * VERSION: 1.5.31 released
1427 * lily/new-spacing-spanner.cc: remove file.
1429 * lily/third-try.cc (do_measure): only take spacings into account
1430 if they pertain to the column pair under consideration. This fixes
1431 spacing bug when mixing eighths triplets and normal eighths.
1433 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1434 lines don't take up space anymore. Document why in note-head.cc
1437 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1439 * lily/font-interface.cc (get_font): reinstate
1440 #'font-magnification. See input/regression/font-magnification.ly
1441 (get_font): Change the definition of #'font-name grob property.
1443 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1444 that have a #'cause field.
1446 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1448 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1450 * mf/GNUmakefile: remove metapost stuff
1452 * stepmake/aclocal.m4: remove metapost detection stuff.
1454 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1456 * mf/GNUmakefile (FET_FILES):
1457 (FONT_FILES): Include parmesan.
1459 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1462 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1464 * Documentation/user/refman.itely (Paper size): Quote braces.
1466 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1468 * stepmake/aclocal.m4: fixed bison version check to be more
1471 * lily/stem.cc (position_noteheads): fix for cluster chords.
1473 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1475 * python 2.2 support.
1477 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1479 * VERSION: 1.5.30 released
1481 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1483 * Documentation/user/refman.itely (Dynamics): add a note about
1486 * scm/grob-description.scm: add a 'translator-type? object
1487 property, so that \property Foo.Bar =\turnOff doesn't cause
1490 * lily/translator-group.cc (add_fresh_group_translator): make
1491 new add-translator functions to make distinction between fresh and
1492 used group-translators. Fixes problem with scripts on auto-changing voice
1494 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1495 add to Score_performer. Fixes bar checks in MIDI
1497 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1498 heads. Fixes many quirks with ties.
1500 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1501 in the grob property #'cause, instead of using Grob_info.
1503 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1504 staff context, fixing dot alignment on collisions.
1506 * lily/beam-engraver.cc (try_music): remove can't find beam start
1507 warning, so that skipTypesetting won't complain.
1509 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1511 * Documentation/user/refman.itely (Paper size): Documentation fix,
1514 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1516 * scm/grob-description.scm: \breathe: Use feta font comma by default
1518 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1520 * input/template/piano-dynamics.ly (pedal): Simplified
1522 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1524 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1526 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1528 * lilypond-mode.el (LilyPond-command-query): ignore case.
1530 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1532 * VERSION: 1.5.29 released
1534 * all files: change 2001 to 2002 in headers globally
1536 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1537 cheese") font. WARNING: fonts changed.
1539 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1541 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1543 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1545 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1547 * mf/*.mf: Fixed a few typos in various .mf files
1549 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1551 * mf/: added macro soft_penstroke
1553 softened some glyphs
1554 redrawn triangular noteheads
1556 added classical quarter rest
1558 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1560 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1561 lines and staff_space>=2
1563 * lily/rest.cc: Use default rests when current style glyphs not
1565 \property Staff.Rest \override #'style = #'classical
1567 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1569 * input/bugs/first-tie.ly: New file.
1571 * input/bugs/spacing-clash.ly: New file.
1573 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1577 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1579 * lilypond-indent.el: New file providing indentation for
1580 parenthesised blocks of lilypond code in Emacs
1582 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1583 indentation and handle block comments properly. Distinguish
1584 accents from close-brackets in fontification.
1586 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1588 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1590 * Documentation/windows/installing.texi:
1591 * Documentation/windows/compiling.texi: Include from 1.4.10.
1593 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1595 * input/bugs/first-midi-tie.ly: New file.
1597 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1599 * VERSION: 1.5.28 released
1601 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1602 illicit beams on [c4 c4] etc.
1604 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1605 file. Make separate iterator for Bar_checks. Bar_check now happen
1606 outside engravers, meaning that you can use them with
1607 skipTypesetting. Associated changes in other files.
1609 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1612 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1614 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1616 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1618 * lily/stem.cc (set_spacing_hints): removed function
1620 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1621 correction for spacing; now take vertical extents of the stem into
1624 * lily/third-try.cc: More hacking to get spacing working.
1626 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1627 sits at staff level and creates note spacing objects. Scrap it
1628 again, and document why.
1630 * lily/include/group-interface.hh: rename functions.
1632 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1634 * stepmake/stepmake/c++-rules.make:
1635 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1637 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1639 * make/lilypond-vars.make:
1640 * scripts/ly2dvi.py (setup_environment):
1641 * scripts/lilypond-book.py (setup_environment): Also set tex
1644 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1646 * VERSION: 1.5.27 released.
1648 * Documentation/user/refman.itely (Bar numbers): added bar number
1651 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1654 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1656 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1657 spread the last few lines all over the last page of a score.
1659 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1661 * lily/third-try.cc: 3rd try at revising spacing
1662 engine. Not yet finished.
1664 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1667 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1668 collecting past note heads.
1670 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1673 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1674 class. Keep a queue of grobs that are still playing in busyGrobs.
1676 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1677 function. Use busyGrobs to detect playing notes.
1679 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1681 * Documentation/topdocs/INSTALL.texi: Added note about broken
1682 python-2.1. Updated note for Debian's broken (well, broken for
1683 our use anyway) tex configuration.
1685 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1687 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1688 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1690 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1691 (But left margin of png's still misses a few pixels. Arg.)
1693 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1695 * lilypond-mode.el (LilyPond-command-next-midi): Make
1696 possible to kill midi-process (using "C-c C-m").
1698 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1700 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1701 Convert strings with dimensions to numbers.
1703 * lily/volta-engraver.cc: only make a bracket for the top staff,
1704 as found in stavesFound.
1706 * lily/bar-number-engraver.cc: remove staff administration.
1708 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1709 administration. This breaks support for invisible-staff.
1711 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1712 symbols into stavesFound.
1714 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1715 grobs, and put them into columns.
1717 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1718 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1720 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1722 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1723 midi section in the Emacs-mode, so it is possible to play certain
1724 score in a multiscore lilypond-file.
1726 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1727 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1728 (FIXME: not accessible from guile)
1730 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1731 better support for Kurt Stone's suggestions.
1732 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1734 Changed property: localKeySignature.
1735 Added properties: extraNatural, autoAccidentals,
1738 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1740 * ly/property-init.ly: added commands
1741 \defaultAccidentals \modernAccidentals \modernCautionaries
1742 \noResetKey \forgetAccidentals
1744 * ly/engraver-init.ly: Correct initialization of new accidentals.
1746 * scm/translator-property-description.scm: The new properties
1749 * input/: Some examples added, some changed.
1751 * Documentation/regression-test.tely: Added quick test of new
1754 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1756 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1759 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1761 * lily/beam.cc (before_line_breaking): Make beams without stems
1762 or with only one stem disappear.
1764 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1766 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1767 files to have standardised HTML bibliography output. Update build
1768 docs to reflect this.
1770 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1771 active_count_, so that we don't have to look for active springs
1774 * scm/interface-description.scm,scm/grob-property-description.scm:
1777 * lily/simple-spacer.cc (solve): Handle forced line breaks
1778 here. Fixes problems when combining linebreaks with non-fitting
1781 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1783 * 1.4.9.jcn3 forward ports.
1785 * Really included .cvsignore.
1787 * Included Han-Wen's uu1 windows fixes.
1789 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1791 * Added Cygwin setup.hint
1793 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1794 tetex/texmf, python installations.
1796 * Updated cygwin installer.
1798 * ly2dvi: Don't accept filenames with spaces (+ fix).
1800 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1802 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1804 * lily/translator-def.cc: Remove manual symbol caching.
1806 * lily/script-column.cc (before_line_breaking): robustness check:
1807 don't crash if no direction set.
1809 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1811 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1815 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1817 * lily/note-head.cc (head_extent): added to compute width without
1818 ledger lines. By default, ledger lines take up width now.
1820 * input/regression/fingering.ly: demonstrate auto fingering.
1821 Horizontal placement is still buggy.
1823 * lily/fingering-engraver.cc (class Fingering_engraver):
1824 added. Provides support for horizontal fingering scripts
1826 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1828 * lily/side-position-interface.cc (add_staff_support): add staff
1829 only for Y-axis side positions.
1831 * lily/parser.yy (request_chord): Fix mem leak.
1833 * lily/musical-request.cc (transpose): moved to Music::transpose()
1835 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1836 can store grobs as grob-creation cause as well.
1838 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1839 handle when adding. Use precomputed symbols throughout lily.
1841 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1842 track of spacing issues.
1844 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1845 to keep track of staff spacing
1847 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1849 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1850 code clean from conditionals and have a concentrated sets of
1851 compatibility fixes for old guile versions.
1853 * Fixes for guile 1.4, including embedded ps.
1855 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1857 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1858 well for markup texts.
1860 * lily/musical-request.cc (length_mom): kludge for null pointer.
1862 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1864 * scm/lily.scm (sign): bugfix
1866 * CHANGES: Change log instated.
1868 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.