cobol
[lilypond.git] / ChangeLog
blobe6181c0f4abbcc141ba4d0d353e7a5cc399229cf
1 2002-05-31  Han-Wen  <hanwen@cs.uu.nl>
3         * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
4         note that missing features are excercise for user.
6 2002-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
8         * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
9         (but alas, not partly precomputed) value for current_y when
10         calculating stem length demerits.
11         (calc_stem_y): Temporary precomputed factors fix.
13         * lily/stem.cc (calc_stem_info): Take multiplicity into account
14         for shortest_y too.
16         * input/bugs/melisma-tie-rest.ly: New file.
18 2002-05-30  Han-Wen  <hanwen@cs.uu.nl>
20         * lily/stem.cc (calc_stem_info): remove min_y member, rename
21         stuff.  Remove kneeing stuff.
23         * lily/beam.cc (brew_molecule): remove beam direction. Lots of
24         twiddling
26 2002-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
28         * scm/sketch.scm: 
29         * scm/ps.scm: 
30         * scm/pdftex.scm: 
31         * scm/pdf.scm: 
32         * scm/tex.scm: Add check for Guile-1.4.1.  Guile includes
33         patch-level of version in minor-version string.  Arg.
35 2002-05-29  Han-Wen  <hanwen@cs.uu.nl>
37         * ly/engraver-init.ly (TabStaffContext): 
38         enable TabStaff by default.
40         *  Tablature support by Jean-Baptiste Lamy <jiba@@tuxfamily.org>
42 2002-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
44         * config.hh.in: Remove duplicate DIR_DATADIR entry.
46         * aclocal.m4: Regenerate.
47         
48         * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
50 2002-05-25  Heikki Junes  <heikki.junes@hut.fi>
52         * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
54         * lilypond-mode.el: Write notes with fewer keystrokes trough a 
55         "Quick notes"-interface.
57 2002-05-26  Jan Nieuwenhuizen  <janneke@gnu.org>
59         * input/regression/non-empty-text.ly: Update example with outdated
60         comment.
62 2002-05-25  Han-Wen  <hanwen@cs.uu.nl>
64         * scripts/convert-ly.py:  add textNonEmpty rule
66         * lily/text-engraver.cc (create_grobs): remove textNonEmpty
68 2002-05-24  Jan Nieuwenhuizen  <janneke@gnu.org>
70         * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
71         using translate-robust add_molecule instead of add_at_edge.
72         Bugfix for #(lines (finger "" "1")).
74 2002-05-24  Han-Wen  <hanwen@cs.uu.nl>
76         * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
77         tremolo placement.
79 2002-05-22  Han-Wen  <hanwen@cs.uu.nl>
81         * VERSION: 1.5.58
82         
83         * Documentation/user/refman.itely: Bugfix: add node Repeats and
84         MIDI.  Regenerate menu.  Fix @end example.
86         * lily/accidental.cc: Add cautionary-style to interface.
88         * mf/feta-beugel.mf (code): use autometric macros for braces.
89         This fixes input/bugs/braces.
91         * lily/afm.cc (count): return numOfChars, not size of array
92         (always equals 256.)
94         * lily/script.cc (before_line_breaking): postpone setting the
95         X-parent of vertical scripts. This fixes the case of scripts on
96         chords with seconds 
98 2002-05-21  Han-Wen  <hanwen@cs.uu.nl>
100         * scm/grob-description.scm:  fix alignment of barnumber: make sure
101         it doesn't hit the G-clef. 
103         * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
104         startGraceMusic not startGraceContext).
106 2002-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
108         * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
109         found.
111 2002-05-20  Han-Wen  <hanwen@cs.uu.nl>
113         * lily/accidental-engraver.cc: remove old accidental engraver,
114         move new one to accidental-engraver.cc.
116         * lily/local-key-item.cc: remove file
118         * lily/include/local-key-item.hh: remove file
120         * scripts/ly2dvi.py (make_preview): add --preview-resolution
121         option.
123         * lily/accidental.cc (brew_molecule): support for cautionary
124         accidentals. 
126         * lily/note-head.cc (internal_brew_molecule): warn if note head
127         not found.
129         * lily/time-signature.cc (special_time_signature): remove warning
130         about time signature. 
132         * lily/spacing-spanner.cc (musical_column_spacing): Prevent
133         reverse springs by limiting fixed-note space.
135 2002-05-19  Jan Nieuwenhuizen  <janneke@gnu.org>
137         * stepmake/aclocal.m4: Bugfix: complain if program not found.
139         * scripts/update-lily.py (next_version, prev_version, diff_name):
140         New function.  Patches now named name-prev-latest.diff.gz.
141         Bugfix: import shutil.
143 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
145         * input/tutorial/sammartini.ly: fix and document autochange
146         weirdness.
148         * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
149         does produce .pdftex files.
151         * lily/note-collision.cc (check_meshing_chords): move file from
152         collision.cc, implement merged note heads (there you go, Drarn :-)
154         * input/regression/collision-heads.ly: new file
156         * VERSION: 1.5.57 released.
158 2002-05-18  Juergen Reuter  <reuter@ipd.uka.de>
160         * mf/parmesan-heads.mf, scm/grob-description.scm,
161         scm/grob-property-description.scm, scm/interface-description,
162         lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
163         lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
164         lily/include/ligature-engraver.hh,
165         lily/include/ligature-bracket.hh, lily/parser.yy,
166         lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
167         lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
168         lily/ligature-head.cc, lily/ligature-engraver.cc,
169         lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
170         implemented white mensural ligatures (still with a big list of
171         TODOs)
174 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
176         * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
177         Documentation/user/internals.itely.
179         * lily/function-documentation.cc: new file. Infrastructure for
180         self documenting Scheme functions.
182 2002-05-18  Han-Wen  <hanwen@cs.uu.nl>
184         * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
186 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
188         * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
189         and * (as in "([^>]*)?")
191 2002-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
193         * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
194         Add info about CVS.  Stable/development are currently 1.4/1.5,
195         both at lilypond.org.
197         * autogen.sh: Generate.
199         * stepmake/configure:
200         * configure: Regenerate.
201         
202         * stepmake/stepmake/automatically-generated.sub.make: Keep
203         original first line.
205         * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
207         * stepmake/stepmake/generic-targets.make (configure): Generate
208         using autogen.sh.
210         * GNUmakefile.in (SCRIPTS):
211         * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
213         * stepmake/autogen.sh: New file.
215         * configure: Check for g++ >= 2.95.
217         * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers.  GNU
218         c/c++ version checking.
220         * flower/include/string.hh: Typo fix.
222         * lily/include/midi-item.hh: Remove stray i.
224         * Documentation/windows/GNUmakefile: Avoid collapsed directory
225         constructs '//'.
226         
227         * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
228         constructs '//' from arguments.
230 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
232         * scm/lily.scm (ly-load): show SCM filenames if verbose.
234         * lily/lily-guile.cc (init_functions): add ly-verbose function.
236         * lily/main.cc (setup_paths): remove LILYINCLUDE support. 
238         * flower/include/{pointer,tuple}*: removed.
240         * VERSION: released 1.5.56
241         
242         * scm/music-functions.scm (check-start-chords): function to check
243         for chords without \context. Apply automatically from parser.
245 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
247         * lily/bar-line.cc: remove index entries. Texinfo can't handle  :
248         in index entries.
250         * scm/output-lib.scm: fix ez notation stems. 
252         * lily/paper-outputter.cc: various fixes to speed up compilation.
254 2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
256         * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
258 2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
260         * scripts/lilypond-book.py (determine_format): Bugfix: correctly
261         determine latex input.
263         * stepmake/bin/install-sh: Include latest from libtool.
265         * stepmake/configure: 
266         * configure: Regenerate.
268         * config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
269         (USER_CFLAGS): Bugfix, include CPPFLAGS.
271         * configure.in: Use new OPTIONAL/REQUIRED mechanism.
273         * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
274         REQUIRED programs and version.  Try to continue configuring, list
275         missing programs at the end, but don't generate a GNUmakefile if
276         REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
277         Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
278         fancy for some older systems.
280 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
282         * lily/score-engraver.cc (typeset_all): sanity check for items
283         that are Y parent to spanner. 
285         * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
286         pedal spanners.
288 2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
290         * lily/*.cc: remove as many iostream use as possible. 
292         * flower/ : remove text-db, text-stream, data-file.
293         
294 2002-05-15  Han-Wen  <hanwen@cs.uu.nl>
296         * scripts/lilypond-book.py: add --no-music option: strip all blocks.
297         (completize_preamble): don't barf if no preamble present.
298         (do_file): allow extensions on --output
300         * scripts/ly2dvi.py (make_preview): make automatic preview of
301         first system. Small cleanups.
303 2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
305         * scripts/lilypond-book.py (make_pixmap): output png directly.
307         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
308         fonts.dir file.
310         * lily/parser.yy (My_lily_parser): comment out code. (Causes
311         problems  with recent bison releases).
313         * make/lilypond.redhat.spec.in: add pfa fonts to X. 
315 2002-05-07  Heikki Junes <hjunes@cc.hut.fi>
317         * lilypond-font-lock.el: Fixes the order of the note name list.
319 2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
321         * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
322         capability, --verbose option, rlimit hack.
324 2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
326         * lily/piano-pedal-engraver.cc: cleanups.
328         * lily/accidental.cc (after_line_breaking): add break tie
329         reminders.
331         * lily/text-engraver.cc (try_music): don't typeset fingerings
333 2002-05-05  Heikki Junes <hjunes@cc.hut.fi>
335         * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
337 2002-05-04  Han-Wen  <hanwen@cs.uu.nl>
339         * lily/*.cc: change gh_str02scm() to ly_str02scm().
341         * lily/spacing-spanner.cc (note_spacing): Bound
342         shortest-playing-length by the distance to next note. This should
343         fix chord tremolo spacing.
345         * VERSION: 1.5.55 released
347         * lily/stem.cc (off_callback): invisible stem over whole note is
348         centered on note now.
350         * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
351         stem-tremolo is stem now.
353         * input/mozart-hrn*.ly: many corrections. 
355         * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
356         support for dynamic scripts.
358         * lily/accidental-placement.cc (position_accidentals): check for
359         collisions as well: should avoid those heads too.
361         * lily/beam.cc (check_concave): allow undefined gap and
362         threshold. Change the meaning of threshold/gap == 0.0.
363         (check_concave): skip Stolba concaveness check if we have a knee
364         on outer stems.
366 2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
368         * lily/chord-tremolo-engraver.cc (try_music): Handle chord
369         tremolos of dotted duration.
371 2002-05-03  Han-Wen  <hanwen@cs.uu.nl>
373         * mf/feta-klef.mf: more twiddling with G clef. Almost straight
374         downstroke again. Sigh.
376         * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
377         script on note head.
379 2002-05-02  Han-Wen  <hanwen@cs.uu.nl>
381         * lily/slur.cc (add_column): allow slur over rest. 
383 2002-04-27  Han-Wen  <hanwen@cs.uu.nl>
385         * lily/beam.cc: move scoring constants out of code
387 2002-04-25  Han-Wen  <hanwen@cs.uu.nl>
389         * mf/feta-nummer.mf: scalability fixes.
391         * mf/feta-nummer-code.mf: fixes for 5, 8. 
393         * mf/feta-klef.mf: G clef fixes.
395 2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
397         * scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.
399         * scripts/lilypond-book.py: %Newline, rather than glue macros
400         after \end{verbatim}.
402 2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
404         * Documentation/user/lilypond-book.itely: 
405         * scripts/lilypond-book.py: Add options [no]indent, linewidth and
406         noinline.
408         * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
410         * scm/grob-property-description.scm (beam-space): Junk.
412         * lily/beam.cc (space_function): New method.
413         (get_interbeam): Call space-function.
415         * scm/grob-description.scm (Beam): Initialize space-function with
416         Beam::space_function.
418         * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
419         Beam.space-function.  Don't quantise grace beams.
421 2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
423         * VERSION: 1.5.54 released
425         * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
426         bulb. 
428         * Documentation/index.texi: add PDF links.
430         * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
432         * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
433         compare #'glyph as strings. 
435         * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
437         * scripts/ly2dvi.py (setup_environment): fix by Mats.
439         * lily/stem.cc (head_count): Change function name. Change property
440         to #'note-heads i.s.o.  #'heads.
441         (position_noteheads): Kern noteheads for invisible stems.
442         (before_line_breaking): Do position_noteheads() for whole note
443         heads too.
445         * lily/accidental-placement.cc (position_accidentals): First
446         determine refpoints, only then determine extents.  
448 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
450         * lily/accidental-placement.cc (position_accidentals): use all
451         note heads for note head-skyline. 
453         * scripts/lilypond-book.py (re_dict): remove all *? regexps.
455 2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>
457         * Documentation/windows/setup.hint (requires): Add gsview dependency.
459         * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
461         * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
463         * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
465 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
467         * mf/feta-schrift.mf: lighter staccato.
469 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
471         * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
473 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
475         * VERSION: 1.5.53 released
477         * scm/lily.scm (ly-load): use primitive-load for loading.
479         * lily/misc.cc: remove quantise_iv()
481         * lily/*.cc: pass read-only arrays by reference.
482         
483         * lily/grob.cc (common_refpoint_of_array): new function. Try to
484         use common_refpoint_of_{array, list} when possible.
486         * lily/include/accidental-placement.hh: new file.
488         * lily/accidental-placement.cc (alignment_callback): position
489         accidentals in a better way.
491         * lily/skyline.cc: new file. Compute distances for collections of
492         boxes.
494         * lily/include/skyline.hh: new file
496 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
498         * lily/accidental.cc (class Accidental_interface): grob for a
499         single accidental.
501         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
502         of reformatting
504         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
505         together with new accidental-interface. 
507         * lily/include/*.hh: remove spurious set_interface() decls.
509         * lily/key-signature-interface.cc (brew_molecule): add padding for
510         natural signs. Make natural typesetting like the sharp.
511         
513         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
514         is now slightly curved, not straight.
515         
517 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
519         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
521         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
522         more strictly. Use more clever regular expressions. Commented regexps.
524 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
526         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
528 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
530         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
531         to control width of staff symbol in ragged-right mode (by request
532         of Han-Wen)
534         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
535         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
536         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
537         added support for ligature brackets (needed when transcribing
538         mensural music)
540 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
542         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
543         Fontify notes more strictly.
545 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
547         * mf/feta-din-code.mf: dynamic z sign.
549 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
551         * lilypond-mode.el: Prevent recoloring strings and comments.
553         * lilypond-font-lock.el: Handle block comments: block comments
554         can have also ordinary comments inside.
555         
556 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
558         * lily/stem.cc (get_default_dir): set direction to CENTER if
559         invisible. Various other fixes to deal with invisible stems and
560         stem-direction == CENTER.
562         * lily/rest-collision.cc (do_shift): take direction from note if
563         not set.
565         * input/regression/tie-grace.ly: new file.
567         * lily/tie-engraver.cc (create_grobs): fix tied graces.
569         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
570         knee correction. Fixes tight spacing for knees.
572 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
574         * VERSION: 1.5.52 released
575         
576         * lily/*.cc: add some undocced properties.
577         scm/grob-description.scm: idem.
579 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
581         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
582         multi-measure rests like "R1 *4" and scheme (typically has '#' 
583         in the beginning). Small fixes. Add few reserved words.
585 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
587         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
588         emacs mode.
590         * Documentation/windows/installing.texi: Suggest gswin32c (console
591         program) for getting the version.  Layout fixes.
593 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
595         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
596         windows viewing commands, remove silly comment about Yap.
598 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
599         
600         * Documentation/topdocs/INSTALL.texi: Describe how to learn
601         configure to find kpathsea on for example Slackware 8.0.
603         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
605         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
606         by default: avoid "1" over single bar rests.
608         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
609         and correct the handling of geometry options.
611 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
613         * lily/include/grob-interface.hh (ADD_INTERFACE): make
614         implementation for Class::has_interface automatically. Junk all
615         other implementations.
617         * lily/grob.cc (internal_get_grob_property): also typecheck
618         property reads. Catches even more undocced properties. Bugfixing
619         left for the uninspired masses.
621         * lily/beam.cc: remove end_after_line_breaking().
623         * lily/grob.cc (calculate_dependencies): remove list support for
624         callbacks.
626         * lily/font-size-engraver.cc: only do font-interface.
628 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
630         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
631           Add few keywords.
633 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
635         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
636         brackets using arpeggio requests.
637         
638         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
639         molecule-callback to use for drawing the brackets.
641         * Documentation/user/refman.itely: 
642         * input/test/chord-bracket.ly: Chord brackets documented
643         
644 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
646         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
648         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
650 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
652         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
653         direction tuplets on beams.
655 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
657         * lilypond-indent.el: Bugfix of indentation of final point in buffer
659 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
661         * lilypond-mode.el: new command: LilyPond-un-comment-region.
662         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
663         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
664         submenu to "LilyPond"-menu.
666         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
667         an interface to play midi.
669 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
671         * input/regression/script-stack-order.ly: new file.
673 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
675         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
677         * mf/feta-din-code.mf: kerning for dynamics.
679 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
681         * input/regression/dynamics-glyphs.ly: new file
683         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
685         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
686         forte f for the 2 number. Some fixes for the other bulbed glyphs.
688         * Documentation/windows/gs-profile.sh:
689         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
690         moved to gs/gsview windows packages.
692 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
694         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
695         finding out the duration. Fixes chord tremolo bug. 
697         * lily/completion-note-heads-engraver.cc (process_music): Set
698         correct duration for all requests of the broken notes.
700         * input/regression/completion-heads.ly: Added example of
701         Completion_heads_engraver.
703         * lilypond-mode.el: Added "2Midi" command
705 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
707         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
708         edge-width, edge-height and shorten-pair properties for tuplet
709         brackets.
711         * lilypond-indent.el: Support for blinking of matching parentheses
712         
713         * lilypond-font-lock.el: Fix fontification of closing > on its own line
714         
715         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
716         cleanups of piano pedal brackets.
718 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
720         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
722 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
724         * mf/feta-new-code.mf:  new dynamic f sign.
725         new dynamic m sign.
727 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
729         * mf/feta-new-code.mf: new dynamic p sign.
731 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
733         * lily/note-spacing.cc (stem_dir_correction): only do
734         beam-correction if a beam is there. 
736         * lily/stem.cc (duration_log): change from flag_i (); better
737         naming.
738         (get_default_stem_end_position): fix dot/flag collision code.
740 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
742         * VERSION: release 1.5.50
744         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
745         unit spring here. Reduces number of warning messages.
747         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
749 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
751         * scm/generic-property.scm: remove generic-property, property-engraver
753         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
755         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
757         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
759         * scm/*.scm: remove volta, hairpin and tuplet functions.
761         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
762         note column for notes/stems/dots that already have parents. Fixes
763         nested grace contexts.
765 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
767         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
768         get too curved slurs.
770         * scm/slur.scm (default-slur-extremity-offset-alist) 
771         (default-phrasing-slur-extremity-offset-alist): Move slur
772         attachments further away from note-head, vertically.  Also, leave
773         a horizontal gap between slur and stem end.
775         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
777 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
779         * input/regression/spacing-grace-duration.ly: new file
781         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
782         for shortest durations.
784         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
785         extent of the mm rest. 
787         * lily/spacing-spanner.cc (get_duration_space): better spacing for
788         really short notes.
790         * lily/tuplet-bracket.cc (make_bracket): new function
791         (get_x_offset): new function; make tuplet brackets align on stems
792         if stem has same direction.
793         (parallel_beam): be anal about matching bracket to tuplet.
795         * lily/lookup.cc (line): new function Lookup::line(). 
797         * scm/tex.scm (dashed-line): change -line to -system in names.
799         * lily/box.cc (add_point): new function.
801         * flower/include/interval.hh: new function add_point ().
802         new function widen()
803         
804 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
806         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
808         * scm/grob-property-description.scm (number-threshold): Add
809         description.
811         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
812         rest if #measures > number-threshold.  Use padding (well, fake
813         using it, anyway).
815         * scm/font.scm (make-style-sheet): New styles: mark-number,
816         mark-letter.
817         (paper20-style-sheet-alist): Add bigger bold fonts.
819         * lily/mark-engraver.cc (process_music): Use style mark-number or
820         mark-letter.
822         * .cvsignore: Ignore all kinds of lilypond input and output.
824         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
826 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
828         * lily/staff-symbol.cc (brew_molecule): make line thickness
829         adjustable.
831         * lily/*.cc: replace stafflinethickness by linethickness.
833 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
835         * input/regression/beam-concave.ly: Add to-be-considered-concave
836         beam.
838         * lily/beam.cc (check_concave): Add check for large gap between an
839         inner notehead and the line through outer noteheads.
841         * scm/grob-description.scm (Beam): Add concaveness-gap, default
842         value 2.0 staff-space.
843         
844         * scm/grob-property-description.scm (concaveness-gap): Add
845         description.
847         * input/mozart-hrn3-allegro.ly: Fix typo.
849 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
851         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
852         lily/note-head-engraver: improved implementation of roundfilledbox
853         (according to Han-Wen's request)
855         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
856         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
857         lily/simple-spacer.cc: ragged-right alignment
859 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
861         * input/regression/spacing-note-flags.ly: new file
863         * input/regression/spacing-rest.ly: new file
865         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
867         * lily/spacing-spanner.cc (note_spacing): make note spacing after
868         all grace notes tight (not only the column directly following a
869         grace note).
871         * scm/grob-description.scm (all-grob-descriptions): don't make
872         mm-rests larger than normal.
874         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
875         curved. Remove white space at the right of flags.
877 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
879         * ports/ports.make: Bugfix: ignore CVS directories.
881         * stepmake/.cvsignore: New file.
883 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
885         * lily/note-spacing.cc (stem_dir_correction): don't correct when
886         there is a flag on the stem.
888         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
890         * scm/grob-property-description.scm (measure-length):
891         measure-length grob property.
893         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
894         better spacing for breakable columns when they're juxtaposed: use
895         measure length if applicable
897         * lily/timing-engraver.cc (start_translation_timestep): store
898         measure length in breakable column at start of measure.
900 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
902         * ROADMAP: Add description for ports dir, to check email upon
903         commit.
905 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
907         * VERSION: 1.5.48 released
908         
909         * lily/multi-measure-rest.cc (symbol_molecule): split off from
910         brew_molecule()
911         (set_spacing_rods): Use symbol_molecule() to determine minimum
912         width
913         (church_rest): split off from brew_molecule()
914         (big_rest): split off from brew_molecule(). Construct using
915         variable shape.
916         
917         * mf/feta-eindelijk.mf: junk multi measure rest.
919 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
921         * lily/multi-measure-rest.cc (add_column): remove columns property.
923         * lily/dynamic-engraver.cc (process_music): add more verbose warning
925         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
926         3 as test piece.
928 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
930         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
931         keywords covered, dropped some non-keywords, include R- and 128-notes
933 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
935         * Code clean-up: Junk multiple implementations of ledger line
936         creation in note_head, custos, and porrectus.  This is important
937         since there soon will be some more applications of ledger lines to
938         come (e.g. ambitus engraver).
940         * Make thickness of ledger lines adjustable.  This is essential
941         for mensural notation.
943         * Fix some bugs in the current ledger_line implementation, most
944         notably that of the horizontal extent of ledger lines which equals
945         at least the extent of the metafont ledger_line character, and
946         which grows(!) if the desired extent shrinks below this limit.
948         * roundfilledbox: variable blotdiameter
950 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
952         * VERSION: 1.5.47 released
954         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
956         * lily/porrectus.cc:  change line-thickness to thickness, change
957         stem-direction to direction.
959         * scm/backend-documentation-lib.scm (check-dangling-properties):
960         Automatically detect doc'ed properties that are not in an interface
962         * scm/grob-property-description.scm: property cleanup. Remove many
963         paper-column props that are non-existent.
965         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
966         the grob has a molecule-callback.
968         * lily/*.cc: remove many set_interface() calls, and their
969         implementations.
971         * input/regression/spacing-knee.ly: new file
973         * input/regression/spacing-clef-first-note.ly: new file
975         * lily/staff-spacing.cc (get_spacing_params): different spacing
976         for pref matter to note at start of line, halfway during line.
978         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
979         correction only if stems have same direction (i.e. not for
980         stem-clef combination).
981         (stem_dir_correction): maximal correction for knees.
983         * lily/*.cc: many updates to interface descriptions.
984         
985         * lily/grob.cc (internal_set_grob_property): add interface check
986         for every set_grob_property call
988         * lily/*.cc: document interface stuff in C++
989         
990         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
992         * lily/volta-bracket.cc: naming: change volta spanner to
993         volta-bracket.
995         * input/bugs/*.ly: cleanup, remove lots of files.
996         
997         * buildscripts/mf-to-table.py (write_ps_encoding): generate
998         .encoding file. WARNING: upgrade to pktrace 1.0.3
1000         * mf/feta-toevallig.mf: change PS name for parentheses.
1002 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1004        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1005        also for textheight
1007 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
1009         * lily/scope.cc: remove file .
1011         * lily/include/scope.hh: remove file. Remove Scope class
1013         * VERSION: 1.5.46
1015         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1016         score_forbidden_quants): ): take out of SCM, pass parameters so
1017         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1018         secs).
1019         (calc_stem_y): robustness: take care of last_visible_stem == 0.
1022         * lily/lily-guile.cc (ly_unit): return internal unit.
1024         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
1026         * lily/paper-outputter.cc (output_version): output internal unit
1027         from Paper_outputter
1029         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1031 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1033        * scripts/ly2dvi.py: clean up old .*pk font caching code.
1035        * scm/ps.scm: Use uppercase postscript font names for the standard
1036        TeX fonts.
1038        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1039        Add all available TeX Type1 fonts, including Feta, to the
1040        Ghostscript font path.
1042        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1043        version (affects the FontName) in lilypond.map.
1045        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1046        documentation file to fetaNNlist.ly to avoid name collisions between
1047        lilypond generated .tex file and font .tex macros file.
1050 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
1052         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1053         made mensural longa and (semi-)brevis leaner
1055         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1057         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1058         clean-up: moved bezier shape and slope from porrectus to lookup
1060         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1061         and /usr/share/texmf/fonts
1063         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1065 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
1067         * lily/text-spanner.cc (brew_molecule): add #'thickness
1068         (brew_molecule): add corrections for thickness in molecule padding.
1070         * lily/line-spanner.cc (line_atom): make function private
1072         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1073         discover bounding box. This solves the cropping problem.
1075         * lily/bar-check-iterator.cc (process): Only resynchronize bar
1076         check when it  fails. This fixes the combination of  grace notes
1077         and bar checks.
1079 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
1081         * lily/repeated-music.cc (minimum_start): new Scheme callable function
1082         (first_start): new Scheme callable. This will fix repeated music
1083         starting with grace notes.
1085         * lily/music.cc (start_mom): check start-moment-function grob property.
1087         * VERSION: 1.5.45 released
1089         * input/regression/system-extents.ly: new regression test. Test
1090         System extents. 
1092         * lily/system.cc: rename LineOfScore into System 
1094         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1096         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1097         (ly_get_extent): new Scheme function ly-get-extent
1099         * ps/lilyponddefs.ps: use output-scale for  line-x
1100         definition. 
1102         * scm/ps.scm (font-load-command): 
1103         use output-scale
1105 2002-03-20  Rune Zedeler <rune@zedeler.dk>
1106         
1107         * lily/beaming-info.cc: Stupid typo fixed
1108         
1109         * lily/accidental-engraver.cc: rewrote accidental-routines to get
1110         support for cross-context auto-accidentals.
1111         Now the engraver can stay in Staff-context and see other contexts
1112         from there.
1113         Changed properties: autoAccidentals, autoCautionaries
1115         * lily/translator-group.cc (set_children_property):
1116         Function added recursively setting the same property (deep_copied)
1117         for all children of a Translator_group.
1118         
1119         * ly/property-init.ly: added commands
1120         \pianoAccidentals \voiceAccidentals
1121         \modernVoiceAccidentals \modernVoiceCautionaries
1123         * ly/engraver-init.ly: Correct initialization of new accidentals.
1124         
1125         * scm/translator-property-description.scm: Updated
1126         
1127         * input/regression/accidental-voice.ly: Added
1128         
1129         * Documentation/regression-test.tely: Added new test    
1131 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1133         * VERSION: 1.5.44 released
1135         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1137         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1139         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1140         at 0.4 pt.
1142         * tex/feta*.tex: remove.
1143         
1144         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1145         all software dealing with it.
1147 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1149         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1150         (this fixes pdf output).  Drop awk dependency.
1152         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1153         dimensions (linewidth) are in mm.
1155         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1157         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1159         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1161 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
1163         * VERSION: 1.5.43 released
1165         * scm/beam.scm (beam-dir-majority-median): if majority is
1166         undecided, use median. Removes a forced dir in sarabande.
1168         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1170 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1172         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1173         widths, heights and shortens are now customisable properties.
1175         * scm/grob-description.scm, scm/grob-property-description.scm: New
1176         properties added to PianoPedalBracket, unnecessary
1177         Y-offset-callbacks removed from *Pedal, undocumented properties
1178         fixed.
1180         * Documentation/user/refman.itely: Piano pedal updates.
1182 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1184         * scm/grob-property-description.scm:
1185         * scm/interface-description.scm: Remove old stuff.
1187         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1188         0.48 (previously 0.42).
1189         (Beam): Remove old stuff.
1191         * lily/stem.cc: 
1192         * lily/stem-tremolo.cc: 
1193         * lily/beam.cc: 
1194         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
1195         (previously space-function).
1197         * stepmake/bin/add-html-footer.py: Website title fix.
1199 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1201         * scripts/ly2dvi.py (environment): use new font searching setup.
1203         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1205         * lily/tfm.cc (dimensions): make code dimension independent
1207         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1208         scaling
1210         * tex/lily-ps-defs.tex: scaling for PS points and MM.
1212         * lily/include/dimensions.hh: try MM as internal unit.
1214         * scm/*.scm: remove invoke-dim1
1216 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1218         * GNUmakefile.in (fontpaths): add fontpaths target,
1220         * make/mutopia-targets.make: add PDF rules.
1222         * make/mutopia-rules.make: add pdf rule.
1224         * buildscripts/mutopia-index.py (list_item): add PDF.
1226         * buildscripts/lilypond-profile.sh (TEXMF): typo.
1228         * make/lilypond-vars.make: set TEXMF for the new font setup.
1230 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1232         * VERSION: 1.5.42 released
1233         
1234         * mf/feta-schrift.mf: endless twiddling of Tr.
1236         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1237         endless twiddling with the bulb shape.
1239         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1240         little smaller if there is an accidental.
1242 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1244         * buildscripts/lilypond-profile.sh: 
1246         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1247         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1248         Implement new font installation strategy
1250         * Documentation/misc/fontinstallation (TEXMF): Documentation of
1251         the new font installation strategy.
1253         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1254         for comment-region.
1256         * input/test/staff-size.ly: Simplified using StaffContainer
1258         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1259         lilypond.map file
1261 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1263         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1265         * lily/beam.cc (score_stem_lengths): new quanting stuff
1266         (score_forbidden_quants): Second and third beam quant stuff.
1268 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1270         * lily/beam.cc (least_squares): Remember least-squares-dy for
1271         later use.
1272         (quantise_interval): Don't quant to dy steeper that
1273         least-squares-dy.  Return empty interval if no sane quants found.
1274         (quantise_position): Try quantise_interval until we have
1275         acceptable solution.
1277 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1279         * scm/interface-description.scm (beam-interface): Update.
1281 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1283         * VERSION: 1.5.41 released
1284         
1285         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
1286         optima serifs on top of t, bottom of r.
1288         * mf/feta-bolletjes.mf: make ledger line rounder. 
1290         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1292         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1293         parametrization.
1295 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1297        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1298        well as text pedal indications and a combination of both.  All
1299        pedal indications are horizontally aligned on a line spanner.
1301        * lily/text-spanner.cc: Edge-width property added to use in
1302        bracketed piano pedals. Function setup_sustain_pedal added to set
1303        the dimensions of the brackets. 
1305        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
1306        some of the *Pedal properties tweaked. 
1308        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1309        edge-width (TextSpanner) properties.
1311        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
1313        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1314        fontified identifiers list.
1316        * input/test/pedal.ly: New pedal features added. 
1318        * Documentation/user/refman.itely: New pedal features documented.
1319        
1321 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1323         * lily/include/new-beam.hh: Previously new-beam.hh
1324         * lily/beam.cc: Previously new-beam.cc
1325         (least_squares): Bugfix: don't barf on beams with less than two
1326         visible stems (tremolos).
1328         * scm/beam.scm: 
1329         * scm/grob-description.scm (Beam): Junk old beam stuff.
1330         
1331         
1332 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1334         * VERSION: 1.5.40
1336         * mf/feta-eindelijk.mf: new 8th rest.
1338         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1339         stick out of staffline
1341         * scripts/lilypond-book.py: fixes for texi regular expressions.
1343 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1345         * lily/include/new-beam.hh:
1346         * lily/new-beam.cc: New file.
1348         * flower/include/interval.hh: 
1349         * flower/include/interval.tcc (delta): New method.
1350         (swap): Now public (previously private).
1351         
1352         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1353         1 staff-line-thickness.  Sadly, this makes dy quanting problems
1354         (dy quants allowed should depend on actual left y) more visible.
1356 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1358         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
1360         * scm/grob-property-description.scm (concaveness-threshold): Add
1361         typecheck and description.
1363         * scm/grob-description.scm (Beam): Remove obsolete properties, add
1364         concaveness-threshold (previously concaveness).
1366         * lily/beam.cc (check_concave): Remove choices and debugging
1367         stuff: use best concaveness calculation.
1368         (quantise_dy): Remove choice.  Try to never make a slope steeper
1369         by quantising, but certainly never quantise a slope away.
1370         (check_stem_length_f): Remove choice.  In case of lengthening
1371         alowed, always lengthen to ideal length.
1373         * Documentation/index.texi: Fix FAQ url.
1375         * Documentation/topdocs/INSTALL.texi: Add information about fink,
1376         compile fix and 1.4 specific fix that doesn't hurt 1.5.
1378 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
1380         * VERSION: 1.5.39 released
1382         * lily/simple-spacer.cc (add_rod): rods take precedence over
1383         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1385         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1387         * lily/note-spacing.cc (get_spacing): only insert space for
1388         accidentals if necessary.
1390         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1392         * lily/spacing-spanner.cc (musical_column_spacing): new
1393         function. Have correct spacing from note to end-of-line as well.
1395 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1397        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1399        * darwin.patch: New file.
1401        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1402        code.  Shorten stems by fraction of stems to be shortened.
1404        * lily/stem.cc (get_default_stem_end_position): Shorten only half
1405        of shorten value for boundary cases.
1407        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1408        (Beam): Set beamed-stem-shorten to (1.0 0.5).
1410 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1412        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1414        * scm/grob-description.scm (Beam): Add concaveness.  Replace
1415        Beam::cancel_suspect_slope with Beam::check_concave.
1417        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1418        set slope to horizontal if concaveness > Beam.concaveness.  This
1419        handles cases that kludgy cancel_suspect_slope was meant to catch
1420        very well.
1421        (cancel_suspect_slope): Remove.
1423 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1425         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1426         stemLeftBeamCount and stemRightBeamCount to equal 0.
1427         Fixes [c8 c4 c8]
1428       
1429 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
1431         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1432         fixed spacing for pref matter, if the next column is musical, and
1433         at the same moment.
1435         * lily/note-spacing.cc (stem_dir_correction): Use correct
1436         discretionary for stem-bar spacing.
1438 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
1440         * VERSION: 1.5.38 released 
1442         * lily/grob.cc (warning): Use cause tracking to give more
1443         meaningful errors from the backend. 
1445         * lily/property-iterator.cc (check_grob): Warn if setting grob
1446         property in unknown grob. 
1448         * mf/feta-toevallig.mf: brushed stems for natural sign.
1450         * lily/molecule.cc (align_to): don't translate empty molecule.
1451         (this triggers a very subtle bug in time-signature.)  
1453 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
1455         * lily/spring.cc: remove file.
1457         * input/regression/spacing-stem-bar.ly: new file
1459         * lily/score.cc (run_translator): resurrect point-and-click
1461         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1462         sarabande layout
1464         * lily/spacing-spanner.cc (find_shortest): Shortest note for
1465         spacing is now globally determined, using the most common shortest
1466         note. Notes that are shorter are spaced geometrically, and with
1467         expand hints. This makes spacing more even, and measures that have
1468         very short notes won't be that stretched out.  
1470         * mf/feta-klef.mf: F-clef fixes, documentation on the
1471         shape. (WARNING: font changed.)
1473 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
1475         * lily/simple-spacer.cc (add_columns): support for infinitely
1476         stiff springs.
1478         * lily/staff-spacing.cc (get_spacing_params): space after
1479         prefatory matter is fixed.
1481 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
1483         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1484         barline following an upstem.
1486         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1487         function from next_notes_correction().
1488         (bar_y_positions): idem.
1490 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1492         * input/regression/break.ly (texidoc): bugfix: escape \ in
1493         strings.
1495         * lily/staff-spacing.cc (next_notes_correction): Correct the
1496         spacing of a note following a barline.
1499 2002-03-04  Glen Prideaux
1501         * mf/feta-solfa.mf: Shaped note heads
1503 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
1505         * VERSION: 1.5.37 released
1507         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1508         left-align molecule.
1509         
1510         * lily/break-align-interface.cc (do_alignment): completely
1511         rewritten. Now it does not use Align_interface anymore, but a
1512         separate routine. Like StaffSpacing, it reads space-alist from the
1513         breakable grobs.  This allows you to set spacing using
1514         
1515         \property Staff.Clef \override #'space-alist = '(....stuff....)  
1517         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1518         to Bar_line. Move files around as well.
1520         * lily/time-signature.cc (time_signature): left align time signatures. 
1522         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1523         Corrections of the glyph shape C. Comments added.
1525 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1527         * lily/spacing-spanner.cc: move from third-try.cc; rename
1528         Third_spacing_spanner to Spacing_spanner.
1530         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1531         spacing stuff. Much cleaner now, and we prepare for neat spacing
1532         tricks around bar lines and such.
1534         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1535         variables with themselves. (Ouch.)
1537         * lily/span-bar.cc (brew_molecule): don't try to span bars that
1538         overlap.
1540 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1542         * VERSION: 1.5.36
1544         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1545         ly_dir_p
1547         * lily/music.cc (ly_get_mus_property): typechecking
1548         (ly_set_mus_property): idem
1549         (ly_make_music): idem
1550         (ly_music_name): idem
1552         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1554         * lily/note-spacing.cc (stem_dir_correction): correction for
1555         same stem notes as well. 
1557         * lily/pitch.cc (pitch_transpose): stricter typechecking
1559         * mf/parmesan*mf: magnification fixes.
1561         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1563 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1565         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1566         documenting the font. (Doesn't work for parmesan at the moment)
1568         * Documentation/user/appendices.itely (The Feta font): Add list of
1569         Feta font symbols with names.
1571         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1572         automatically
1574 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
1576         * lily/translator-group.cc (ly_set_trans_property): typechecking
1577         (ly_get_trans_property): typechecking.
1579         * lily/font-metric.cc (ly_text_dimension): typechecking 
1580         (ly_find_glyph_by_name): idem.
1582         * scm/bass-figure.scm (brew-complete-figure): support for
1583         bracketed numbers.
1584         
1585         * lily/grob.cc (ly_get_paper_var): new function
1587 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1589         * VERSION (PATCH_LEVEL): 1.5.35 released.
1591         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1592         (bracket): New function.
1594         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1595         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
1597         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1598         bugfix.
1600         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1601         typecheck bugfix. 
1603         * lily/grob.cc (ly_get_grob_property): be anal about types.
1604         (ly_set_grob_property): idem
1606         * lily/figured-bass-engraver.cc (process_music): move molecule
1607         building completely to Scheme
1609         * lily/include/musical-request.hh (class Bass_figure_req): Add
1610         class. 
1612         * lily/parser.yy (bass_figure): add support for space figure.
1614         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
1616         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1618         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1619         (ly_align_to_x): new function ly-align-to!
1621         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1622         function ly-get-font
1624         * mf/feta-nummer.mf: include normal-space dimension. 
1626         * lily/collision.cc (check_meshing_chords): don't merge collisions
1627         with whole notes.
1628         
1629         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1630         glyph is string.
1632 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
1634         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1636 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
1638         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
1639         font changed)
1641         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1642         than mensural chars
1644         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1645         scm/grob-description.scm: added mensural fermata symbol
1647 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1649         * VERSION: 1.5.34 released.
1651         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1653         * lily/staff-symbol-referencer.cc (callback): assume that
1654         staff-position is unset in general.
1656         * input/regression/rest-pitch.ly: new file.
1658         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1659         a4\rest
1661 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1663         * lily/scm-option.cc (set_lily_option): add internal-type-checks
1664         as Scheme option. Run regression test by default with
1665         internal-type-checking.
1667         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
1669         * lily/lily-guile.cc (type_check_assignment): changed functions.
1671         * scm/*description*.scm: be anal about typechecks. Some changes
1672         for internal variable names.
1674 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1676         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
1678 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
1680         * VERSION: 1.5.33 released.
1682         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1683         flare_path everywhere (c-clef, numbers).        
1685         * lily/bar-number-engraver.cc (process_music): also print bar
1686         number if measure starts with grace note.       
1688         * input/regression/grace-bar-number.ly: new test.
1690 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
1692         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1693         rest as well.
1695         * scm/music-functions.scm (voicify-music):  split chords into
1696         different voices automatically.
1698         * lily/music.cc (ly_music_list_p): new function
1700         * lily/music-sequence.cc (do_relative_octave): robustification
1702         * scm/music-functions.scm: many utility functions 
1704         * lily/music.cc (ly_set_mus_property): add type checks to the
1705         Scheme property assignment.
1707         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1708         dvips fixes
1710         * mf/lilypond.map: .map file from Mats' page. 
1712 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
1714         * Some more parmesan related fixes;
1716         * Custos: varying shape (in particular, stem length), depending on the
1717           vertical position of the custos (on staffline / between stafflines);
1719         * Custos: added grob property "neutral-direction" (same semantics as
1720           with stem); introduced new grob property "neutral-position";
1722         * Time-signature: print a warning when resorting to default layout.
1724 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1726         * lily/translator-group.cc (add_fresh_simple_translator): remove
1727         function; initialize() is called through
1728         Translator_group::initialize().
1730         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1731         for the neighbors of a loose column.
1733         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1734         position loose columns so that they don't collide.
1736 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1738         * VERSION: 1.5.32 released.
1740         * scm/font.scm: remove font-name symbol.
1742         * mf/GNUmakefile: use pktrace for making PFAs
1744         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1746         * lily/rest-collision.cc (do_shift): read direction field from
1747         rest-column in case of note-rest collision. This should fix some
1748         problems with rest collisions.
1750 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1752         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1753         property.
1755         * lily/note-head.cc (brew_ez_molecule): Remove note-character
1756         property. Read pitch directly from #'cause.
1758         * mf/feta-puntje.mf: bugfix
1760 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
1761         
1762         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1764 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1766         * Documentation/windows/compiling.texi: Update.
1768         * Documentation/index.texi: Add link to orphaned compiling for
1769         windows page.
1771         * Documentation/footer.html.in: Comment fix.
1773         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1775 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
1776         
1777         * VERSION: 1.5.31 released
1779         * lily/new-spacing-spanner.cc: remove file.
1781         * lily/third-try.cc (do_measure): only take spacings into account
1782         if they pertain to the column pair under consideration. This fixes
1783         spacing bug when mixing eighths triplets and normal eighths.
1785         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1786         lines don't take up space anymore. Document why in note-head.cc
1787         comment.
1789 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
1791         * lily/font-interface.cc (get_font): reinstate
1792         #'font-magnification. See input/regression/font-magnification.ly
1793         (get_font): Change the definition of  #'font-name grob property.
1795         * lily/grob.cc (get_uncached_molecule): output origin for grobs
1796         that have a #'cause field.
1798 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1800         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
1802         * mf/GNUmakefile:  remove metapost stuff
1804         * stepmake/aclocal.m4: remove metapost detection stuff.
1806 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1808         * mf/GNUmakefile (FET_FILES): 
1809         (FONT_FILES): Include parmesan.
1811         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
1812         iso regex, regsub
1814         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1816         * Documentation/user/refman.itely (Paper size): Quote braces.
1818 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1820         * stepmake/aclocal.m4: fixed bison version check to be more
1821         robust.
1823         * lily/stem.cc (position_noteheads): fix for cluster chords.
1825         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
1827         * python 2.2 support.
1829 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
1831         * VERSION: 1.5.30 released
1833         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1835         * Documentation/user/refman.itely (Dynamics): add a note about
1836         DynamicLineSpanner.
1838         * scm/grob-description.scm: add a 'translator-type?  object
1839         property, so that \property Foo.Bar =\turnOff doesn't cause
1840         type check warning.
1842         * lily/translator-group.cc (add_fresh_group_translator): make
1843         new add-translator functions to make distinction between fresh and
1844         used group-translators. Fixes problem with scripts on auto-changing voice 
1846         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1847         add to Score_performer. Fixes bar checks in MIDI
1849         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1850         heads. Fixes many quirks with ties.
1852         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1853         in the grob property #'cause, instead of using Grob_info.
1855         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1856         staff context, fixing dot alignment on collisions.
1858         * lily/beam-engraver.cc (try_music): remove can't find beam start
1859         warning, so that skipTypesetting won't complain.
1861 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1863         * Documentation/user/refman.itely (Paper size): Documentation fix,
1864         papersize
1866         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1868         * scm/grob-description.scm: \breathe: Use feta font comma by default
1870 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1872         * input/template/piano-dynamics.ly (pedal): Simplified
1874 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1876         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1878 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
1880         * lilypond-mode.el (LilyPond-command-query): ignore case.
1882 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1884         * VERSION: 1.5.29 released
1886         * all files: change 2001 to 2002 in headers globally
1888         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1889         cheese") font. WARNING: fonts changed.
1890         
1891 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
1893         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1894         
1895         * mf/*.mf: Added some more vaticana/solesmes style font symbols
1896         
1897         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1899         * mf/*.mf: Fixed a few typos in various .mf files
1901 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1903         * mf/: added macro soft_penstroke
1904         
1905                softened some glyphs
1906                redrawn triangular noteheads
1907                redrawn tab-clef
1908                added classical quarter rest
1909         
1910         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1912         * lily/bar.cc: Bugfix: repeat dots when even number of staff
1913         lines and staff_space>=2
1915         * lily/rest.cc: Use default rests when current style glyphs not
1916         found - this allows
1917         \property Staff.Rest \override #'style = #'classical
1919 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1921         * input/bugs/first-tie.ly: New file.
1923         * input/bugs/spacing-clash.ly: New file.
1925 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1927         * po: regenerate.
1929 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1931         * lilypond-indent.el: New file providing indentation for
1932         parenthesised blocks of lilypond code in Emacs
1933         
1934         * lilypond-font-lock.el: Changes to the syntax table to facilitate
1935         indentation and handle block comments properly. Distinguish
1936         accents from close-brackets in fontification.
1938         * lilypond-mode.el: LilyPond-indent-command set appropriately.
1940 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1942         * Documentation/windows/installing.texi: 
1943         * Documentation/windows/compiling.texi: Include from 1.4.10.
1945         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1947         * input/bugs/first-midi-tie.ly: New file.
1949 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
1950         
1951         * VERSION: 1.5.28 released
1953         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1954         illicit beams on [c4 c4] etc.
1956         * lily/bar-check-iterator.cc (Bar_check_iterator): new
1957         file. Make separate iterator for Bar_checks. Bar_check now happen
1958         outside engravers, meaning that you can use them with
1959         skipTypesetting. Associated changes in other files.
1960         
1961         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1962         function
1963         
1964         * lily/spacing-spanner.cc (stem_dir_correction): removed function
1966         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1968         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1970         * lily/stem.cc (set_spacing_hints): removed function
1972         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1973         correction for spacing; now take vertical extents of the stem into
1974         account.  
1976         * lily/third-try.cc: More hacking to get spacing working.
1978         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1979         sits at staff level and creates note spacing objects. Scrap it
1980         again, and document why.
1982         * lily/include/group-interface.hh: rename functions. 
1984 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1986         * stepmake/stepmake/c++-rules.make:
1987         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1989 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
1991         * make/lilypond-vars.make: 
1992         * scripts/ly2dvi.py (setup_environment): 
1993         * scripts/lilypond-book.py (setup_environment): Also set tex
1994         memory options.
1996 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1998         * VERSION: 1.5.27 released.
2000         * Documentation/user/refman.itely (Bar numbers): added bar number
2001         documentation.
2003         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2004         again.
2006 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
2008         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2009         spread the last few lines all over the last page of a score.
2011 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
2013         * lily/third-try.cc: 3rd try at revising spacing
2014         engine. Not yet finished.
2016         * lily/paper-column.cc (brew_molecule): print debugging marks on a
2017         paper-column.
2019         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2020         collecting past note heads.
2022         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2023         stuff.
2025         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2026         class. Keep a queue of grobs that are still playing in busyGrobs. 
2028         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2029         function. Use busyGrobs to detect playing notes.
2030         
2031 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2033         * Documentation/topdocs/INSTALL.texi: Added note about broken
2034         python-2.1.  Updated note for Debian's broken (well, broken for
2035         our use anyway) tex configuration.
2036         
2037         * scripts/lilypond-book.py (re_dict): python2.2 fix.
2038         
2039         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
2040         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2041         
2042         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2043         (But left margin of png's still misses a few pixels.  Arg.)
2044         
2045 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
2047         * lilypond-mode.el (LilyPond-command-next-midi): Make
2048         possible to kill midi-process (using "C-c C-m").
2050 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
2052         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2053         Convert strings with dimensions to numbers.
2055         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
2056         as found in stavesFound. 
2058         * lily/bar-number-engraver.cc: remove staff administration. 
2060         * lily/mark-engraver.cc (acknowledge_grob): remove staff
2061         administration. This breaks support for invisible-staff.
2063         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2064         symbols into stavesFound.
2066         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2067         grobs, and put them into columns.
2069         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2070         Engraver_group_engraver as a potential candidate for ack'ing grobs.
2072 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
2074         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2075         midi section in the Emacs-mode, so it is possible to play certain
2076         score in a multiscore lilypond-file.
2077          
2078 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
2079         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2080         (FIXME: not accessible from guile)
2081         
2082         * lily/accidental-engraver.cc: rewrote accidental-routines to get
2083         better support for Kurt Stone's suggestions.
2084         Removed properties: noResetKey, forgetAccidentals, autoReminders,
2085                             lazyKeySignature.
2086         Changed property:   localKeySignature.
2087         Added properties:   extraNatural, autoAccidentals,
2088                             autoCautionaries.
2090         (BUGFIX: broken-tie-support destroyed in 1.5.16)
2091         
2092         * ly/property-init.ly: added commands
2093         \defaultAccidentals \modernAccidentals \modernCautionaries
2094         \noResetKey \forgetAccidentals
2096         * ly/engraver-init.ly: Correct initialization of new accidentals.
2097         
2098         * scm/translator-property-description.scm: The new properties
2099         added.
2100         
2101         * input/: Some examples added, some changed.
2102         
2103         * Documentation/regression-test.tely: Added quick test of new
2104         accidentals.
2106 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2108         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2109         header not found
2111 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2113         * lily/beam.cc (before_line_breaking): Make beams  without stems
2114         or with only one stem disappear.
2116 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2118         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2119         files to have standardised HTML bibliography output. Update build
2120         docs to reflect this.
2122         * lily/include/simple-spacer.hh (struct Simple_spacer): add
2123         active_count_, so that we don't have to look for active springs
2124         anymore.
2126         * scm/interface-description.scm,scm/grob-property-description.scm:
2127         Add 'penalty
2129         * lily/simple-spacer.cc (solve): Handle forced line breaks
2130         here. Fixes problems when combining linebreaks with non-fitting
2131         line configurations
2133 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2135         * 1.4.9.jcn3 forward ports.
2136         
2137         * Really included .cvsignore.
2139         * Included Han-Wen's uu1 windows fixes.
2141         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2143         * Added Cygwin setup.hint
2145         * Removed tex, python wrappers and postinstalls to go with Cywgin's
2146         tetex/texmf, python installations.
2148         * Updated cygwin installer.
2150         * ly2dvi: Don't accept filenames with spaces (+ fix).
2152 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
2154         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2156         * lily/translator-def.cc: Remove manual symbol caching.
2158         * lily/script-column.cc (before_line_breaking): robustness check:
2159         don't crash if no direction set.
2161         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2163         * scripts/pmx2ly.py (Parser.parse_header): more generic header
2164         parsing.
2167 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
2169         * lily/note-head.cc (head_extent): added to compute width without
2170         ledger lines. By default, ledger lines take up width now.
2172         * input/regression/fingering.ly: demonstrate auto fingering.
2173         Horizontal placement is still buggy. 
2174         
2175         * lily/fingering-engraver.cc (class Fingering_engraver):
2176         added. Provides support for horizontal fingering scripts
2178         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2180         * lily/side-position-interface.cc (add_staff_support): add staff
2181         only for Y-axis side positions.
2183         * lily/parser.yy (request_chord): Fix mem leak.
2185         * lily/musical-request.cc (transpose): moved to Music::transpose()
2187         * lily/include/grob-info.hh: Change music pointer to SCM, so we
2188         can store grobs as grob-creation cause as well.
2190         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2191         handle when adding. Use precomputed symbols throughout lily.
2192         
2193         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2194         track of spacing issues.
2196         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2197         to keep track of staff spacing
2199 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
2201         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2202           code clean from conditionals and have a concentrated sets of
2203           compatibility fixes for old guile versions.
2205         * Fixes for guile 1.4, including embedded ps.
2207 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2209         * lily/stanza-number-engraver.cc (process_music): allow pairs as
2210         well for markup texts.
2212         * lily/musical-request.cc (length_mom): kludge for null pointer.
2214         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2216         * scm/lily.scm (sign): bugfix
2218         * CHANGES: Change log instated.
2220         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.