1 2002-04-24 Jan Nieuwenhuizen <janneke@gnu.org>
3 * Documentation/user/lilypond-book.itely:
4 * scripts/lilypond-book.py: Add options [no]indent, linewidth and
7 * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
9 * scm/grob-property-description.scm (beam-space): Junk.
11 * lily/beam.cc (space_function): New method.
12 (get_interbeam): Call space-function.
14 * scm/grob-description.scm (Beam): Initialize space-function with
17 * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
18 Beam.space-function. Don't quantise grace beams.
20 2002-04-23 Han-Wen Nienhuys <hanwen@cs.uu.nl>
22 * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
25 * Documentation/index.texi: add PDF links.
27 * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
29 * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
30 compare #'glyph as strings.
32 * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
34 * scripts/ly2dvi.py (setup_environment): fix by Mats.
36 * lily/stem.cc (head_count): Change function name. Change property
37 to #'note-heads i.s.o. #'heads.
38 (position_noteheads): Kern noteheads for invisible stems.
39 (before_line_breaking): Do position_noteheads() for whole note
42 * lily/accidental-placement.cc (position_accidentals): First
43 determine refpoints, only then determine extents.
45 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
47 * lily/accidental-placement.cc (position_accidentals): use all
48 note heads for note head-skyline.
50 * scripts/lilypond-book.py (re_dict): remove all *? regexps.
52 2002-04-22 Jan Nieuwenhuizen <janneke@gnu.org>
54 * Documentation/windows/setup.hint (requires): Add gsview dependency.
56 * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
58 * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
60 * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
62 2002-04-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
64 * mf/feta-schrift.mf: lighter staccato.
66 2002-04-22 Han-Wen <hanwen@cs.uu.nl>
68 * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
70 2002-04-21 Han-Wen <hanwen@cs.uu.nl>
72 * VERSION: 1.5.53 released
74 * scm/lily.scm (ly-load): use primitive-load for loading.
76 * lily/misc.cc: remove quantise_iv()
78 * lily/*.cc: pass read-only arrays by reference.
80 * lily/grob.cc (common_refpoint_of_array): new function. Try to
81 use common_refpoint_of_{array, list} when possible.
83 * lily/include/accidental-placement.hh: new file.
85 * lily/accidental-placement.cc (alignment_callback): position
86 accidentals in a better way.
88 * lily/skyline.cc: new file. Compute distances for collections of
91 * lily/include/skyline.hh: new file
93 2002-04-20 Han-Wen <hanwen@cs.uu.nl>
95 * lily/accidental.cc (class Accidental_interface): grob for a
98 * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
101 * lily/new-accidental-engraver.cc (acknowledge_grob): Work
102 together with new accidental-interface.
104 * lily/include/*.hh: remove spurious set_interface() decls.
106 * lily/key-signature-interface.cc (brew_molecule): add padding for
107 natural signs. Make natural typesetting like the sharp.
110 * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
111 is now slightly curved, not straight.
114 2002-04-18 Heikki Junes <hjunes@cc.hut.fi>
116 * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
118 * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes
119 more strictly. Use more clever regular expressions. Commented regexps.
121 2002-04-16 Heikki Junes <hjunes@cc.hut.fi>
123 * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
125 2002-04-15 Juergen Reuter <reuter@ipd.uka.de>
127 * scm/grob-description.scm, lily/staff-symbol.cc: added properties
128 to control width of staff symbol in ragged-right mode (by request
131 * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
132 lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
133 lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
134 added support for ligature brackets (needed when transcribing
137 2002-04-15 Heikki Junes <hjunes@cc.hut.fi>
139 * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
140 Fontify notes more strictly.
142 2002-04-15 Han-Wen <hanwen@cs.uu.nl>
144 * mf/feta-din-code.mf: dynamic z sign.
146 2002-04-13 Heikki Junes <hjunes@cc.hut.fi>
148 * lilypond-mode.el: Prevent recoloring strings and comments.
150 * lilypond-font-lock.el: Handle block comments: block comments
151 can have also ordinary comments inside.
153 2002-04-13 Han-Wen <hanwen@cs.uu.nl>
155 * lily/stem.cc (get_default_dir): set direction to CENTER if
156 invisible. Various other fixes to deal with invisible stems and
157 stem-direction == CENTER.
159 * lily/rest-collision.cc (do_shift): take direction from note if
162 * input/regression/tie-grace.ly: new file.
164 * lily/tie-engraver.cc (create_grobs): fix tied graces.
166 * lily/note-spacing.cc (stem_dir_correction): set fixed space for
167 knee correction. Fixes tight spacing for knees.
169 2002-04-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
171 * VERSION: 1.5.52 released
173 * lily/*.cc: add some undocced properties.
174 scm/grob-description.scm: idem.
176 2002-04-12 Heikki Junes <hjunes@cc.hut.fi>
178 * lilypond-font-lock.el: Handle slurs \( and \), numbers,
179 multi-measure rests like "R1 *4" and scheme (typically has '#'
180 in the beginning). Small fixes. Add few reserved words.
182 2002-04-12 Jan Nieuwenhuizen <janneke@gnu.org>
184 * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
187 * Documentation/windows/installing.texi: Suggest gswin32c (console
188 program) for getting the version. Layout fixes.
190 2002-04-11 Jan Nieuwenhuizen <janneke@gnu.org>
192 * Documentation/user/tutorial.itely (Running LilyPond): Separate
193 windows viewing commands, remove silly comment about Yap.
195 2002-04-10 Mats Bengtsson <matsb@s3.kth.se>
197 * Documentation/topdocs/INSTALL.texi: Describe how to learn
198 configure to find kpathsea on for example Slackware 8.0.
200 * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
202 * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
203 by default: avoid "1" over single bar rests.
205 * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
206 and correct the handling of geometry options.
208 2002-04-10 Han-Wen Nienhuys <hanwen@cs.uu.nl>
210 * lily/include/grob-interface.hh (ADD_INTERFACE): make
211 implementation for Class::has_interface automatically. Junk all
212 other implementations.
214 * lily/grob.cc (internal_get_grob_property): also typecheck
215 property reads. Catches even more undocced properties. Bugfixing
216 left for the uninspired masses.
218 * lily/beam.cc: remove end_after_line_breaking().
220 * lily/grob.cc (calculate_dependencies): remove list support for
223 * lily/font-size-engraver.cc: only do font-interface.
225 2002-04-10 Heikki Junes <hjunes@cc.hut.fi>
227 * lilypond-font-lock.el: Handle notes with cautionary accidentals.
230 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
232 * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
233 brackets using arpeggio requests.
235 * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
236 molecule-callback to use for drawing the brackets.
238 * Documentation/user/refman.itely:
239 * input/test/chord-bracket.ly: Chord brackets documented
241 2002-04-10 Han-Wen <hanwen@cs.uu.nl>
243 * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign.
245 * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
247 2002-04-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
249 * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
250 direction tuplets on beams.
252 2002-04-08 Chris Jackson <chris@fluffhouse.org.uk>
254 * lilypond-indent.el: Bugfix of indentation of final point in buffer
256 2002-04-09 Heikki Junes <hjunes@cc.hut.fi>
258 * lilypond-mode.el: new command: LilyPond-un-comment-region.
259 Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el:
260 separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
261 submenu to "LilyPond"-menu.
263 * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
264 an interface to play midi.
266 2002-04-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
268 * input/regression/script-stack-order.ly: new file.
270 2002-04-08 Han-Wen <hanwen@cs.uu.nl>
272 * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
274 * mf/feta-din-code.mf: kerning for dynamics.
276 2002-04-07 Han-Wen <hanwen@cs.uu.nl>
278 * input/regression/dynamics-glyphs.ly: new file
280 * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
282 * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
283 forte f for the 2 number. Some fixes for the other bulbed glyphs.
285 * Documentation/windows/gs-profile.sh:
286 * Documentation/windows/gsview-profile.sh: Remove. Functionality
287 moved to gs/gsview windows packages.
289 2002-04-06 Mats Bengtsson <matsb@s3.kth.se>
291 * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
292 finding out the duration. Fixes chord tremolo bug.
294 * lily/completion-note-heads-engraver.cc (process_music): Set
295 correct duration for all requests of the broken notes.
297 * input/regression/completion-heads.ly: Added example of
298 Completion_heads_engraver.
300 * lilypond-mode.el: Added "2Midi" command
302 2002-04-06 Chris Jackson <chris@fluffhouse.org.uk>
304 * lily/tuplet-bracket.cc, scm/grob-description.scm: New
305 edge-width, edge-height and shorten-pair properties for tuplet
308 * lilypond-indent.el: Support for blinking of matching parentheses
310 * lilypond-font-lock.el: Fix fontification of closing > on its own line
312 * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
313 cleanups of piano pedal brackets.
315 2002-04-05 Han-Wen <hanwen@cs.uu.nl>
317 * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
319 2002-04-04 Han-Wen <hanwen@cs.uu.nl>
321 * mf/feta-new-code.mf: new dynamic f sign.
324 2002-04-03 Han-Wen <hanwen@cs.uu.nl>
326 * mf/feta-new-code.mf: new dynamic p sign.
328 2002-04-02 Han-Wen Nienhuys <hanwen@cs.uu.nl>
330 * lily/note-spacing.cc (stem_dir_correction): only do
331 beam-correction if a beam is there.
333 * lily/stem.cc (duration_log): change from flag_i (); better
335 (get_default_stem_end_position): fix dot/flag collision code.
337 2002-04-02 Han-Wen <hanwen@cs.uu.nl>
339 * VERSION: release 1.5.50
341 * lily/spaceable-grob.cc (add_spring): change incorrect spring to
342 unit spring here. Reduces number of warning messages.
344 * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
346 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
348 * scm/generic-property.scm: remove generic-property, property-engraver
350 * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
352 * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
354 * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
356 * scm/*.scm: remove volta, hairpin and tuplet functions.
358 * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
359 note column for notes/stems/dots that already have parents. Fixes
360 nested grace contexts.
362 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
364 * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
365 get too curved slurs.
367 * scm/slur.scm (default-slur-extremity-offset-alist)
368 (default-phrasing-slur-extremity-offset-alist): Move slur
369 attachments further away from note-head, vertically. Also, leave
370 a horizontal gap between slur and stem end.
372 * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
374 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
376 * input/regression/spacing-grace-duration.ly: new file
378 * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
379 for shortest durations.
381 * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
382 extent of the mm rest.
384 * lily/spacing-spanner.cc (get_duration_space): better spacing for
387 * lily/tuplet-bracket.cc (make_bracket): new function
388 (get_x_offset): new function; make tuplet brackets align on stems
389 if stem has same direction.
390 (parallel_beam): be anal about matching bracket to tuplet.
392 * lily/lookup.cc (line): new function Lookup::line().
394 * scm/tex.scm (dashed-line): change -line to -system in names.
396 * lily/box.cc (add_point): new function.
398 * flower/include/interval.hh: new function add_point ().
401 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
403 * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
405 * scm/grob-property-description.scm (number-threshold): Add
408 * lily/multi-measure-rest.cc (brew_molecule): Only put number over
409 rest if #measures > number-threshold. Use padding (well, fake
412 * scm/font.scm (make-style-sheet): New styles: mark-number,
414 (paper20-style-sheet-alist): Add bigger bold fonts.
416 * lily/mark-engraver.cc (process_music): Use style mark-number or
419 * .cvsignore: Ignore all kinds of lilypond input and output.
421 * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
423 2002-04-01 Han-Wen <hanwen@cs.uu.nl>
425 * lily/staff-symbol.cc (brew_molecule): make line thickness
428 * lily/*.cc: replace stafflinethickness by linethickness.
430 2002-04-01 Jan Nieuwenhuizen <janneke@gnu.org>
432 * input/regression/beam-concave.ly: Add to-be-considered-concave
435 * lily/beam.cc (check_concave): Add check for large gap between an
436 inner notehead and the line through outer noteheads.
438 * scm/grob-description.scm (Beam): Add concaveness-gap, default
439 value 2.0 staff-space.
441 * scm/grob-property-description.scm (concaveness-gap): Add
444 * input/mozart-hrn3-allegro.ly: Fix typo.
446 2002-03-31 Juergen Reuter <reuter@ipd.uka.de>
448 * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
449 lily/note-head-engraver: improved implementation of roundfilledbox
450 (according to Han-Wen's request)
452 * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
453 lily/gourlay-breaking.cc, lily/staff-symbol.cc,
454 lily/simple-spacer.cc: ragged-right alignment
456 2002-03-29 Han-Wen <hanwen@cs.uu.nl>
458 * input/regression/spacing-note-flags.ly: new file
460 * input/regression/spacing-rest.ly: new file
462 * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
464 * lily/spacing-spanner.cc (note_spacing): make note spacing after
465 all grace notes tight (not only the column directly following a
468 * scm/grob-description.scm (all-grob-descriptions): don't make
469 mm-rests larger than normal.
471 * mf/feta-banier.mf: make upflag narrower. Make end of flag more
472 curved. Remove white space at the right of flags.
474 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
476 * ports/ports.make: Bugfix: ignore CVS directories.
478 * stepmake/.cvsignore: New file.
480 2002-03-28 Han-Wen <hanwen@cs.uu.nl>
482 * lily/note-spacing.cc (stem_dir_correction): don't correct when
483 there is a flag on the stem.
485 * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
487 * scm/grob-property-description.scm (measure-length):
488 measure-length grob property.
490 * lily/spacing-spanner.cc (standard_breakable_column_spacing):
491 better spacing for breakable columns when they're juxtaposed: use
492 measure length if applicable
494 * lily/timing-engraver.cc (start_translation_timestep): store
495 measure length in breakable column at start of measure.
497 2002-03-28 Jan Nieuwenhuizen <janneke@gnu.org>
499 * ROADMAP: Add description for ports dir, to check email upon
502 2002-03-27 Han-Wen <hanwen@cs.uu.nl>
504 * VERSION: 1.5.48 released
506 * lily/multi-measure-rest.cc (symbol_molecule): split off from
508 (set_spacing_rods): Use symbol_molecule() to determine minimum
510 (church_rest): split off from brew_molecule()
511 (big_rest): split off from brew_molecule(). Construct using
514 * mf/feta-eindelijk.mf: junk multi measure rest.
516 2002-03-26 Han-Wen <hanwen@cs.uu.nl>
518 * lily/multi-measure-rest.cc (add_column): remove columns property.
520 * lily/dynamic-engraver.cc (process_music): add more verbose warning
522 * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
525 2002-03-26 Heikki Junes <hjunes@cc.hut.fi>
527 * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
528 keywords covered, dropped some non-keywords, include R- and 128-notes
530 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
532 * Code clean-up: Junk multiple implementations of ledger line
533 creation in note_head, custos, and porrectus. This is important
534 since there soon will be some more applications of ledger lines to
535 come (e.g. ambitus engraver).
537 * Make thickness of ledger lines adjustable. This is essential
538 for mensural notation.
540 * Fix some bugs in the current ledger_line implementation, most
541 notably that of the horizontal extent of ledger lines which equals
542 at least the extent of the metafont ledger_line character, and
543 which grows(!) if the desired extent shrinks below this limit.
545 * roundfilledbox: variable blotdiameter
547 2002-03-24 Han-Wen <hanwen@cs.uu.nl>
549 * VERSION: 1.5.47 released
551 * lily/line-spanner.cc (line_atom): change line-thickness to thickness
553 * lily/porrectus.cc: change line-thickness to thickness, change
554 stem-direction to direction.
556 * scm/backend-documentation-lib.scm (check-dangling-properties):
557 Automatically detect doc'ed properties that are not in an interface
559 * scm/grob-property-description.scm: property cleanup. Remove many
560 paper-column props that are non-existent.
562 * lily/grob.cc (Grob): only use molecule_extent_proc as default if
563 the grob has a molecule-callback.
565 * lily/*.cc: remove many set_interface() calls, and their
568 * input/regression/spacing-knee.ly: new file
570 * input/regression/spacing-clef-first-note.ly: new file
572 * lily/staff-spacing.cc (get_spacing_params): different spacing
573 for pref matter to note at start of line, halfway during line.
575 * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
576 correction only if stems have same direction (i.e. not for
577 stem-clef combination).
578 (stem_dir_correction): maximal correction for knees.
580 * lily/*.cc: many updates to interface descriptions.
582 * lily/grob.cc (internal_set_grob_property): add interface check
583 for every set_grob_property call
585 * lily/*.cc: document interface stuff in C++
587 * lily/grob-interface.cc: new file. Add grob interfaces from C++.
589 * lily/volta-bracket.cc: naming: change volta spanner to
592 * input/bugs/*.ly: cleanup, remove lots of files.
594 * buildscripts/mf-to-table.py (write_ps_encoding): generate
595 .encoding file. WARNING: upgrade to pktrace 1.0.3
597 * mf/feta-toevallig.mf: change PS name for parentheses.
599 2002-03-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
601 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
604 2002-03-23 Han-Wen <hanwen@cs.uu.nl>
606 * lily/scope.cc: remove file .
608 * lily/include/scope.hh: remove file. Remove Scope class
612 * lily/beam.cc (score_slopes_dy, score_stem_lengths,
613 score_forbidden_quants): ): take out of SCM, pass parameters so
614 grob props are read only once. (wtk1-fugue2 from 31 sec to 14
616 (calc_stem_y): robustness: take care of last_visible_stem == 0.
619 * lily/lily-guile.cc (ly_unit): return internal unit.
621 * scm/tex.scm (header-end): insert scaling factor, using ly-unit
623 * lily/paper-outputter.cc (output_version): output internal unit
626 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
628 2002-03-22 Mats Bengtsson <mats.bengtsson@s3.kth.se>
630 * scripts/ly2dvi.py: clean up old .*pk font caching code.
632 * scm/ps.scm: Use uppercase postscript font names for the standard
635 * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
636 Add all available TeX Type1 fonts, including Feta, to the
637 Ghostscript font path.
639 * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
640 version (affects the FontName) in lilypond.map.
642 * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
643 documentation file to fetaNNlist.ly to avoid name collisions between
644 lilypond generated .tex file and font .tex macros file.
647 2002-03-22 Juergen Reuter <reuter@ipd.uka.de>
649 * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
650 made mensural longa and (semi-)brevis leaner
652 * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
654 * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
655 clean-up: moved bezier shape and slope from porrectus to lookup
657 * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
658 and /usr/share/texmf/fonts
660 * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
662 2002-03-22 Han-Wen <hanwen@cs.uu.nl>
664 * lily/text-spanner.cc (brew_molecule): add #'thickness
665 (brew_molecule): add corrections for thickness in molecule padding.
667 * lily/line-spanner.cc (line_atom): make function private
669 * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
670 discover bounding box. This solves the cropping problem.
672 * lily/bar-check-iterator.cc (process): Only resynchronize bar
673 check when it fails. This fixes the combination of grace notes
676 2002-03-21 Han-Wen <hanwen@cs.uu.nl>
678 * lily/repeated-music.cc (minimum_start): new Scheme callable function
679 (first_start): new Scheme callable. This will fix repeated music
680 starting with grace notes.
682 * lily/music.cc (start_mom): check start-moment-function grob property.
684 * VERSION: 1.5.45 released
686 * input/regression/system-extents.ly: new regression test. Test
689 * lily/system.cc: rename LineOfScore into System
691 * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
693 * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
694 (ly_get_extent): new Scheme function ly-get-extent
696 * ps/lilyponddefs.ps: use output-scale for line-x
699 * scm/ps.scm (font-load-command):
702 2002-03-20 Rune Zedeler <rune@zedeler.dk>
704 * lily/beaming-info.cc: Stupid typo fixed
706 * lily/accidental-engraver.cc: rewrote accidental-routines to get
707 support for cross-context auto-accidentals.
708 Now the engraver can stay in Staff-context and see other contexts
710 Changed properties: autoAccidentals, autoCautionaries
712 * lily/translator-group.cc (set_children_property):
713 Function added recursively setting the same property (deep_copied)
714 for all children of a Translator_group.
716 * ly/property-init.ly: added commands
717 \pianoAccidentals \voiceAccidentals
718 \modernVoiceAccidentals \modernVoiceCautionaries
720 * ly/engraver-init.ly: Correct initialization of new accidentals.
722 * scm/translator-property-description.scm: Updated
724 * input/regression/accidental-voice.ly: Added
726 * Documentation/regression-test.tely: Added new test
728 2002-03-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
730 * VERSION: 1.5.44 released
732 * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
734 * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
736 * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
739 * tex/feta*.tex: remove.
741 * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
742 all software dealing with it.
744 2002-03-20 Jan Nieuwenhuizen <janneke@gnu.org>
746 * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
747 (this fixes pdf output). Drop awk dependency.
749 * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
750 dimensions (linewidth) are in mm.
752 * mf/GNUmakefile (depth): Always allow manual access to pfa target.
754 * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
756 * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
758 2002-03-19 Han-Wen <hanwen@cs.uu.nl>
760 * VERSION: 1.5.43 released
762 * scm/beam.scm (beam-dir-majority-median): if majority is
763 undecided, use median. Removes a forced dir in sarabande.
765 * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
767 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
769 * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
770 widths, heights and shortens are now customisable properties.
772 * scm/grob-description.scm, scm/grob-property-description.scm: New
773 properties added to PianoPedalBracket, unnecessary
774 Y-offset-callbacks removed from *Pedal, undocumented properties
777 * Documentation/user/refman.itely: Piano pedal updates.
779 2002-03-18 Jan Nieuwenhuizen <janneke@gnu.org>
781 * scm/grob-property-description.scm:
782 * scm/interface-description.scm: Remove old stuff.
784 * scm/grob-description.scm (StemTremolo): Change beam-thickness to
785 0.48 (previously 0.42).
786 (Beam): Remove old stuff.
789 * lily/stem-tremolo.cc:
791 * scm/beam.scm: Remove old stuff. Use Beam::get_interbeam ()
792 (previously space-function).
794 * stepmake/bin/add-html-footer.py: Website title fix.
796 2002-03-18 Han-Wen Nienhuys <hanwen@cs.uu.nl>
798 * scripts/ly2dvi.py (environment): use new font searching setup.
800 * lily/afm.cc (afm_bbox_to_box): make code dimension independent
802 * lily/tfm.cc (dimensions): make code dimension independent
804 * ps/lilyponddefs.ps: add constant for MM and true/ps-point
807 * tex/lily-ps-defs.tex: scaling for PS points and MM.
809 * lily/include/dimensions.hh: try MM as internal unit.
811 * scm/*.scm: remove invoke-dim1
813 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
815 * GNUmakefile.in (fontpaths): add fontpaths target,
817 * make/mutopia-targets.make: add PDF rules.
819 * make/mutopia-rules.make: add pdf rule.
821 * buildscripts/mutopia-index.py (list_item): add PDF.
823 * buildscripts/lilypond-profile.sh (TEXMF): typo.
825 * make/lilypond-vars.make: set TEXMF for the new font setup.
827 2002-03-17 Han-Wen <hanwen@cs.uu.nl>
829 * VERSION: 1.5.42 released
831 * mf/feta-schrift.mf: endless twiddling of Tr.
833 * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
834 endless twiddling with the bulb shape.
836 * lily/note-head.cc (internal_brew_molecule): make ledger lines a
837 little smaller if there is an accidental.
839 2002-03-15 Mats Bengtsson <mats.bengtsson@s3.kth.se>
841 * buildscripts/lilypond-profile.sh:
843 * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
844 buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
845 Implement new font installation strategy
847 * Documentation/misc/fontinstallation (TEXMF): Documentation of
848 the new font installation strategy.
850 * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
853 * input/test/staff-size.ly: Simplified using StaffContainer
855 * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
858 2002-03-17 Jan Nieuwenhuizen <janneke@gnu.org>
860 * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
862 * lily/beam.cc (score_stem_lengths): new quanting stuff
863 (score_forbidden_quants): Second and third beam quant stuff.
865 2002-03-16 Jan Nieuwenhuizen <janneke@gnu.org>
867 * lily/beam.cc (least_squares): Remember least-squares-dy for
869 (quantise_interval): Don't quant to dy steeper that
870 least-squares-dy. Return empty interval if no sane quants found.
871 (quantise_position): Try quantise_interval until we have
874 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
876 * scm/interface-description.scm (beam-interface): Update.
878 2002-03-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
880 * VERSION: 1.5.41 released
882 * mf/feta-schrift.mf: make Tr. smaller, smoother and closer. Use
883 optima serifs on top of t, bottom of r.
885 * mf/feta-bolletjes.mf: make ledger line rounder.
887 * mf/feta-toevallig.mf: some smallish fixes for flat sign.
889 * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
892 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
894 * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
895 well as text pedal indications and a combination of both. All
896 pedal indications are horizontally aligned on a line spanner.
898 * lily/text-spanner.cc: Edge-width property added to use in
899 bracketed piano pedals. Function setup_sustain_pedal added to set
900 the dimensions of the brackets.
902 * scm/grob-description.scm: New *PedalLineSpanner grobs added, and
903 some of the *Pedal properties tweaked.
905 * scm/grob-property-description.scm: New pedal-type (*Pedal) and
906 edge-width (TextSpanner) properties.
908 * ly/engraver-init.ly: Default strings added for SostenutoPedal.
910 * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
911 fontified identifiers list.
913 * input/test/pedal.ly: New pedal features added.
915 * Documentation/user/refman.itely: New pedal features documented.
918 2002-03-15 Jan Nieuwenhuizen <janneke@gnu.org>
920 * lily/include/new-beam.hh: Previously new-beam.hh
921 * lily/beam.cc: Previously new-beam.cc
922 (least_squares): Bugfix: don't barf on beams with less than two
923 visible stems (tremolos).
926 * scm/grob-description.scm (Beam): Junk old beam stuff.
929 2002-03-14 Han-Wen Nienhuys <hanwen@cs.uu.nl>
933 * mf/feta-eindelijk.mf: new 8th rest.
935 * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
936 stick out of staffline
938 * scripts/lilypond-book.py: fixes for texi regular expressions.
940 2002-03-14 Jan Nieuwenhuizen <janneke@gnu.org>
942 * lily/include/new-beam.hh:
943 * lily/new-beam.cc: New file.
945 * flower/include/interval.hh:
946 * flower/include/interval.tcc (delta): New method.
947 (swap): Now public (previously private).
949 * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
950 1 staff-line-thickness. Sadly, this makes dy quanting problems
951 (dy quants allowed should depend on actual left y) more visible.
953 2002-03-13 Jan Nieuwenhuizen <janneke@gnu.org>
955 * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0. Hmm.
957 * scm/grob-property-description.scm (concaveness-threshold): Add
958 typecheck and description.
960 * scm/grob-description.scm (Beam): Remove obsolete properties, add
961 concaveness-threshold (previously concaveness).
963 * lily/beam.cc (check_concave): Remove choices and debugging
964 stuff: use best concaveness calculation.
965 (quantise_dy): Remove choice. Try to never make a slope steeper
966 by quantising, but certainly never quantise a slope away.
967 (check_stem_length_f): Remove choice. In case of lengthening
968 alowed, always lengthen to ideal length.
970 * Documentation/index.texi: Fix FAQ url.
972 * Documentation/topdocs/INSTALL.texi: Add information about fink,
973 compile fix and 1.4 specific fix that doesn't hurt 1.5.
975 2002-03-13 Han-Wen <hanwen@cs.uu.nl>
977 * VERSION: 1.5.39 released
979 * lily/simple-spacer.cc (add_rod): rods take precedence over
980 infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
982 * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
984 * lily/note-spacing.cc (get_spacing): only insert space for
985 accidentals if necessary.
987 * input/regression/spacing-accidental-staffs.ly (texidoc): update example
989 * lily/spacing-spanner.cc (musical_column_spacing): new
990 function. Have correct spacing from note to end-of-line as well.
992 2002-03-12 Jan Nieuwenhuizen <janneke@gnu.org>
994 * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
996 * darwin.patch: New file.
998 * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
999 code. Shorten stems by fraction of stems to be shortened.
1001 * lily/stem.cc (get_default_stem_end_position): Shorten only half
1002 of shorten value for boundary cases.
1004 * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1005 (Beam): Set beamed-stem-shorten to (1.0 0.5).
1007 2002-03-11 Jan Nieuwenhuizen <janneke@gnu.org>
1009 * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1011 * scm/grob-description.scm (Beam): Add concaveness. Replace
1012 Beam::cancel_suspect_slope with Beam::check_concave.
1014 * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1015 set slope to horizontal if concaveness > Beam.concaveness. This
1016 handles cases that kludgy cancel_suspect_slope was meant to catch
1018 (cancel_suspect_slope): Remove.
1020 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1022 * lily/beam.cc lily/stem.cc lily/beam-engraver.cc allow for
1023 stemLeftBeamCount and stemRightBeamCount to equal 0.
1026 2002-03-12 Han-Wen <hanwen@cs.uu.nl>
1028 * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1029 fixed spacing for pref matter, if the next column is musical, and
1032 * lily/note-spacing.cc (stem_dir_correction): Use correct
1033 discretionary for stem-bar spacing.
1035 2002-03-11 Han-Wen <hanwen@cs.uu.nl>
1037 * VERSION: 1.5.38 released
1039 * lily/grob.cc (warning): Use cause tracking to give more
1040 meaningful errors from the backend.
1042 * lily/property-iterator.cc (check_grob): Warn if setting grob
1043 property in unknown grob.
1045 * mf/feta-toevallig.mf: brushed stems for natural sign.
1047 * lily/molecule.cc (align_to): don't translate empty molecule.
1048 (this triggers a very subtle bug in time-signature.)
1050 2002-03-10 Han-Wen <hanwen@cs.uu.nl>
1052 * lily/spring.cc: remove file.
1054 * input/regression/spacing-stem-bar.ly: new file
1056 * lily/score.cc (run_translator): resurrect point-and-click
1058 * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1061 * lily/spacing-spanner.cc (find_shortest): Shortest note for
1062 spacing is now globally determined, using the most common shortest
1063 note. Notes that are shorter are spaced geometrically, and with
1064 expand hints. This makes spacing more even, and measures that have
1065 very short notes won't be that stretched out.
1067 * mf/feta-klef.mf: F-clef fixes, documentation on the
1068 shape. (WARNING: font changed.)
1070 2002-03-09 Han-Wen <hanwen@cs.uu.nl>
1072 * lily/simple-spacer.cc (add_columns): support for infinitely
1075 * lily/staff-spacing.cc (get_spacing_params): space after
1076 prefatory matter is fixed.
1078 2002-03-08 Han-Wen <hanwen@cs.uu.nl>
1080 * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1081 barline following an upstem.
1083 * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1084 function from next_notes_correction().
1085 (bar_y_positions): idem.
1087 2002-03-04 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1089 * input/regression/break.ly (texidoc): bugfix: escape \ in
1092 * lily/staff-spacing.cc (next_notes_correction): Correct the
1093 spacing of a note following a barline.
1096 2002-03-04 Glen Prideaux
1098 * mf/feta-solfa.mf: Shaped note heads
1100 2002-03-03 Han-Wen <hanwen@cs.uu.nl>
1102 * VERSION: 1.5.37 released
1104 * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1105 left-align molecule.
1107 * lily/break-align-interface.cc (do_alignment): completely
1108 rewritten. Now it does not use Align_interface anymore, but a
1109 separate routine. Like StaffSpacing, it reads space-alist from the
1110 breakable grobs. This allows you to set spacing using
1112 \property Staff.Clef \override #'space-alist = '(....stuff....)
1114 * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1115 to Bar_line. Move files around as well.
1117 * lily/time-signature.cc (time_signature): left align time signatures.
1119 * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1120 Corrections of the glyph shape C. Comments added.
1122 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1124 * lily/spacing-spanner.cc: move from third-try.cc; rename
1125 Third_spacing_spanner to Spacing_spanner.
1127 * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1128 spacing stuff. Much cleaner now, and we prepare for neat spacing
1129 tricks around bar lines and such.
1131 * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1132 variables with themselves. (Ouch.)
1134 * lily/span-bar.cc (brew_molecule): don't try to span bars that
1137 2002-03-02 Han-Wen <hanwen@cs.uu.nl>
1141 * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1144 * lily/music.cc (ly_get_mus_property): typechecking
1145 (ly_set_mus_property): idem
1146 (ly_make_music): idem
1147 (ly_music_name): idem
1149 * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1151 * lily/note-spacing.cc (stem_dir_correction): correction for
1152 same stem notes as well.
1154 * lily/pitch.cc (pitch_transpose): stricter typechecking
1156 * mf/parmesan*mf: magnification fixes.
1158 * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1160 2002-03-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1162 * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1163 documenting the font. (Doesn't work for parmesan at the moment)
1165 * Documentation/user/appendices.itely (The Feta font): Add list of
1166 Feta font symbols with names.
1168 * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1171 2002-03-01 Han-Wen <hanwen@cs.uu.nl>
1173 * lily/translator-group.cc (ly_set_trans_property): typechecking
1174 (ly_get_trans_property): typechecking.
1176 * lily/font-metric.cc (ly_text_dimension): typechecking
1177 (ly_find_glyph_by_name): idem.
1179 * scm/bass-figure.scm (brew-complete-figure): support for
1182 * lily/grob.cc (ly_get_paper_var): new function
1184 2002-02-28 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1186 * VERSION (PATCH_LEVEL): 1.5.35 released.
1188 * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1189 (bracket): New function.
1191 * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1192 stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined>
1194 * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1197 * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1200 * lily/grob.cc (ly_get_grob_property): be anal about types.
1201 (ly_set_grob_property): idem
1203 * lily/figured-bass-engraver.cc (process_music): move molecule
1204 building completely to Scheme
1206 * lily/include/musical-request.hh (class Bass_figure_req): Add
1209 * lily/parser.yy (bass_figure): add support for space figure.
1211 * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types
1213 * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1215 * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1216 (ly_align_to_x): new function ly-align-to!
1218 * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1219 function ly-get-font
1221 * mf/feta-nummer.mf: include normal-space dimension.
1223 * lily/collision.cc (check_meshing_chords): don't merge collisions
1226 * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1229 2002-02-28 Mats Bengtsson <matsb@s3.kth.se>
1231 * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1233 2002-02-28 Juergen Reuter <reuter@ipd.uka.de>
1235 * mf/parmesan-heads.mf: bugfix: mensural note heads (WARNING:
1238 * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1241 * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1242 scm/grob-description.scm: added mensural fermata symbol
1244 2002-02-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1246 * VERSION: 1.5.34 released.
1248 * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1250 * lily/staff-symbol-referencer.cc (callback): assume that
1251 staff-position is unset in general.
1253 * input/regression/rest-pitch.ly: new file.
1255 * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1258 2002-02-26 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1260 * lily/scm-option.cc (set_lily_option): add internal-type-checks
1261 as Scheme option. Run regression test by default with
1262 internal-type-checking.
1264 * lily/separating-group-spanner.cc (find_musical_sequences): removed.
1266 * lily/lily-guile.cc (type_check_assignment): changed functions.
1268 * scm/*description*.scm: be anal about typechecks. Some changes
1269 for internal variable names.
1271 2002-02-25 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1273 * scm/ps.scm: -f ps output for GUILE 1.4 and 1.3.4
1275 2002-02-25 Han-Wen <hanwen@cs.uu.nl>
1277 * VERSION: 1.5.33 released.
1279 * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1280 flare_path everywhere (c-clef, numbers).
1282 * lily/bar-number-engraver.cc (process_music): also print bar
1283 number if measure starts with grace note.
1285 * input/regression/grace-bar-number.ly: new test.
1287 2002-02-24 Han-Wen <hanwen@cs.uu.nl>
1289 * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1292 * scm/music-functions.scm (voicify-music): split chords into
1293 different voices automatically.
1295 * lily/music.cc (ly_music_list_p): new function
1297 * lily/music-sequence.cc (do_relative_octave): robustification
1299 * scm/music-functions.scm: many utility functions
1301 * lily/music.cc (ly_set_mus_property): add type checks to the
1302 Scheme property assignment.
1304 * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1307 * mf/lilypond.map: .map file from Mats' page.
1309 2002-02-21 Juergen Reuter <reuter@ipd.uka.de>
1311 * Some more parmesan related fixes;
1313 * Custos: varying shape (in particular, stem length), depending on the
1314 vertical position of the custos (on staffline / between stafflines);
1316 * Custos: added grob property "neutral-direction" (same semantics as
1317 with stem); introduced new grob property "neutral-position";
1319 * Time-signature: print a warning when resorting to default layout.
1321 2002-02-22 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1323 * lily/translator-group.cc (add_fresh_simple_translator): remove
1324 function; initialize() is called through
1325 Translator_group::initialize().
1327 * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1328 for the neighbors of a loose column.
1330 * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1331 position loose columns so that they don't collide.
1333 2002-02-21 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1335 * VERSION: 1.5.32 released.
1337 * scm/font.scm: remove font-name symbol.
1339 * mf/GNUmakefile: use pktrace for making PFAs
1341 * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1343 * lily/rest-collision.cc (do_shift): read direction field from
1344 rest-column in case of note-rest collision. This should fix some
1345 problems with rest collisions.
1347 2002-02-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1349 * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1352 * lily/note-head.cc (brew_ez_molecule): Remove note-character
1353 property. Read pitch directly from #'cause.
1355 * mf/feta-puntje.mf: bugfix
1357 2002-02-19 Juergen Reuter <reuter@ipd.uka.de>
1359 * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1361 2002-02-18 Jan Nieuwenhuizen <janneke@gnu.org>
1363 * Documentation/windows/compiling.texi: Update.
1365 * Documentation/index.texi: Add link to orphaned compiling for
1368 * Documentation/footer.html.in: Comment fix.
1370 * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1372 2002-02-18 Han-Wen <hanwen@cs.uu.nl>
1374 * VERSION: 1.5.31 released
1376 * lily/new-spacing-spanner.cc: remove file.
1378 * lily/third-try.cc (do_measure): only take spacings into account
1379 if they pertain to the column pair under consideration. This fixes
1380 spacing bug when mixing eighths triplets and normal eighths.
1382 * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1383 lines don't take up space anymore. Document why in note-head.cc
1386 2002-02-17 Han-Wen <hanwen@cs.uu.nl>
1388 * lily/font-interface.cc (get_font): reinstate
1389 #'font-magnification. See input/regression/font-magnification.ly
1390 (get_font): Change the definition of #'font-name grob property.
1392 * lily/grob.cc (get_uncached_molecule): output origin for grobs
1393 that have a #'cause field.
1395 2002-02-12 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1397 * Documentation/topdocs/INSTALL.texi: remove type3 stuff.
1399 * mf/GNUmakefile: remove metapost stuff
1401 * stepmake/aclocal.m4: remove metapost detection stuff.
1403 2002-02-11 Jan Nieuwenhuizen <janneke@gnu.org>
1405 * mf/GNUmakefile (FET_FILES):
1406 (FONT_FILES): Include parmesan.
1408 * stepmake/bin/packagepython.py (make_assign_re): Bugfix. Use re
1411 * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1413 * Documentation/user/refman.itely (Paper size): Quote braces.
1415 2002-02-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1417 * stepmake/aclocal.m4: fixed bison version check to be more
1420 * lily/stem.cc (position_noteheads): fix for cluster chords.
1422 * mf/*.mf: many blotting/pixel rounding fixes by Rune Zedeler
1424 * python 2.2 support.
1426 2002-02-04 Han-Wen <hanwen@cs.uu.nl>
1428 * VERSION: 1.5.30 released
1430 * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1432 * Documentation/user/refman.itely (Dynamics): add a note about
1435 * scm/grob-description.scm: add a 'translator-type? object
1436 property, so that \property Foo.Bar =\turnOff doesn't cause
1439 * lily/translator-group.cc (add_fresh_group_translator): make
1440 new add-translator functions to make distinction between fresh and
1441 used group-translators. Fixes problem with scripts on auto-changing voice
1443 * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1444 add to Score_performer. Fixes bar checks in MIDI
1446 * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1447 heads. Fixes many quirks with ties.
1449 * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1450 in the grob property #'cause, instead of using Grob_info.
1452 * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1453 staff context, fixing dot alignment on collisions.
1455 * lily/beam-engraver.cc (try_music): remove can't find beam start
1456 warning, so that skipTypesetting won't complain.
1458 2002-02-01 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1460 * Documentation/user/refman.itely (Paper size): Documentation fix,
1463 * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1465 * scm/grob-description.scm: \breathe: Use feta font comma by default
1467 2002-01-23 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1469 * input/template/piano-dynamics.ly (pedal): Simplified
1471 2002-01-18 Mats Bengtsson <mats.bengtsson@s3.kth.se>
1473 * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1475 2002-01-10 Mats Bengtsson <matsb@s3.kth.se>
1477 * lilypond-mode.el (LilyPond-command-query): ignore case.
1479 2002-02-01 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1481 * VERSION: 1.5.29 released
1483 * all files: change 2001 to 2002 in headers globally
1485 * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1486 cheese") font. WARNING: fonts changed.
1488 2002-02-01 Juergen Reuter <reuter@ipd.uka.de>
1490 * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1492 * mf/*.mf: Added some more vaticana/solesmes style font symbols
1494 * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1496 * mf/*.mf: Fixed a few typos in various .mf files
1498 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1500 * mf/: added macro soft_penstroke
1502 softened some glyphs
1503 redrawn triangular noteheads
1505 added classical quarter rest
1507 * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1509 * lily/bar.cc: Bugfix: repeat dots when even number of staff
1510 lines and staff_space>=2
1512 * lily/rest.cc: Use default rests when current style glyphs not
1514 \property Staff.Rest \override #'style = #'classical
1516 2002-01-30 Jan Nieuwenhuizen <janneke@gnu.org>
1518 * input/bugs/first-tie.ly: New file.
1520 * input/bugs/spacing-clash.ly: New file.
1522 2002-01-29 Jan Nieuwenhuizen <janneke@gnu.org>
1526 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1528 * lilypond-indent.el: New file providing indentation for
1529 parenthesised blocks of lilypond code in Emacs
1531 * lilypond-font-lock.el: Changes to the syntax table to facilitate
1532 indentation and handle block comments properly. Distinguish
1533 accents from close-brackets in fontification.
1535 * lilypond-mode.el: LilyPond-indent-command set appropriately.
1537 2002-01-22 Jan Nieuwenhuizen <janneke@gnu.org>
1539 * Documentation/windows/installing.texi:
1540 * Documentation/windows/compiling.texi: Include from 1.4.10.
1542 * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1544 * input/bugs/first-midi-tie.ly: New file.
1546 2001-12-29 Han-Wen <hanwen@cs.uu.nl>
1548 * VERSION: 1.5.28 released
1550 * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1551 illicit beams on [c4 c4] etc.
1553 * lily/bar-check-iterator.cc (Bar_check_iterator): new
1554 file. Make separate iterator for Bar_checks. Bar_check now happen
1555 outside engravers, meaning that you can use them with
1556 skipTypesetting. Associated changes in other files.
1558 * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1561 * lily/spacing-spanner.cc (stem_dir_correction): removed function
1563 * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1565 * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1567 * lily/stem.cc (set_spacing_hints): removed function
1569 * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1570 correction for spacing; now take vertical extents of the stem into
1573 * lily/third-try.cc: More hacking to get spacing working.
1575 * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1576 sits at staff level and creates note spacing objects. Scrap it
1577 again, and document why.
1579 * lily/include/group-interface.hh: rename functions.
1581 2001-12-27 Jan Nieuwenhuizen <janneke@gnu.org>
1583 * stepmake/stepmake/c++-rules.make:
1584 * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1586 2001-12-25 Jan Nieuwenhuizen <janneke@gnu.org>
1588 * make/lilypond-vars.make:
1589 * scripts/ly2dvi.py (setup_environment):
1590 * scripts/lilypond-book.py (setup_environment): Also set tex
1593 2001-12-24 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1595 * VERSION: 1.5.27 released.
1597 * Documentation/user/refman.itely (Bar numbers): added bar number
1600 * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
1603 2001-12-22 Mats Bengtsson <matsb@s3.kth.se>
1605 * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
1606 spread the last few lines all over the last page of a score.
1608 2001-12-24 Han-Wen <hanwen@cs.uu.nl>
1610 * lily/third-try.cc: 3rd try at revising spacing
1611 engine. Not yet finished.
1613 * lily/paper-column.cc (brew_molecule): print debugging marks on a
1616 * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
1617 collecting past note heads.
1619 * lily/note-heads-engraver.cc (try_music): Remove end_mom_
1622 * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
1623 class. Keep a queue of grobs that are still playing in busyGrobs.
1625 * lily/lyric-combine-music-iterator.cc (get_busy_status): New
1626 function. Use busyGrobs to detect playing notes.
1628 2001-12-16 Jan Nieuwenhuizen <janneke@gnu.org>
1630 * Documentation/topdocs/INSTALL.texi: Added note about broken
1631 python-2.1. Updated note for Debian's broken (well, broken for
1632 our use anyway) tex configuration.
1634 * scripts/lilypond-book.py (re_dict): python2.2 fix.
1636 * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh):
1637 ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
1639 * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
1640 (But left margin of png's still misses a few pixels. Arg.)
1642 2001-12-16 Heikki Junes <hjunes@cc.hut.fi>
1644 * lilypond-mode.el (LilyPond-command-next-midi): Make
1645 possible to kill midi-process (using "C-c C-m").
1647 2001-12-14 Han-Wen <hanwen@cs.uu.nl>
1649 * scripts/lilypond-book.py (LatexPaper.set_geo_option):
1650 Convert strings with dimensions to numbers.
1652 * lily/volta-engraver.cc: only make a bracket for the top staff,
1653 as found in stavesFound.
1655 * lily/bar-number-engraver.cc: remove staff administration.
1657 * lily/mark-engraver.cc (acknowledge_grob): remove staff
1658 administration. This breaks support for invisible-staff.
1660 * lily/staff-collecting-engraver.cc: new engraver. Collects staff
1661 symbols into stavesFound.
1663 * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
1664 grobs, and put them into columns.
1666 * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
1667 Engraver_group_engraver as a potential candidate for ack'ing grobs.
1669 2001-12-13 Heikki Junes <hjunes@cc.hut.fi>
1671 * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
1672 midi section in the Emacs-mode, so it is possible to play certain
1673 score in a multiscore lilypond-file.
1675 2001-12-09 Rune Zedeler <rune@zedeler.dk>
1676 * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
1677 (FIXME: not accessible from guile)
1679 * lily/accidental-engraver.cc: rewrote accidental-routines to get
1680 better support for Kurt Stone's suggestions.
1681 Removed properties: noResetKey, forgetAccidentals, autoReminders,
1683 Changed property: localKeySignature.
1684 Added properties: extraNatural, autoAccidentals,
1687 (BUGFIX: broken-tie-support destroyed in 1.5.16)
1689 * ly/property-init.ly: added commands
1690 \defaultAccidentals \modernAccidentals \modernCautionaries
1691 \noResetKey \forgetAccidentals
1693 * ly/engraver-init.ly: Correct initialization of new accidentals.
1695 * scm/translator-property-description.scm: The new properties
1698 * input/: Some examples added, some changed.
1700 * Documentation/regression-test.tely: Added quick test of new
1703 2001-12-13 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1705 * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
1708 2001-12-07 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1710 * lily/beam.cc (before_line_breaking): Make beams without stems
1711 or with only one stem disappear.
1713 2001-12-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1715 * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
1716 files to have standardised HTML bibliography output. Update build
1717 docs to reflect this.
1719 * lily/include/simple-spacer.hh (struct Simple_spacer): add
1720 active_count_, so that we don't have to look for active springs
1723 * scm/interface-description.scm,scm/grob-property-description.scm:
1726 * lily/simple-spacer.cc (solve): Handle forced line breaks
1727 here. Fixes problems when combining linebreaks with non-fitting
1730 2001-12-05 Jan Nieuwenhuizen <janneke@gnu.org>
1732 * 1.4.9.jcn3 forward ports.
1734 * Really included .cvsignore.
1736 * Included Han-Wen's uu1 windows fixes.
1738 * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
1740 * Added Cygwin setup.hint
1742 * Removed tex, python wrappers and postinstalls to go with Cywgin's
1743 tetex/texmf, python installations.
1745 * Updated cygwin installer.
1747 * ly2dvi: Don't accept filenames with spaces (+ fix).
1749 2001-12-03 Han-Wen <hanwen@cs.uu.nl>
1751 * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
1753 * lily/translator-def.cc: Remove manual symbol caching.
1755 * lily/script-column.cc (before_line_breaking): robustness check:
1756 don't crash if no direction set.
1758 * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
1760 * scripts/pmx2ly.py (Parser.parse_header): more generic header
1764 2001-12-01 Han-Wen <hanwen@cs.uu.nl>
1766 * lily/note-head.cc (head_extent): added to compute width without
1767 ledger lines. By default, ledger lines take up width now.
1769 * input/regression/fingering.ly: demonstrate auto fingering.
1770 Horizontal placement is still buggy.
1772 * lily/fingering-engraver.cc (class Fingering_engraver):
1773 added. Provides support for horizontal fingering scripts
1775 * lily/include/grob.hh: Naming: change parent_l() into get_parent()
1777 * lily/side-position-interface.cc (add_staff_support): add staff
1778 only for Y-axis side positions.
1780 * lily/parser.yy (request_chord): Fix mem leak.
1782 * lily/musical-request.cc (transpose): moved to Music::transpose()
1784 * lily/include/grob-info.hh: Change music pointer to SCM, so we
1785 can store grobs as grob-creation cause as well.
1787 * lily/group-interface.cc (add_thing): efficiency tweak: reuse
1788 handle when adding. Use precomputed symbols throughout lily.
1790 * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
1791 track of spacing issues.
1793 * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
1794 to keep track of staff spacing
1796 2001-11-30 Jan Nieuwenhuizen <janneke@gnu.org>
1798 * Rewrote new conditional guile >= 1.5 compilation switches, to keep
1799 code clean from conditionals and have a concentrated sets of
1800 compatibility fixes for old guile versions.
1802 * Fixes for guile 1.4, including embedded ps.
1804 2001-11-30 Han-Wen Nienhuys <hanwen@cs.uu.nl>
1806 * lily/stanza-number-engraver.cc (process_music): allow pairs as
1807 well for markup texts.
1809 * lily/musical-request.cc (length_mom): kludge for null pointer.
1811 * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
1813 * scm/lily.scm (sign): bugfix
1815 * CHANGES: Change log instated.
1817 * stepmake/add-html-footer.py: @BRANCH@ tag insertion.