*** empty log message ***
[lilypond.git] / ChangeLog
blob4bb64bf7cefae0338ff5e739f3c67ab5f9defaab
1 2002-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * lily/beam.cc (quanting): Increase REGION_SIZE to 4 by default.
4         While we'd rather not pay the performance penalty, we certainly
5         don't want silly bugs.  This should be looked into.
7 2002-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
9         * stepmake/aclocal.m4: Fix for ash as /bin/sh.
11 2002-05-31  Han-Wen  <hanwen@cs.uu.nl>
13         * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
14         note that missing features are excercise for user.
16 2002-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
18         * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
19         (but alas, not partly precomputed) value for current_y when
20         calculating stem length demerits.
21         (calc_stem_y): Temporary precomputed factors fix.
23         * lily/stem.cc (calc_stem_info): Take multiplicity into account
24         for shortest_y too.
26         * input/bugs/melisma-tie-rest.ly: New file.
28 2002-05-30  Han-Wen  <hanwen@cs.uu.nl>
30         * lily/stem.cc (calc_stem_info): remove min_y member, rename
31         stuff.  Remove kneeing stuff.
33         * lily/beam.cc (brew_molecule): remove beam direction. Lots of
34         twiddling
36 2002-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
38         * scm/sketch.scm: 
39         * scm/ps.scm: 
40         * scm/pdftex.scm: 
41         * scm/pdf.scm: 
42         * scm/tex.scm: Add check for Guile-1.4.1.  Guile includes
43         patch-level of version in minor-version string.  Arg.
45 2002-05-29  Han-Wen  <hanwen@cs.uu.nl>
47         * ly/engraver-init.ly (TabStaffContext): 
48         enable TabStaff by default.
50         *  Tablature support by Jean-Baptiste Lamy <jiba@@tuxfamily.org>
52 2002-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
54         * config.hh.in: Remove duplicate DIR_DATADIR entry.
56         * aclocal.m4: Regenerate.
57         
58         * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
60 2002-05-25  Heikki Junes  <heikki.junes@hut.fi>
62         * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
64         * lilypond-mode.el: Write notes with fewer keystrokes trough a 
65         "Quick notes"-interface.
67 2002-05-26  Jan Nieuwenhuizen  <janneke@gnu.org>
69         * input/regression/non-empty-text.ly: Update example with outdated
70         comment.
72 2002-05-25  Han-Wen  <hanwen@cs.uu.nl>
74         * scripts/convert-ly.py:  add textNonEmpty rule
76         * lily/text-engraver.cc (create_grobs): remove textNonEmpty
78 2002-05-24  Jan Nieuwenhuizen  <janneke@gnu.org>
80         * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
81         using translate-robust add_molecule instead of add_at_edge.
82         Bugfix for #(lines (finger "" "1")).
84 2002-05-24  Han-Wen  <hanwen@cs.uu.nl>
86         * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
87         tremolo placement.
89 2002-05-22  Han-Wen  <hanwen@cs.uu.nl>
91         * VERSION: 1.5.58
92         
93         * Documentation/user/refman.itely: Bugfix: add node Repeats and
94         MIDI.  Regenerate menu.  Fix @end example.
96         * lily/accidental.cc: Add cautionary-style to interface.
98         * mf/feta-beugel.mf (code): use autometric macros for braces.
99         This fixes input/bugs/braces.
101         * lily/afm.cc (count): return numOfChars, not size of array
102         (always equals 256.)
104         * lily/script.cc (before_line_breaking): postpone setting the
105         X-parent of vertical scripts. This fixes the case of scripts on
106         chords with seconds 
108 2002-05-21  Han-Wen  <hanwen@cs.uu.nl>
110         * scm/grob-description.scm:  fix alignment of barnumber: make sure
111         it doesn't hit the G-clef. 
113         * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
114         startGraceMusic not startGraceContext).
116 2002-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
118         * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
119         found.
121 2002-05-20  Han-Wen  <hanwen@cs.uu.nl>
123         * lily/accidental-engraver.cc: remove old accidental engraver,
124         move new one to accidental-engraver.cc.
126         * lily/local-key-item.cc: remove file
128         * lily/include/local-key-item.hh: remove file
130         * scripts/ly2dvi.py (make_preview): add --preview-resolution
131         option.
133         * lily/accidental.cc (brew_molecule): support for cautionary
134         accidentals. 
136         * lily/note-head.cc (internal_brew_molecule): warn if note head
137         not found.
139         * lily/time-signature.cc (special_time_signature): remove warning
140         about time signature. 
142         * lily/spacing-spanner.cc (musical_column_spacing): Prevent
143         reverse springs by limiting fixed-note space.
145 2002-05-19  Jan Nieuwenhuizen  <janneke@gnu.org>
147         * stepmake/aclocal.m4: Bugfix: complain if program not found.
149         * scripts/update-lily.py (next_version, prev_version, diff_name):
150         New function.  Patches now named name-prev-latest.diff.gz.
151         Bugfix: import shutil.
153 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
155         * input/tutorial/sammartini.ly: fix and document autochange
156         weirdness.
158         * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
159         does produce .pdftex files.
161         * lily/note-collision.cc (check_meshing_chords): move file from
162         collision.cc, implement merged note heads (there you go, Drarn :-)
164         * input/regression/collision-heads.ly: new file
166         * VERSION: 1.5.57 released.
168 2002-05-18  Juergen Reuter  <reuter@ipd.uka.de>
170         * mf/parmesan-heads.mf, scm/grob-description.scm,
171         scm/grob-property-description.scm, scm/interface-description,
172         lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
173         lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
174         lily/include/ligature-engraver.hh,
175         lily/include/ligature-bracket.hh, lily/parser.yy,
176         lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
177         lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
178         lily/ligature-head.cc, lily/ligature-engraver.cc,
179         lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
180         implemented white mensural ligatures (still with a big list of
181         TODOs)
184 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
186         * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
187         Documentation/user/internals.itely.
189         * lily/function-documentation.cc: new file. Infrastructure for
190         self documenting Scheme functions.
192 2002-05-18  Han-Wen  <hanwen@cs.uu.nl>
194         * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
196 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
198         * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
199         and * (as in "([^>]*)?")
201 2002-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
203         * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
204         Add info about CVS.  Stable/development are currently 1.4/1.5,
205         both at lilypond.org.
207         * autogen.sh: Generate.
209         * stepmake/configure:
210         * configure: Regenerate.
211         
212         * stepmake/stepmake/automatically-generated.sub.make: Keep
213         original first line.
215         * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
217         * stepmake/stepmake/generic-targets.make (configure): Generate
218         using autogen.sh.
220         * GNUmakefile.in (SCRIPTS):
221         * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
223         * stepmake/autogen.sh: New file.
225         * configure: Check for g++ >= 2.95.
227         * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers.  GNU
228         c/c++ version checking.
230         * flower/include/string.hh: Typo fix.
232         * lily/include/midi-item.hh: Remove stray i.
234         * Documentation/windows/GNUmakefile: Avoid collapsed directory
235         constructs '//'.
236         
237         * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
238         constructs '//' from arguments.
240 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
242         * scm/lily.scm (ly-load): show SCM filenames if verbose.
244         * lily/lily-guile.cc (init_functions): add ly-verbose function.
246         * lily/main.cc (setup_paths): remove LILYINCLUDE support. 
248         * flower/include/{pointer,tuple}*: removed.
250         * VERSION: released 1.5.56
251         
252         * scm/music-functions.scm (check-start-chords): function to check
253         for chords without \context. Apply automatically from parser.
255 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
257         * lily/bar-line.cc: remove index entries. Texinfo can't handle  :
258         in index entries.
260         * scm/output-lib.scm: fix ez notation stems. 
262         * lily/paper-outputter.cc: various fixes to speed up compilation.
264 2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
266         * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
268 2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
270         * scripts/lilypond-book.py (determine_format): Bugfix: correctly
271         determine latex input.
273         * stepmake/bin/install-sh: Include latest from libtool.
275         * stepmake/configure: 
276         * configure: Regenerate.
278         * config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
279         (USER_CFLAGS): Bugfix, include CPPFLAGS.
281         * configure.in: Use new OPTIONAL/REQUIRED mechanism.
283         * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
284         REQUIRED programs and version.  Try to continue configuring, list
285         missing programs at the end, but don't generate a GNUmakefile if
286         REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
287         Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
288         fancy for some older systems.
290 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
292         * lily/score-engraver.cc (typeset_all): sanity check for items
293         that are Y parent to spanner. 
295         * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
296         pedal spanners.
298 2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
300         * lily/*.cc: remove as many iostream use as possible. 
302         * flower/ : remove text-db, text-stream, data-file.
303         
304 2002-05-15  Han-Wen  <hanwen@cs.uu.nl>
306         * scripts/lilypond-book.py: add --no-music option: strip all blocks.
307         (completize_preamble): don't barf if no preamble present.
308         (do_file): allow extensions on --output
310         * scripts/ly2dvi.py (make_preview): make automatic preview of
311         first system. Small cleanups.
313 2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
315         * scripts/lilypond-book.py (make_pixmap): output png directly.
317         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
318         fonts.dir file.
320         * lily/parser.yy (My_lily_parser): comment out code. (Causes
321         problems  with recent bison releases).
323         * make/lilypond.redhat.spec.in: add pfa fonts to X. 
325 2002-05-07  Heikki Junes <hjunes@cc.hut.fi>
327         * lilypond-font-lock.el: Fixes the order of the note name list.
329 2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
331         * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
332         capability, --verbose option, rlimit hack.
334 2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
336         * lily/piano-pedal-engraver.cc: cleanups.
338         * lily/accidental.cc (after_line_breaking): add break tie
339         reminders.
341         * lily/text-engraver.cc (try_music): don't typeset fingerings
343 2002-05-05  Heikki Junes <hjunes@cc.hut.fi>
345         * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
347 2002-05-04  Han-Wen  <hanwen@cs.uu.nl>
349         * lily/*.cc: change gh_str02scm() to ly_str02scm().
351         * lily/spacing-spanner.cc (note_spacing): Bound
352         shortest-playing-length by the distance to next note. This should
353         fix chord tremolo spacing.
355         * VERSION: 1.5.55 released
357         * lily/stem.cc (off_callback): invisible stem over whole note is
358         centered on note now.
360         * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
361         stem-tremolo is stem now.
363         * input/mozart-hrn*.ly: many corrections. 
365         * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
366         support for dynamic scripts.
368         * lily/accidental-placement.cc (position_accidentals): check for
369         collisions as well: should avoid those heads too.
371         * lily/beam.cc (check_concave): allow undefined gap and
372         threshold. Change the meaning of threshold/gap == 0.0.
373         (check_concave): skip Stolba concaveness check if we have a knee
374         on outer stems.
376 2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
378         * lily/chord-tremolo-engraver.cc (try_music): Handle chord
379         tremolos of dotted duration.
381 2002-05-03  Han-Wen  <hanwen@cs.uu.nl>
383         * mf/feta-klef.mf: more twiddling with G clef. Almost straight
384         downstroke again. Sigh.
386         * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
387         script on note head.
389 2002-05-02  Han-Wen  <hanwen@cs.uu.nl>
391         * lily/slur.cc (add_column): allow slur over rest. 
393 2002-04-27  Han-Wen  <hanwen@cs.uu.nl>
395         * lily/beam.cc: move scoring constants out of code
397 2002-04-25  Han-Wen  <hanwen@cs.uu.nl>
399         * mf/feta-nummer.mf: scalability fixes.
401         * mf/feta-nummer-code.mf: fixes for 5, 8. 
403         * mf/feta-klef.mf: G clef fixes.
405 2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
407         * scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.
409         * scripts/lilypond-book.py: %Newline, rather than glue macros
410         after \end{verbatim}.
412 2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
414         * Documentation/user/lilypond-book.itely: 
415         * scripts/lilypond-book.py: Add options [no]indent, linewidth and
416         noinline.
418         * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
420         * scm/grob-property-description.scm (beam-space): Junk.
422         * lily/beam.cc (space_function): New method.
423         (get_interbeam): Call space-function.
425         * scm/grob-description.scm (Beam): Initialize space-function with
426         Beam::space_function.
428         * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
429         Beam.space-function.  Don't quantise grace beams.
431 2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
433         * VERSION: 1.5.54 released
435         * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
436         bulb. 
438         * Documentation/index.texi: add PDF links.
440         * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
442         * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
443         compare #'glyph as strings. 
445         * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
447         * scripts/ly2dvi.py (setup_environment): fix by Mats.
449         * lily/stem.cc (head_count): Change function name. Change property
450         to #'note-heads i.s.o.  #'heads.
451         (position_noteheads): Kern noteheads for invisible stems.
452         (before_line_breaking): Do position_noteheads() for whole note
453         heads too.
455         * lily/accidental-placement.cc (position_accidentals): First
456         determine refpoints, only then determine extents.  
458 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
460         * lily/accidental-placement.cc (position_accidentals): use all
461         note heads for note head-skyline. 
463         * scripts/lilypond-book.py (re_dict): remove all *? regexps.
465 2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>
467         * Documentation/windows/setup.hint (requires): Add gsview dependency.
469         * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
471         * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
473         * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
475 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
477         * mf/feta-schrift.mf: lighter staccato.
479 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
481         * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
483 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
485         * VERSION: 1.5.53 released
487         * scm/lily.scm (ly-load): use primitive-load for loading.
489         * lily/misc.cc: remove quantise_iv()
491         * lily/*.cc: pass read-only arrays by reference.
492         
493         * lily/grob.cc (common_refpoint_of_array): new function. Try to
494         use common_refpoint_of_{array, list} when possible.
496         * lily/include/accidental-placement.hh: new file.
498         * lily/accidental-placement.cc (alignment_callback): position
499         accidentals in a better way.
501         * lily/skyline.cc: new file. Compute distances for collections of
502         boxes.
504         * lily/include/skyline.hh: new file
506 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
508         * lily/accidental.cc (class Accidental_interface): grob for a
509         single accidental.
511         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
512         of reformatting
514         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
515         together with new accidental-interface. 
517         * lily/include/*.hh: remove spurious set_interface() decls.
519         * lily/key-signature-interface.cc (brew_molecule): add padding for
520         natural signs. Make natural typesetting like the sharp.
521         
523         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
524         is now slightly curved, not straight.
525         
527 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
529         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
531         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
532         more strictly. Use more clever regular expressions. Commented regexps.
534 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
536         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
538 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
540         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
541         to control width of staff symbol in ragged-right mode (by request
542         of Han-Wen)
544         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
545         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
546         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
547         added support for ligature brackets (needed when transcribing
548         mensural music)
550 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
552         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
553         Fontify notes more strictly.
555 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
557         * mf/feta-din-code.mf: dynamic z sign.
559 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
561         * lilypond-mode.el: Prevent recoloring strings and comments.
563         * lilypond-font-lock.el: Handle block comments: block comments
564         can have also ordinary comments inside.
565         
566 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
568         * lily/stem.cc (get_default_dir): set direction to CENTER if
569         invisible. Various other fixes to deal with invisible stems and
570         stem-direction == CENTER.
572         * lily/rest-collision.cc (do_shift): take direction from note if
573         not set.
575         * input/regression/tie-grace.ly: new file.
577         * lily/tie-engraver.cc (create_grobs): fix tied graces.
579         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
580         knee correction. Fixes tight spacing for knees.
582 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
584         * VERSION: 1.5.52 released
585         
586         * lily/*.cc: add some undocced properties.
587         scm/grob-description.scm: idem.
589 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
591         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
592         multi-measure rests like "R1 *4" and scheme (typically has '#' 
593         in the beginning). Small fixes. Add few reserved words.
595 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
597         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
598         emacs mode.
600         * Documentation/windows/installing.texi: Suggest gswin32c (console
601         program) for getting the version.  Layout fixes.
603 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
605         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
606         windows viewing commands, remove silly comment about Yap.
608 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
609         
610         * Documentation/topdocs/INSTALL.texi: Describe how to learn
611         configure to find kpathsea on for example Slackware 8.0.
613         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
615         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
616         by default: avoid "1" over single bar rests.
618         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
619         and correct the handling of geometry options.
621 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
623         * lily/include/grob-interface.hh (ADD_INTERFACE): make
624         implementation for Class::has_interface automatically. Junk all
625         other implementations.
627         * lily/grob.cc (internal_get_grob_property): also typecheck
628         property reads. Catches even more undocced properties. Bugfixing
629         left for the uninspired masses.
631         * lily/beam.cc: remove end_after_line_breaking().
633         * lily/grob.cc (calculate_dependencies): remove list support for
634         callbacks.
636         * lily/font-size-engraver.cc: only do font-interface.
638 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
640         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
641           Add few keywords.
643 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
645         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
646         brackets using arpeggio requests.
647         
648         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
649         molecule-callback to use for drawing the brackets.
651         * Documentation/user/refman.itely: 
652         * input/test/chord-bracket.ly: Chord brackets documented
653         
654 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
656         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
658         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
660 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
662         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
663         direction tuplets on beams.
665 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
667         * lilypond-indent.el: Bugfix of indentation of final point in buffer
669 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
671         * lilypond-mode.el: new command: LilyPond-un-comment-region.
672         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
673         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
674         submenu to "LilyPond"-menu.
676         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
677         an interface to play midi.
679 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
681         * input/regression/script-stack-order.ly: new file.
683 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
685         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
687         * mf/feta-din-code.mf: kerning for dynamics.
689 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
691         * input/regression/dynamics-glyphs.ly: new file
693         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
695         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
696         forte f for the 2 number. Some fixes for the other bulbed glyphs.
698         * Documentation/windows/gs-profile.sh:
699         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
700         moved to gs/gsview windows packages.
702 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
704         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
705         finding out the duration. Fixes chord tremolo bug. 
707         * lily/completion-note-heads-engraver.cc (process_music): Set
708         correct duration for all requests of the broken notes.
710         * input/regression/completion-heads.ly: Added example of
711         Completion_heads_engraver.
713         * lilypond-mode.el: Added "2Midi" command
715 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
717         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
718         edge-width, edge-height and shorten-pair properties for tuplet
719         brackets.
721         * lilypond-indent.el: Support for blinking of matching parentheses
722         
723         * lilypond-font-lock.el: Fix fontification of closing > on its own line
724         
725         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
726         cleanups of piano pedal brackets.
728 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
730         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
732 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
734         * mf/feta-new-code.mf:  new dynamic f sign.
735         new dynamic m sign.
737 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
739         * mf/feta-new-code.mf: new dynamic p sign.
741 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
743         * lily/note-spacing.cc (stem_dir_correction): only do
744         beam-correction if a beam is there. 
746         * lily/stem.cc (duration_log): change from flag_i (); better
747         naming.
748         (get_default_stem_end_position): fix dot/flag collision code.
750 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
752         * VERSION: release 1.5.50
754         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
755         unit spring here. Reduces number of warning messages.
757         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
759 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
761         * scm/generic-property.scm: remove generic-property, property-engraver
763         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
765         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
767         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
769         * scm/*.scm: remove volta, hairpin and tuplet functions.
771         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
772         note column for notes/stems/dots that already have parents. Fixes
773         nested grace contexts.
775 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
777         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
778         get too curved slurs.
780         * scm/slur.scm (default-slur-extremity-offset-alist) 
781         (default-phrasing-slur-extremity-offset-alist): Move slur
782         attachments further away from note-head, vertically.  Also, leave
783         a horizontal gap between slur and stem end.
785         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
787 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
789         * input/regression/spacing-grace-duration.ly: new file
791         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
792         for shortest durations.
794         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
795         extent of the mm rest. 
797         * lily/spacing-spanner.cc (get_duration_space): better spacing for
798         really short notes.
800         * lily/tuplet-bracket.cc (make_bracket): new function
801         (get_x_offset): new function; make tuplet brackets align on stems
802         if stem has same direction.
803         (parallel_beam): be anal about matching bracket to tuplet.
805         * lily/lookup.cc (line): new function Lookup::line(). 
807         * scm/tex.scm (dashed-line): change -line to -system in names.
809         * lily/box.cc (add_point): new function.
811         * flower/include/interval.hh: new function add_point ().
812         new function widen()
813         
814 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
816         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
818         * scm/grob-property-description.scm (number-threshold): Add
819         description.
821         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
822         rest if #measures > number-threshold.  Use padding (well, fake
823         using it, anyway).
825         * scm/font.scm (make-style-sheet): New styles: mark-number,
826         mark-letter.
827         (paper20-style-sheet-alist): Add bigger bold fonts.
829         * lily/mark-engraver.cc (process_music): Use style mark-number or
830         mark-letter.
832         * .cvsignore: Ignore all kinds of lilypond input and output.
834         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
836 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
838         * lily/staff-symbol.cc (brew_molecule): make line thickness
839         adjustable.
841         * lily/*.cc: replace stafflinethickness by linethickness.
843 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
845         * input/regression/beam-concave.ly: Add to-be-considered-concave
846         beam.
848         * lily/beam.cc (check_concave): Add check for large gap between an
849         inner notehead and the line through outer noteheads.
851         * scm/grob-description.scm (Beam): Add concaveness-gap, default
852         value 2.0 staff-space.
853         
854         * scm/grob-property-description.scm (concaveness-gap): Add
855         description.
857         * input/mozart-hrn3-allegro.ly: Fix typo.
859 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
861         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
862         lily/note-head-engraver: improved implementation of roundfilledbox
863         (according to Han-Wen's request)
865         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
866         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
867         lily/simple-spacer.cc: ragged-right alignment
869 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
871         * input/regression/spacing-note-flags.ly: new file
873         * input/regression/spacing-rest.ly: new file
875         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
877         * lily/spacing-spanner.cc (note_spacing): make note spacing after
878         all grace notes tight (not only the column directly following a
879         grace note).
881         * scm/grob-description.scm (all-grob-descriptions): don't make
882         mm-rests larger than normal.
884         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
885         curved. Remove white space at the right of flags.
887 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
889         * ports/ports.make: Bugfix: ignore CVS directories.
891         * stepmake/.cvsignore: New file.
893 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
895         * lily/note-spacing.cc (stem_dir_correction): don't correct when
896         there is a flag on the stem.
898         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
900         * scm/grob-property-description.scm (measure-length):
901         measure-length grob property.
903         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
904         better spacing for breakable columns when they're juxtaposed: use
905         measure length if applicable
907         * lily/timing-engraver.cc (start_translation_timestep): store
908         measure length in breakable column at start of measure.
910 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
912         * ROADMAP: Add description for ports dir, to check email upon
913         commit.
915 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
917         * VERSION: 1.5.48 released
918         
919         * lily/multi-measure-rest.cc (symbol_molecule): split off from
920         brew_molecule()
921         (set_spacing_rods): Use symbol_molecule() to determine minimum
922         width
923         (church_rest): split off from brew_molecule()
924         (big_rest): split off from brew_molecule(). Construct using
925         variable shape.
926         
927         * mf/feta-eindelijk.mf: junk multi measure rest.
929 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
931         * lily/multi-measure-rest.cc (add_column): remove columns property.
933         * lily/dynamic-engraver.cc (process_music): add more verbose warning
935         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
936         3 as test piece.
938 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
940         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
941         keywords covered, dropped some non-keywords, include R- and 128-notes
943 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
945         * Code clean-up: Junk multiple implementations of ledger line
946         creation in note_head, custos, and porrectus.  This is important
947         since there soon will be some more applications of ledger lines to
948         come (e.g. ambitus engraver).
950         * Make thickness of ledger lines adjustable.  This is essential
951         for mensural notation.
953         * Fix some bugs in the current ledger_line implementation, most
954         notably that of the horizontal extent of ledger lines which equals
955         at least the extent of the metafont ledger_line character, and
956         which grows(!) if the desired extent shrinks below this limit.
958         * roundfilledbox: variable blotdiameter
960 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
962         * VERSION: 1.5.47 released
964         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
966         * lily/porrectus.cc:  change line-thickness to thickness, change
967         stem-direction to direction.
969         * scm/backend-documentation-lib.scm (check-dangling-properties):
970         Automatically detect doc'ed properties that are not in an interface
972         * scm/grob-property-description.scm: property cleanup. Remove many
973         paper-column props that are non-existent.
975         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
976         the grob has a molecule-callback.
978         * lily/*.cc: remove many set_interface() calls, and their
979         implementations.
981         * input/regression/spacing-knee.ly: new file
983         * input/regression/spacing-clef-first-note.ly: new file
985         * lily/staff-spacing.cc (get_spacing_params): different spacing
986         for pref matter to note at start of line, halfway during line.
988         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
989         correction only if stems have same direction (i.e. not for
990         stem-clef combination).
991         (stem_dir_correction): maximal correction for knees.
993         * lily/*.cc: many updates to interface descriptions.
994         
995         * lily/grob.cc (internal_set_grob_property): add interface check
996         for every set_grob_property call
998         * lily/*.cc: document interface stuff in C++
999         
1000         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
1002         * lily/volta-bracket.cc: naming: change volta spanner to
1003         volta-bracket.
1005         * input/bugs/*.ly: cleanup, remove lots of files.
1006         
1007         * buildscripts/mf-to-table.py (write_ps_encoding): generate
1008         .encoding file. WARNING: upgrade to pktrace 1.0.3
1010         * mf/feta-toevallig.mf: change PS name for parentheses.
1012 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1014        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1015        also for textheight
1017 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
1019         * lily/scope.cc: remove file .
1021         * lily/include/scope.hh: remove file. Remove Scope class
1023         * VERSION: 1.5.46
1025         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1026         score_forbidden_quants): ): take out of SCM, pass parameters so
1027         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1028         secs).
1029         (calc_stem_y): robustness: take care of last_visible_stem == 0.
1032         * lily/lily-guile.cc (ly_unit): return internal unit.
1034         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
1036         * lily/paper-outputter.cc (output_version): output internal unit
1037         from Paper_outputter
1039         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1041 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1043        * scripts/ly2dvi.py: clean up old .*pk font caching code.
1045        * scm/ps.scm: Use uppercase postscript font names for the standard
1046        TeX fonts.
1048        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1049        Add all available TeX Type1 fonts, including Feta, to the
1050        Ghostscript font path.
1052        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1053        version (affects the FontName) in lilypond.map.
1055        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1056        documentation file to fetaNNlist.ly to avoid name collisions between
1057        lilypond generated .tex file and font .tex macros file.
1060 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
1062         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1063         made mensural longa and (semi-)brevis leaner
1065         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1067         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1068         clean-up: moved bezier shape and slope from porrectus to lookup
1070         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1071         and /usr/share/texmf/fonts
1073         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1075 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
1077         * lily/text-spanner.cc (brew_molecule): add #'thickness
1078         (brew_molecule): add corrections for thickness in molecule padding.
1080         * lily/line-spanner.cc (line_atom): make function private
1082         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1083         discover bounding box. This solves the cropping problem.
1085         * lily/bar-check-iterator.cc (process): Only resynchronize bar
1086         check when it  fails. This fixes the combination of  grace notes
1087         and bar checks.
1089 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
1091         * lily/repeated-music.cc (minimum_start): new Scheme callable function
1092         (first_start): new Scheme callable. This will fix repeated music
1093         starting with grace notes.
1095         * lily/music.cc (start_mom): check start-moment-function grob property.
1097         * VERSION: 1.5.45 released
1099         * input/regression/system-extents.ly: new regression test. Test
1100         System extents. 
1102         * lily/system.cc: rename LineOfScore into System 
1104         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1106         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1107         (ly_get_extent): new Scheme function ly-get-extent
1109         * ps/lilyponddefs.ps: use output-scale for  line-x
1110         definition. 
1112         * scm/ps.scm (font-load-command): 
1113         use output-scale
1115 2002-03-20  Rune Zedeler <rune@zedeler.dk>
1116         
1117         * lily/beaming-info.cc: Stupid typo fixed
1118         
1119         * lily/accidental-engraver.cc: rewrote accidental-routines to get
1120         support for cross-context auto-accidentals.
1121         Now the engraver can stay in Staff-context and see other contexts
1122         from there.
1123         Changed properties: autoAccidentals, autoCautionaries
1125         * lily/translator-group.cc (set_children_property):
1126         Function added recursively setting the same property (deep_copied)
1127         for all children of a Translator_group.
1128         
1129         * ly/property-init.ly: added commands
1130         \pianoAccidentals \voiceAccidentals
1131         \modernVoiceAccidentals \modernVoiceCautionaries
1133         * ly/engraver-init.ly: Correct initialization of new accidentals.
1134         
1135         * scm/translator-property-description.scm: Updated
1136         
1137         * input/regression/accidental-voice.ly: Added
1138         
1139         * Documentation/regression-test.tely: Added new test    
1141 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1143         * VERSION: 1.5.44 released
1145         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1147         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1149         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1150         at 0.4 pt.
1152         * tex/feta*.tex: remove.
1153         
1154         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1155         all software dealing with it.
1157 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1159         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1160         (this fixes pdf output).  Drop awk dependency.
1162         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1163         dimensions (linewidth) are in mm.
1165         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1167         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1169         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1171 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
1173         * VERSION: 1.5.43 released
1175         * scm/beam.scm (beam-dir-majority-median): if majority is
1176         undecided, use median. Removes a forced dir in sarabande.
1178         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1180 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1182         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1183         widths, heights and shortens are now customisable properties.
1185         * scm/grob-description.scm, scm/grob-property-description.scm: New
1186         properties added to PianoPedalBracket, unnecessary
1187         Y-offset-callbacks removed from *Pedal, undocumented properties
1188         fixed.
1190         * Documentation/user/refman.itely: Piano pedal updates.
1192 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1194         * scm/grob-property-description.scm:
1195         * scm/interface-description.scm: Remove old stuff.
1197         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1198         0.48 (previously 0.42).
1199         (Beam): Remove old stuff.
1201         * lily/stem.cc: 
1202         * lily/stem-tremolo.cc: 
1203         * lily/beam.cc: 
1204         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
1205         (previously space-function).
1207         * stepmake/bin/add-html-footer.py: Website title fix.
1209 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1211         * scripts/ly2dvi.py (environment): use new font searching setup.
1213         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1215         * lily/tfm.cc (dimensions): make code dimension independent
1217         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1218         scaling
1220         * tex/lily-ps-defs.tex: scaling for PS points and MM.
1222         * lily/include/dimensions.hh: try MM as internal unit.
1224         * scm/*.scm: remove invoke-dim1
1226 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1228         * GNUmakefile.in (fontpaths): add fontpaths target,
1230         * make/mutopia-targets.make: add PDF rules.
1232         * make/mutopia-rules.make: add pdf rule.
1234         * buildscripts/mutopia-index.py (list_item): add PDF.
1236         * buildscripts/lilypond-profile.sh (TEXMF): typo.
1238         * make/lilypond-vars.make: set TEXMF for the new font setup.
1240 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1242         * VERSION: 1.5.42 released
1243         
1244         * mf/feta-schrift.mf: endless twiddling of Tr.
1246         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1247         endless twiddling with the bulb shape.
1249         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1250         little smaller if there is an accidental.
1252 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1254         * buildscripts/lilypond-profile.sh: 
1256         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1257         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1258         Implement new font installation strategy
1260         * Documentation/misc/fontinstallation (TEXMF): Documentation of
1261         the new font installation strategy.
1263         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1264         for comment-region.
1266         * input/test/staff-size.ly: Simplified using StaffContainer
1268         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1269         lilypond.map file
1271 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1273         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1275         * lily/beam.cc (score_stem_lengths): new quanting stuff
1276         (score_forbidden_quants): Second and third beam quant stuff.
1278 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1280         * lily/beam.cc (least_squares): Remember least-squares-dy for
1281         later use.
1282         (quantise_interval): Don't quant to dy steeper that
1283         least-squares-dy.  Return empty interval if no sane quants found.
1284         (quantise_position): Try quantise_interval until we have
1285         acceptable solution.
1287 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1289         * scm/interface-description.scm (beam-interface): Update.
1291 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1293         * VERSION: 1.5.41 released
1294         
1295         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
1296         optima serifs on top of t, bottom of r.
1298         * mf/feta-bolletjes.mf: make ledger line rounder. 
1300         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1302         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1303         parametrization.
1305 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1307        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1308        well as text pedal indications and a combination of both.  All
1309        pedal indications are horizontally aligned on a line spanner.
1311        * lily/text-spanner.cc: Edge-width property added to use in
1312        bracketed piano pedals. Function setup_sustain_pedal added to set
1313        the dimensions of the brackets. 
1315        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
1316        some of the *Pedal properties tweaked. 
1318        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1319        edge-width (TextSpanner) properties.
1321        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
1323        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1324        fontified identifiers list.
1326        * input/test/pedal.ly: New pedal features added. 
1328        * Documentation/user/refman.itely: New pedal features documented.
1329        
1331 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1333         * lily/include/new-beam.hh: Previously new-beam.hh
1334         * lily/beam.cc: Previously new-beam.cc
1335         (least_squares): Bugfix: don't barf on beams with less than two
1336         visible stems (tremolos).
1338         * scm/beam.scm: 
1339         * scm/grob-description.scm (Beam): Junk old beam stuff.
1340         
1341         
1342 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1344         * VERSION: 1.5.40
1346         * mf/feta-eindelijk.mf: new 8th rest.
1348         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1349         stick out of staffline
1351         * scripts/lilypond-book.py: fixes for texi regular expressions.
1353 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1355         * lily/include/new-beam.hh:
1356         * lily/new-beam.cc: New file.
1358         * flower/include/interval.hh: 
1359         * flower/include/interval.tcc (delta): New method.
1360         (swap): Now public (previously private).
1361         
1362         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1363         1 staff-line-thickness.  Sadly, this makes dy quanting problems
1364         (dy quants allowed should depend on actual left y) more visible.
1366 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1368         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
1370         * scm/grob-property-description.scm (concaveness-threshold): Add
1371         typecheck and description.
1373         * scm/grob-description.scm (Beam): Remove obsolete properties, add
1374         concaveness-threshold (previously concaveness).
1376         * lily/beam.cc (check_concave): Remove choices and debugging
1377         stuff: use best concaveness calculation.
1378         (quantise_dy): Remove choice.  Try to never make a slope steeper
1379         by quantising, but certainly never quantise a slope away.
1380         (check_stem_length_f): Remove choice.  In case of lengthening
1381         alowed, always lengthen to ideal length.
1383         * Documentation/index.texi: Fix FAQ url.
1385         * Documentation/topdocs/INSTALL.texi: Add information about fink,
1386         compile fix and 1.4 specific fix that doesn't hurt 1.5.
1388 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
1390         * VERSION: 1.5.39 released
1392         * lily/simple-spacer.cc (add_rod): rods take precedence over
1393         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1395         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1397         * lily/note-spacing.cc (get_spacing): only insert space for
1398         accidentals if necessary.
1400         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1402         * lily/spacing-spanner.cc (musical_column_spacing): new
1403         function. Have correct spacing from note to end-of-line as well.
1405 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1407        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1409        * darwin.patch: New file.
1411        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1412        code.  Shorten stems by fraction of stems to be shortened.
1414        * lily/stem.cc (get_default_stem_end_position): Shorten only half
1415        of shorten value for boundary cases.
1417        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1418        (Beam): Set beamed-stem-shorten to (1.0 0.5).
1420 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1422        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1424        * scm/grob-description.scm (Beam): Add concaveness.  Replace
1425        Beam::cancel_suspect_slope with Beam::check_concave.
1427        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1428        set slope to horizontal if concaveness > Beam.concaveness.  This
1429        handles cases that kludgy cancel_suspect_slope was meant to catch
1430        very well.
1431        (cancel_suspect_slope): Remove.
1433 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1435         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1436         stemLeftBeamCount and stemRightBeamCount to equal 0.
1437         Fixes [c8 c4 c8]
1438       
1439 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
1441         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1442         fixed spacing for pref matter, if the next column is musical, and
1443         at the same moment.
1445         * lily/note-spacing.cc (stem_dir_correction): Use correct
1446         discretionary for stem-bar spacing.
1448 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
1450         * VERSION: 1.5.38 released 
1452         * lily/grob.cc (warning): Use cause tracking to give more
1453         meaningful errors from the backend. 
1455         * lily/property-iterator.cc (check_grob): Warn if setting grob
1456         property in unknown grob. 
1458         * mf/feta-toevallig.mf: brushed stems for natural sign.
1460         * lily/molecule.cc (align_to): don't translate empty molecule.
1461         (this triggers a very subtle bug in time-signature.)  
1463 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
1465         * lily/spring.cc: remove file.
1467         * input/regression/spacing-stem-bar.ly: new file
1469         * lily/score.cc (run_translator): resurrect point-and-click
1471         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1472         sarabande layout
1474         * lily/spacing-spanner.cc (find_shortest): Shortest note for
1475         spacing is now globally determined, using the most common shortest
1476         note. Notes that are shorter are spaced geometrically, and with
1477         expand hints. This makes spacing more even, and measures that have
1478         very short notes won't be that stretched out.  
1480         * mf/feta-klef.mf: F-clef fixes, documentation on the
1481         shape. (WARNING: font changed.)
1483 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
1485         * lily/simple-spacer.cc (add_columns): support for infinitely
1486         stiff springs.
1488         * lily/staff-spacing.cc (get_spacing_params): space after
1489         prefatory matter is fixed.
1491 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
1493         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1494         barline following an upstem.
1496         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1497         function from next_notes_correction().
1498         (bar_y_positions): idem.
1500 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1502         * input/regression/break.ly (texidoc): bugfix: escape \ in
1503         strings.
1505         * lily/staff-spacing.cc (next_notes_correction): Correct the
1506         spacing of a note following a barline.
1509 2002-03-04  Glen Prideaux
1511         * mf/feta-solfa.mf: Shaped note heads
1513 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
1515         * VERSION: 1.5.37 released
1517         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1518         left-align molecule.
1519         
1520         * lily/break-align-interface.cc (do_alignment): completely
1521         rewritten. Now it does not use Align_interface anymore, but a
1522         separate routine. Like StaffSpacing, it reads space-alist from the
1523         breakable grobs.  This allows you to set spacing using
1524         
1525         \property Staff.Clef \override #'space-alist = '(....stuff....)  
1527         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1528         to Bar_line. Move files around as well.
1530         * lily/time-signature.cc (time_signature): left align time signatures. 
1532         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1533         Corrections of the glyph shape C. Comments added.
1535 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1537         * lily/spacing-spanner.cc: move from third-try.cc; rename
1538         Third_spacing_spanner to Spacing_spanner.
1540         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1541         spacing stuff. Much cleaner now, and we prepare for neat spacing
1542         tricks around bar lines and such.
1544         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1545         variables with themselves. (Ouch.)
1547         * lily/span-bar.cc (brew_molecule): don't try to span bars that
1548         overlap.
1550 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1552         * VERSION: 1.5.36
1554         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1555         ly_dir_p
1557         * lily/music.cc (ly_get_mus_property): typechecking
1558         (ly_set_mus_property): idem
1559         (ly_make_music): idem
1560         (ly_music_name): idem
1562         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1564         * lily/note-spacing.cc (stem_dir_correction): correction for
1565         same stem notes as well. 
1567         * lily/pitch.cc (pitch_transpose): stricter typechecking
1569         * mf/parmesan*mf: magnification fixes.
1571         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1573 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1575         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1576         documenting the font. (Doesn't work for parmesan at the moment)
1578         * Documentation/user/appendices.itely (The Feta font): Add list of
1579         Feta font symbols with names.
1581         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1582         automatically
1584 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
1586         * lily/translator-group.cc (ly_set_trans_property): typechecking
1587         (ly_get_trans_property): typechecking.
1589         * lily/font-metric.cc (ly_text_dimension): typechecking 
1590         (ly_find_glyph_by_name): idem.
1592         * scm/bass-figure.scm (brew-complete-figure): support for
1593         bracketed numbers.
1594         
1595         * lily/grob.cc (ly_get_paper_var): new function
1597 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1599         * VERSION (PATCH_LEVEL): 1.5.35 released.
1601         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1602         (bracket): New function.
1604         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1605         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
1607         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1608         bugfix.
1610         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1611         typecheck bugfix. 
1613         * lily/grob.cc (ly_get_grob_property): be anal about types.
1614         (ly_set_grob_property): idem
1616         * lily/figured-bass-engraver.cc (process_music): move molecule
1617         building completely to Scheme
1619         * lily/include/musical-request.hh (class Bass_figure_req): Add
1620         class. 
1622         * lily/parser.yy (bass_figure): add support for space figure.
1624         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
1626         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1628         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1629         (ly_align_to_x): new function ly-align-to!
1631         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1632         function ly-get-font
1634         * mf/feta-nummer.mf: include normal-space dimension. 
1636         * lily/collision.cc (check_meshing_chords): don't merge collisions
1637         with whole notes.
1638         
1639         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1640         glyph is string.
1642 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
1644         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1646 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
1648         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
1649         font changed)
1651         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1652         than mensural chars
1654         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1655         scm/grob-description.scm: added mensural fermata symbol
1657 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1659         * VERSION: 1.5.34 released.
1661         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1663         * lily/staff-symbol-referencer.cc (callback): assume that
1664         staff-position is unset in general.
1666         * input/regression/rest-pitch.ly: new file.
1668         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1669         a4\rest
1671 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1673         * lily/scm-option.cc (set_lily_option): add internal-type-checks
1674         as Scheme option. Run regression test by default with
1675         internal-type-checking.
1677         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
1679         * lily/lily-guile.cc (type_check_assignment): changed functions.
1681         * scm/*description*.scm: be anal about typechecks. Some changes
1682         for internal variable names.
1684 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1686         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
1688 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
1690         * VERSION: 1.5.33 released.
1692         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1693         flare_path everywhere (c-clef, numbers).        
1695         * lily/bar-number-engraver.cc (process_music): also print bar
1696         number if measure starts with grace note.       
1698         * input/regression/grace-bar-number.ly: new test.
1700 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
1702         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1703         rest as well.
1705         * scm/music-functions.scm (voicify-music):  split chords into
1706         different voices automatically.
1708         * lily/music.cc (ly_music_list_p): new function
1710         * lily/music-sequence.cc (do_relative_octave): robustification
1712         * scm/music-functions.scm: many utility functions 
1714         * lily/music.cc (ly_set_mus_property): add type checks to the
1715         Scheme property assignment.
1717         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1718         dvips fixes
1720         * mf/lilypond.map: .map file from Mats' page. 
1722 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
1724         * Some more parmesan related fixes;
1726         * Custos: varying shape (in particular, stem length), depending on the
1727           vertical position of the custos (on staffline / between stafflines);
1729         * Custos: added grob property "neutral-direction" (same semantics as
1730           with stem); introduced new grob property "neutral-position";
1732         * Time-signature: print a warning when resorting to default layout.
1734 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1736         * lily/translator-group.cc (add_fresh_simple_translator): remove
1737         function; initialize() is called through
1738         Translator_group::initialize().
1740         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1741         for the neighbors of a loose column.
1743         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1744         position loose columns so that they don't collide.
1746 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1748         * VERSION: 1.5.32 released.
1750         * scm/font.scm: remove font-name symbol.
1752         * mf/GNUmakefile: use pktrace for making PFAs
1754         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1756         * lily/rest-collision.cc (do_shift): read direction field from
1757         rest-column in case of note-rest collision. This should fix some
1758         problems with rest collisions.
1760 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1762         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1763         property.
1765         * lily/note-head.cc (brew_ez_molecule): Remove note-character
1766         property. Read pitch directly from #'cause.
1768         * mf/feta-puntje.mf: bugfix
1770 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
1771         
1772         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1774 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1776         * Documentation/windows/compiling.texi: Update.
1778         * Documentation/index.texi: Add link to orphaned compiling for
1779         windows page.
1781         * Documentation/footer.html.in: Comment fix.
1783         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1785 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
1786         
1787         * VERSION: 1.5.31 released
1789         * lily/new-spacing-spanner.cc: remove file.
1791         * lily/third-try.cc (do_measure): only take spacings into account
1792         if they pertain to the column pair under consideration. This fixes
1793         spacing bug when mixing eighths triplets and normal eighths.
1795         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1796         lines don't take up space anymore. Document why in note-head.cc
1797         comment.
1799 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
1801         * lily/font-interface.cc (get_font): reinstate
1802         #'font-magnification. See input/regression/font-magnification.ly
1803         (get_font): Change the definition of  #'font-name grob property.
1805         * lily/grob.cc (get_uncached_molecule): output origin for grobs
1806         that have a #'cause field.
1808 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1810         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
1812         * mf/GNUmakefile:  remove metapost stuff
1814         * stepmake/aclocal.m4: remove metapost detection stuff.
1816 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1818         * mf/GNUmakefile (FET_FILES): 
1819         (FONT_FILES): Include parmesan.
1821         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
1822         iso regex, regsub
1824         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1826         * Documentation/user/refman.itely (Paper size): Quote braces.
1828 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1830         * stepmake/aclocal.m4: fixed bison version check to be more
1831         robust.
1833         * lily/stem.cc (position_noteheads): fix for cluster chords.
1835         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
1837         * python 2.2 support.
1839 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
1841         * VERSION: 1.5.30 released
1843         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1845         * Documentation/user/refman.itely (Dynamics): add a note about
1846         DynamicLineSpanner.
1848         * scm/grob-description.scm: add a 'translator-type?  object
1849         property, so that \property Foo.Bar =\turnOff doesn't cause
1850         type check warning.
1852         * lily/translator-group.cc (add_fresh_group_translator): make
1853         new add-translator functions to make distinction between fresh and
1854         used group-translators. Fixes problem with scripts on auto-changing voice 
1856         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1857         add to Score_performer. Fixes bar checks in MIDI
1859         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1860         heads. Fixes many quirks with ties.
1862         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1863         in the grob property #'cause, instead of using Grob_info.
1865         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1866         staff context, fixing dot alignment on collisions.
1868         * lily/beam-engraver.cc (try_music): remove can't find beam start
1869         warning, so that skipTypesetting won't complain.
1871 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1873         * Documentation/user/refman.itely (Paper size): Documentation fix,
1874         papersize
1876         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1878         * scm/grob-description.scm: \breathe: Use feta font comma by default
1880 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1882         * input/template/piano-dynamics.ly (pedal): Simplified
1884 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1886         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1888 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
1890         * lilypond-mode.el (LilyPond-command-query): ignore case.
1892 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1894         * VERSION: 1.5.29 released
1896         * all files: change 2001 to 2002 in headers globally
1898         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1899         cheese") font. WARNING: fonts changed.
1900         
1901 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
1903         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1904         
1905         * mf/*.mf: Added some more vaticana/solesmes style font symbols
1906         
1907         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1909         * mf/*.mf: Fixed a few typos in various .mf files
1911 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1913         * mf/: added macro soft_penstroke
1914         
1915                softened some glyphs
1916                redrawn triangular noteheads
1917                redrawn tab-clef
1918                added classical quarter rest
1919         
1920         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1922         * lily/bar.cc: Bugfix: repeat dots when even number of staff
1923         lines and staff_space>=2
1925         * lily/rest.cc: Use default rests when current style glyphs not
1926         found - this allows
1927         \property Staff.Rest \override #'style = #'classical
1929 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1931         * input/bugs/first-tie.ly: New file.
1933         * input/bugs/spacing-clash.ly: New file.
1935 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1937         * po: regenerate.
1939 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1941         * lilypond-indent.el: New file providing indentation for
1942         parenthesised blocks of lilypond code in Emacs
1943         
1944         * lilypond-font-lock.el: Changes to the syntax table to facilitate
1945         indentation and handle block comments properly. Distinguish
1946         accents from close-brackets in fontification.
1948         * lilypond-mode.el: LilyPond-indent-command set appropriately.
1950 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1952         * Documentation/windows/installing.texi: 
1953         * Documentation/windows/compiling.texi: Include from 1.4.10.
1955         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1957         * input/bugs/first-midi-tie.ly: New file.
1959 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
1960         
1961         * VERSION: 1.5.28 released
1963         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
1964         illicit beams on [c4 c4] etc.
1966         * lily/bar-check-iterator.cc (Bar_check_iterator): new
1967         file. Make separate iterator for Bar_checks. Bar_check now happen
1968         outside engravers, meaning that you can use them with
1969         skipTypesetting. Associated changes in other files.
1970         
1971         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
1972         function
1973         
1974         * lily/spacing-spanner.cc (stem_dir_correction): removed function
1976         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
1978         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
1980         * lily/stem.cc (set_spacing_hints): removed function
1982         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
1983         correction for spacing; now take vertical extents of the stem into
1984         account.  
1986         * lily/third-try.cc: More hacking to get spacing working.
1988         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
1989         sits at staff level and creates note spacing objects. Scrap it
1990         again, and document why.
1992         * lily/include/group-interface.hh: rename functions. 
1994 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
1996         * stepmake/stepmake/c++-rules.make:
1997         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
1999 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2001         * make/lilypond-vars.make: 
2002         * scripts/ly2dvi.py (setup_environment): 
2003         * scripts/lilypond-book.py (setup_environment): Also set tex
2004         memory options.
2006 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2008         * VERSION: 1.5.27 released.
2010         * Documentation/user/refman.itely (Bar numbers): added bar number
2011         documentation.
2013         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2014         again.
2016 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
2018         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2019         spread the last few lines all over the last page of a score.
2021 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
2023         * lily/third-try.cc: 3rd try at revising spacing
2024         engine. Not yet finished.
2026         * lily/paper-column.cc (brew_molecule): print debugging marks on a
2027         paper-column.
2029         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2030         collecting past note heads.
2032         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2033         stuff.
2035         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2036         class. Keep a queue of grobs that are still playing in busyGrobs. 
2038         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2039         function. Use busyGrobs to detect playing notes.
2040         
2041 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2043         * Documentation/topdocs/INSTALL.texi: Added note about broken
2044         python-2.1.  Updated note for Debian's broken (well, broken for
2045         our use anyway) tex configuration.
2046         
2047         * scripts/lilypond-book.py (re_dict): python2.2 fix.
2048         
2049         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
2050         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2051         
2052         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2053         (But left margin of png's still misses a few pixels.  Arg.)
2054         
2055 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
2057         * lilypond-mode.el (LilyPond-command-next-midi): Make
2058         possible to kill midi-process (using "C-c C-m").
2060 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
2062         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2063         Convert strings with dimensions to numbers.
2065         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
2066         as found in stavesFound. 
2068         * lily/bar-number-engraver.cc: remove staff administration. 
2070         * lily/mark-engraver.cc (acknowledge_grob): remove staff
2071         administration. This breaks support for invisible-staff.
2073         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2074         symbols into stavesFound.
2076         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2077         grobs, and put them into columns.
2079         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2080         Engraver_group_engraver as a potential candidate for ack'ing grobs.
2082 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
2084         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2085         midi section in the Emacs-mode, so it is possible to play certain
2086         score in a multiscore lilypond-file.
2087          
2088 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
2089         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2090         (FIXME: not accessible from guile)
2091         
2092         * lily/accidental-engraver.cc: rewrote accidental-routines to get
2093         better support for Kurt Stone's suggestions.
2094         Removed properties: noResetKey, forgetAccidentals, autoReminders,
2095                             lazyKeySignature.
2096         Changed property:   localKeySignature.
2097         Added properties:   extraNatural, autoAccidentals,
2098                             autoCautionaries.
2100         (BUGFIX: broken-tie-support destroyed in 1.5.16)
2101         
2102         * ly/property-init.ly: added commands
2103         \defaultAccidentals \modernAccidentals \modernCautionaries
2104         \noResetKey \forgetAccidentals
2106         * ly/engraver-init.ly: Correct initialization of new accidentals.
2107         
2108         * scm/translator-property-description.scm: The new properties
2109         added.
2110         
2111         * input/: Some examples added, some changed.
2112         
2113         * Documentation/regression-test.tely: Added quick test of new
2114         accidentals.
2116 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2118         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2119         header not found
2121 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2123         * lily/beam.cc (before_line_breaking): Make beams  without stems
2124         or with only one stem disappear.
2126 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2128         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2129         files to have standardised HTML bibliography output. Update build
2130         docs to reflect this.
2132         * lily/include/simple-spacer.hh (struct Simple_spacer): add
2133         active_count_, so that we don't have to look for active springs
2134         anymore.
2136         * scm/interface-description.scm,scm/grob-property-description.scm:
2137         Add 'penalty
2139         * lily/simple-spacer.cc (solve): Handle forced line breaks
2140         here. Fixes problems when combining linebreaks with non-fitting
2141         line configurations
2143 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2145         * 1.4.9.jcn3 forward ports.
2146         
2147         * Really included .cvsignore.
2149         * Included Han-Wen's uu1 windows fixes.
2151         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2153         * Added Cygwin setup.hint
2155         * Removed tex, python wrappers and postinstalls to go with Cywgin's
2156         tetex/texmf, python installations.
2158         * Updated cygwin installer.
2160         * ly2dvi: Don't accept filenames with spaces (+ fix).
2162 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
2164         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2166         * lily/translator-def.cc: Remove manual symbol caching.
2168         * lily/script-column.cc (before_line_breaking): robustness check:
2169         don't crash if no direction set.
2171         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2173         * scripts/pmx2ly.py (Parser.parse_header): more generic header
2174         parsing.
2177 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
2179         * lily/note-head.cc (head_extent): added to compute width without
2180         ledger lines. By default, ledger lines take up width now.
2182         * input/regression/fingering.ly: demonstrate auto fingering.
2183         Horizontal placement is still buggy. 
2184         
2185         * lily/fingering-engraver.cc (class Fingering_engraver):
2186         added. Provides support for horizontal fingering scripts
2188         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2190         * lily/side-position-interface.cc (add_staff_support): add staff
2191         only for Y-axis side positions.
2193         * lily/parser.yy (request_chord): Fix mem leak.
2195         * lily/musical-request.cc (transpose): moved to Music::transpose()
2197         * lily/include/grob-info.hh: Change music pointer to SCM, so we
2198         can store grobs as grob-creation cause as well.
2200         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2201         handle when adding. Use precomputed symbols throughout lily.
2202         
2203         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2204         track of spacing issues.
2206         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2207         to keep track of staff spacing
2209 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
2211         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2212           code clean from conditionals and have a concentrated sets of
2213           compatibility fixes for old guile versions.
2215         * Fixes for guile 1.4, including embedded ps.
2217 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2219         * lily/stanza-number-engraver.cc (process_music): allow pairs as
2220         well for markup texts.
2222         * lily/musical-request.cc (length_mom): kludge for null pointer.
2224         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2226         * scm/lily.scm (sign): bugfix
2228         * CHANGES: Change log instated.
2230         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.