2002-05-17  Han-Wen  <hanwen@cs.uu.nl>

	* scm/music-functions.scm (check-start-chords): function to check
	for chords without \context. Apply automatically from parser.

2002-05-16  Han-Wen  <hanwen@cs.uu.nl>

	* lily/bar-line.cc: remove index entries. Texinfo can't handle  :
	in index entries.

	* scm/output-lib.scm: fix ez notation stems. 

	* lily/paper-outputter.cc: various fixes to speed up compilation.

2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

	* scripts/lilypond-book.py: Don't import pre for Python >= 2.2

2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>

	* scripts/lilypond-book.py (determine_format): Bugfix: correctly
	determine latex input.

	* stepmake/bin/install-sh: Include latest from libtool.

	* stepmake/configure: 
	* configure: Regenerate.

	* config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
	(USER_CFLAGS): Bugfix, include CPPFLAGS.

	* configure.in: Use new OPTIONAL/REQUIRED mechanism.

	* stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
	REQUIRED programs and version.  Try to continue configuring, list
	missing programs at the end, but don't generate a GNUmakefile if
	REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
	Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
	fancy for some older systems.

2002-05-16  Han-Wen  <hanwen@cs.uu.nl>

	* lily/score-engraver.cc (typeset_all): sanity check for items
	that are Y parent to spanner. 

	* lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
	pedal spanners.

2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/*.cc: remove as many iostream use as possible. 

	* flower/ : remove text-db, text-stream, data-file.
	
2002-05-15  Han-Wen  <hanwen@cs.uu.nl>

	* scripts/lilypond-book.py: add --no-music option: strip all blocks.
	(completize_preamble): don't barf if no preamble present.
	(do_file): allow extensions on --output

	* scripts/ly2dvi.py (make_preview): make automatic preview of
	first system. Small cleanups.

2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* scripts/lilypond-book.py (make_pixmap): output png directly.

	* mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
	fonts.dir file.

	* lily/parser.yy (My_lily_parser): comment out code. (Causes
	problems  with recent bison releases).

	* make/lilypond.redhat.spec.in: add pfa fonts to X. 

2002-05-07  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-font-lock.el: Fixes the order of the note name list.

2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>

	* scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
	capability, --verbose option, rlimit hack.

2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/piano-pedal-engraver.cc: cleanups.

	* lily/accidental.cc (after_line_breaking): add break tie
	reminders.

	* lily/text-engraver.cc (try_music): don't typeset fingerings

2002-05-05  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-font-lock.el: Handle \breve as a note (rest) duration.

2002-05-04  Han-Wen  <hanwen@cs.uu.nl>

	* lily/*.cc: change gh_str02scm() to ly_str02scm().

	* lily/spacing-spanner.cc (note_spacing): Bound
	shortest-playing-length by the distance to next note. This should
	fix chord tremolo spacing.

	* VERSION: 1.5.55 released

	* lily/stem.cc (off_callback): invisible stem over whole note is
	centered on note now.

	* lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
	stem-tremolo is stem now.

	* input/mozart-hrn*.ly: many corrections. 

	* lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
	support for dynamic scripts.

	* lily/accidental-placement.cc (position_accidentals): check for
	collisions as well: should avoid those heads too.

	* lily/beam.cc (check_concave): allow undefined gap and
	threshold. Change the meaning of threshold/gap == 0.0.
	(check_concave): skip Stolba concaveness check if we have a knee
	on outer stems.

2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

	* lily/chord-tremolo-engraver.cc (try_music): Handle chord
	tremolos of dotted duration.

2002-05-03  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-klef.mf: more twiddling with G clef. Almost straight
	downstroke again. Sigh.

	* lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
	script on note head.

2002-05-02  Han-Wen  <hanwen@cs.uu.nl>

	* lily/slur.cc (add_column): allow slur over rest. 

2002-04-27  Han-Wen  <hanwen@cs.uu.nl>

	* lily/beam.cc: move scoring constants out of code

2002-04-25  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-nummer.mf: scalability fixes.

	* mf/feta-nummer-code.mf: fixes for 5, 8. 

	* mf/feta-klef.mf: G clef fixes.

2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>

	* scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.

	* scripts/lilypond-book.py: %Newline, rather than glue macros
	after \end{verbatim}.

2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>

	* Documentation/user/lilypond-book.itely: 
	* scripts/lilypond-book.py: Add options [no]indent, linewidth and
	noinline.

	* input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.

	* scm/grob-property-description.scm (beam-space): Junk.

	* lily/beam.cc (space_function): New method.
	(get_interbeam): Call space-function.

	* scm/grob-description.scm (Beam): Initialize space-function with
	Beam::space_function.

	* ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
	Beam.space-function.  Don't quantise grace beams.

2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.54 released

   	* mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
	bulb. 

	* Documentation/index.texi: add PDF links.

	* Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.

	* lily/system-start-delimiter-engraver.cc (acknowledge_grob):
	compare #'glyph as strings. 

	* scripts/lilypond-book.py: fix by Mats. Try to import pre if available.

	* scripts/ly2dvi.py (setup_environment): fix by Mats.

	* lily/stem.cc (head_count): Change function name. Change property
	to #'note-heads i.s.o.  #'heads.
	(position_noteheads): Kern noteheads for invisible stems.
	(before_line_breaking): Do position_noteheads() for whole note
	heads too.

	* lily/accidental-placement.cc (position_accidentals): First
	determine refpoints, only then determine extents.  

2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/accidental-placement.cc (position_accidentals): use all
	note heads for note head-skyline. 

	* scripts/lilypond-book.py (re_dict): remove all *? regexps.

2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>

	* Documentation/windows/setup.hint (requires): Add gsview dependency.

	* scripts/lilypond-book.py (re_dict): Fix for python 2.x.

	* lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.

	* input/mozart-hrn3-allegro.ly: Bugfix: include defs.

2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* mf/feta-schrift.mf: lighter staccato.

2002-04-22  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-nummer-code.mf (code): fixes for 3 glyph.

2002-04-21  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.53 released

	* scm/lily.scm (ly-load): use primitive-load for loading.

	* lily/misc.cc: remove quantise_iv()

	* lily/*.cc: pass read-only arrays by reference.
	
	* lily/grob.cc (common_refpoint_of_array): new function. Try to
	use common_refpoint_of_{array, list} when possible.

	* lily/include/accidental-placement.hh: new file.

	* lily/accidental-placement.cc (alignment_callback): position
	accidentals in a better way.

	* lily/skyline.cc: new file. Compute distances for collections of
	boxes.

	* lily/include/skyline.hh: new file

2002-04-20  Han-Wen  <hanwen@cs.uu.nl>

	* lily/accidental.cc (class Accidental_interface): grob for a
	single accidental.

	* lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
	of reformatting

	* lily/new-accidental-engraver.cc (acknowledge_grob): Work
	together with new accidental-interface. 

	* lily/include/*.hh: remove spurious set_interface() decls.

	* lily/key-signature-interface.cc (brew_molecule): add padding for
	natural signs. Make natural typesetting like the sharp.
	

	* mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
	is now slightly curved, not straight.
	

2002-04-18  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).

	* lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
	more strictly. Use more clever regular expressions. Commented regexps.

2002-04-16  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.

2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>

	* scm/grob-description.scm, lily/staff-symbol.cc: added properties
	to control width of staff symbol in ragged-right mode (by request
	of Han-Wen)

	* ly/engraver-init.ly, lily/include/my-lily-parser.hh,
	lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
	lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
	added support for ligature brackets (needed when transcribing
	mensural music)

2002-04-15  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
	Fontify notes more strictly.

2002-04-15  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-din-code.mf: dynamic z sign.

2002-04-13  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-mode.el: Prevent recoloring strings and comments.

	* lilypond-font-lock.el: Handle block comments: block comments
	can have also ordinary comments inside.
	
2002-04-13  Han-Wen  <hanwen@cs.uu.nl>

	* lily/stem.cc (get_default_dir): set direction to CENTER if
	invisible. Various other fixes to deal with invisible stems and
	stem-direction == CENTER.

	* lily/rest-collision.cc (do_shift): take direction from note if
	not set.

	* input/regression/tie-grace.ly: new file.

	* lily/tie-engraver.cc (create_grobs): fix tied graces.

	* lily/note-spacing.cc (stem_dir_correction): set fixed space for
	knee correction. Fixes tight spacing for knees.

2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.52 released
	
	* lily/*.cc: add some undocced properties.
	scm/grob-description.scm: idem.

2002-04-12  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-font-lock.el: Handle slurs \( and \), numbers,
	multi-measure rests like "R1 *4" and scheme (typically has '#' 
	in the beginning). Small fixes. Add few reserved words.

2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>

	* Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
	emacs mode.

	* Documentation/windows/installing.texi: Suggest gswin32c (console
	program) for getting the version.  Layout fixes.

2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>

	* Documentation/user/tutorial.itely (Running LilyPond):  Separate
	windows viewing commands, remove silly comment about Yap.

2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
	
	* Documentation/topdocs/INSTALL.texi: Describe how to learn
	configure to find kpathsea on for example Slackware 8.0.

	* scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.

        * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
        by default: avoid "1" over single bar rests.

	* scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
	and correct the handling of geometry options.

2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/include/grob-interface.hh (ADD_INTERFACE): make
	implementation for Class::has_interface automatically. Junk all
	other implementations.

	* lily/grob.cc (internal_get_grob_property): also typecheck
	property reads. Catches even more undocced properties. Bugfixing
	left for the uninspired masses.

	* lily/beam.cc: remove end_after_line_breaking().

	* lily/grob.cc (calculate_dependencies): remove list support for
	callbacks.

	* lily/font-size-engraver.cc: only do font-interface.

2002-04-10  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-font-lock.el: Handle notes with cautionary accidentals.
	  Add few keywords.

2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>

	* lily/arpeggio.cc: New function brew_chord_bracket to draw chord
	brackets using arpeggio requests.
	
	* ly/property-init.ly: Shorthand \arpeggioBracket defined as the
	molecule-callback to use for drawing the brackets.

	* Documentation/user/refman.itely: 
	* input/test/chord-bracket.ly: Chord brackets documented
	
2002-04-10  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 

	* mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.

2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
	direction tuplets on beams.

2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>

	* lilypond-indent.el: Bugfix of indentation of final point in buffer

2002-04-09  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-mode.el: new command: LilyPond-un-comment-region.
	Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
	separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
	submenu to "LilyPond"-menu.

	* lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
	an interface to play midi.

2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* input/regression/script-stack-order.ly: new file.

2002-04-08  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION (MY_PATCH_LEVEL): Release 1.5.51.

	* mf/feta-din-code.mf: kerning for dynamics.

2002-04-07  Han-Wen  <hanwen@cs.uu.nl>

	* input/regression/dynamics-glyphs.ly: new file

	* mf/feta-din-code.mf: dynamic tweaks. New dynamic s.

	* mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
	forte f for the 2 number. Some fixes for the other bulbed glyphs.

	* Documentation/windows/gs-profile.sh:
	* Documentation/windows/gsview-profile.sh: Remove.  Functionality
	moved to gs/gsview windows packages.

2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>

	* lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
	finding out the duration. Fixes chord tremolo bug. 

	* lily/completion-note-heads-engraver.cc (process_music): Set
	correct duration for all requests of the broken notes.

	* input/regression/completion-heads.ly: Added example of
	Completion_heads_engraver.

	* lilypond-mode.el: Added "2Midi" command

2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>

	* lily/tuplet-bracket.cc, scm/grob-description.scm: New
	edge-width, edge-height and shorten-pair properties for tuplet
	brackets.

	* lilypond-indent.el: Support for blinking of matching parentheses
	
	* lilypond-font-lock.el: Fix fontification of closing > on its own line
	
	* lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
	cleanups of piano pedal brackets.

2002-04-05  Han-Wen  <hanwen@cs.uu.nl>

	* mf/cmbase.mf: remove file. -- do without s, r and z signs for now.

2002-04-04  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-new-code.mf:  new dynamic f sign.
	new dynamic m sign.

2002-04-03  Han-Wen  <hanwen@cs.uu.nl>

	* mf/feta-new-code.mf: new dynamic p sign.

2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/note-spacing.cc (stem_dir_correction): only do
	beam-correction if a beam is there. 

	* lily/stem.cc (duration_log): change from flag_i (); better
	naming.
	(get_default_stem_end_position): fix dot/flag collision code.

2002-04-02  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: release 1.5.50

	* lily/spaceable-grob.cc (add_spring): change incorrect spring to
	unit spring here. Reduces number of warning messages.

	* lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.

2002-04-01  Han-Wen  <hanwen@cs.uu.nl>

	* scm/generic-property.scm: remove generic-property, property-engraver

	* lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket

	* lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.

	* ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.

	* scm/*.scm: remove volta, hairpin and tuplet functions.

	* lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
	note column for notes/stems/dots that already have parents. Fixes
	nested grace contexts.

2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>

	* input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
	get too curved slurs.

	* scm/slur.scm (default-slur-extremity-offset-alist) 
	(default-phrasing-slur-extremity-offset-alist): Move slur
	attachments further away from note-head, vertically.  Also, leave
	a horizontal gap between slur and stem end.

	* lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.

2002-04-01  Han-Wen  <hanwen@cs.uu.nl>

	* input/regression/spacing-grace-duration.ly: new file

	* lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
	for shortest durations.

	* lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
	extent of the mm rest. 

	* lily/spacing-spanner.cc (get_duration_space): better spacing for
	really short notes.

	* lily/tuplet-bracket.cc (make_bracket): new function
	(get_x_offset): new function; make tuplet brackets align on stems
	if stem has same direction.
	(parallel_beam): be anal about matching bracket to tuplet.

	* lily/lookup.cc (line): new function Lookup::line(). 

	* scm/tex.scm (dashed-line): change -line to -system in names.

	* lily/box.cc (add_point): new function.

	* flower/include/interval.hh: new function add_point ().
	new function widen()
	
2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>

	* input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.

	* scm/grob-property-description.scm (number-threshold): Add
	description.

	* lily/multi-measure-rest.cc (brew_molecule): Only put number over
	rest if #measures > number-threshold.  Use padding (well, fake
	using it, anyway).

	* scm/font.scm (make-style-sheet): New styles: mark-number,
	mark-letter.
	(paper20-style-sheet-alist): Add bigger bold fonts.

	* lily/mark-engraver.cc (process_music): Use style mark-number or
	mark-letter.

	* .cvsignore: Ignore all kinds of lilypond input and output.

	* lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.

2002-04-01  Han-Wen  <hanwen@cs.uu.nl>

	* lily/staff-symbol.cc (brew_molecule): make line thickness
	adjustable.

	* lily/*.cc: replace stafflinethickness by linethickness.

2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>

	* input/regression/beam-concave.ly: Add to-be-considered-concave
	beam.

	* lily/beam.cc (check_concave): Add check for large gap between an
	inner notehead and the line through outer noteheads.

	* scm/grob-description.scm (Beam): Add concaveness-gap, default
	value 2.0 staff-space.
	
	* scm/grob-property-description.scm (concaveness-gap): Add
	description.

	* input/mozart-hrn3-allegro.ly: Fix typo.

2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>

	* scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
	lily/note-head-engraver: improved implementation of roundfilledbox
	(according to Han-Wen's request)

	* lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
	lily/gourlay-breaking.cc, lily/staff-symbol.cc,
	lily/simple-spacer.cc: ragged-right alignment

2002-03-29  Han-Wen  <hanwen@cs.uu.nl>

	* input/regression/spacing-note-flags.ly: new file

	* input/regression/spacing-rest.ly: new file

	* mf/feta-eindelijk.mf: make bbox of quarter rest tighter.

	* lily/spacing-spanner.cc (note_spacing): make note spacing after
	all grace notes tight (not only the column directly following a
	grace note).

	* scm/grob-description.scm (all-grob-descriptions): don't make
	mm-rests larger than normal.

	* mf/feta-banier.mf: make upflag narrower. Make end of flag more
	curved. Remove white space at the right of flags.

2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>

	* ports/ports.make: Bugfix: ignore CVS directories.

	* stepmake/.cvsignore: New file.

2002-03-28  Han-Wen  <hanwen@cs.uu.nl>

	* lily/note-spacing.cc (stem_dir_correction): don't correct when
	there is a flag on the stem.

	* lily/multi-measure-rest.cc (brew_molecule): variable width molecule.

	* scm/grob-property-description.scm (measure-length):
	measure-length grob property.

	* lily/spacing-spanner.cc (standard_breakable_column_spacing):
	better spacing for breakable columns when they're juxtaposed: use
	measure length if applicable

	* lily/timing-engraver.cc (start_translation_timestep): store
	measure length in breakable column at start of measure.

2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>

	* ROADMAP: Add description for ports dir, to check email upon
	commit.

2002-03-27  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.48 released
	
	* lily/multi-measure-rest.cc (symbol_molecule): split off from
	brew_molecule()
	(set_spacing_rods): Use symbol_molecule() to determine minimum
	width
	(church_rest): split off from brew_molecule()
	(big_rest): split off from brew_molecule(). Construct using
	variable shape.
	
	* mf/feta-eindelijk.mf: junk multi measure rest.

2002-03-26  Han-Wen  <hanwen@cs.uu.nl>

	* lily/multi-measure-rest.cc (add_column): remove columns property.

	* lily/dynamic-engraver.cc (process_music): add more verbose warning

	* input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
	3 as test piece.

2002-03-26  Heikki Junes <hjunes@cc.hut.fi>

	* lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
	keywords covered, dropped some non-keywords, include R- and 128-notes

2002-03-25 Juergen Reuter <reuter@ipd.uka.de>

	* Code clean-up: Junk multiple implementations of ledger line
	creation in note_head, custos, and porrectus.  This is important
	since there soon will be some more applications of ledger lines to
	come (e.g. ambitus engraver).

	* Make thickness of ledger lines adjustable.  This is essential
	for mensural notation.

	* Fix some bugs in the current ledger_line implementation, most
	notably that of the horizontal extent of ledger lines which equals
	at least the extent of the metafont ledger_line character, and
	which grows(!) if the desired extent shrinks below this limit.

	* roundfilledbox: variable blotdiameter

2002-03-24  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.47 released

	* lily/line-spanner.cc (line_atom): change line-thickness to thickness

	* lily/porrectus.cc:  change line-thickness to thickness, change
	stem-direction to direction.

	* scm/backend-documentation-lib.scm (check-dangling-properties):
	Automatically detect doc'ed properties that are not in an interface

	* scm/grob-property-description.scm: property cleanup. Remove many
	paper-column props that are non-existent.

	* lily/grob.cc (Grob): only use molecule_extent_proc as default if
	the grob has a molecule-callback.

	* lily/*.cc: remove many set_interface() calls, and their
	implementations.

	* input/regression/spacing-knee.ly: new file

	* input/regression/spacing-clef-first-note.ly: new file

	* lily/staff-spacing.cc (get_spacing_params): different spacing
	for pref matter to note at start of line, halfway during line.

	* lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
	correction only if stems have same direction (i.e. not for
	stem-clef combination).
	(stem_dir_correction): maximal correction for knees.

	* lily/*.cc: many updates to interface descriptions.
	
	* lily/grob.cc (internal_set_grob_property): add interface check
	for every set_grob_property call

	* lily/*.cc: document interface stuff in C++
	
	* lily/grob-interface.cc: new file. Add grob interfaces from C++. 

	* lily/volta-bracket.cc: naming: change volta spanner to
	volta-bracket.

	* input/bugs/*.ly: cleanup, remove lots of files.
	
	* buildscripts/mf-to-table.py (write_ps_encoding): generate
	.encoding file. WARNING: upgrade to pktrace 1.0.3

	* mf/feta-toevallig.mf: change PS name for parentheses.

2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

       * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
       also for textheight

2002-03-23  Han-Wen  <hanwen@cs.uu.nl>

	* lily/scope.cc: remove file .

	* lily/include/scope.hh: remove file. Remove Scope class

	* VERSION: 1.5.46

	* lily/beam.cc (score_slopes_dy, score_stem_lengths,
	score_forbidden_quants): ): take out of SCM, pass parameters so
	grob props are read only once. (wtk1-fugue2 from 31 sec to 14
	secs).
	(calc_stem_y): robustness: take care of last_visible_stem == 0.


	* lily/lily-guile.cc (ly_unit): return internal unit.

	* scm/tex.scm (header-end): insert scaling factor, using ly-unit 

	* lily/paper-outputter.cc (output_version): output internal unit
	from Paper_outputter

	* scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).

2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

       * scripts/ly2dvi.py: clean up old .*pk font caching code.

       * scm/ps.scm: Use uppercase postscript font names for the standard
       TeX fonts.

       * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
       Add all available TeX Type1 fonts, including Feta, to the
       Ghostscript font path.

       * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
       version (affects the FontName) in lilypond.map.

       * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
       documentation file to fetaNNlist.ly to avoid name collisions between
       lilypond generated .tex file and font .tex macros file.


2002-03-22  Juergen Reuter <reuter@ipd.uka.de>

	* mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
	made mensural longa and (semi-)brevis leaner

	* mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef

	* lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
	clean-up: moved bezier shape and slope from porrectus to lookup

	* buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
	and /usr/share/texmf/fonts

	* scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).

2002-03-22  Han-Wen  <hanwen@cs.uu.nl>

	* lily/text-spanner.cc (brew_molecule): add #'thickness
	(brew_molecule): add corrections for thickness in molecule padding.

	* lily/line-spanner.cc (line_atom): make function private

	* scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
	discover bounding box. This solves the cropping problem.

	* lily/bar-check-iterator.cc (process): Only resynchronize bar
	check when it  fails. This fixes the combination of  grace notes
	and bar checks.

2002-03-21  Han-Wen  <hanwen@cs.uu.nl>

	* lily/repeated-music.cc (minimum_start): new Scheme callable function
	(first_start): new Scheme callable. This will fix repeated music
	starting with grace notes.

	* lily/music.cc (start_mom): check start-moment-function grob property.

	* VERSION: 1.5.45 released

	* input/regression/system-extents.ly: new regression test. Test
	System extents. 

	* lily/system.cc: rename LineOfScore into System 

	* lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.

	* lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
	(ly_get_extent): new Scheme function ly-get-extent

	* ps/lilyponddefs.ps: use output-scale for  line-x
	definition. 

	* scm/ps.scm (font-load-command): 
	use output-scale

2002-03-20  Rune Zedeler <rune@zedeler.dk>
	
	* lily/beaming-info.cc: Stupid typo fixed
	
	* lily/accidental-engraver.cc: rewrote accidental-routines to get
	support for cross-context auto-accidentals.
	Now the engraver can stay in Staff-context and see other contexts
	from there.
	Changed properties: autoAccidentals, autoCautionaries

	* lily/translator-group.cc (set_children_property):
	Function added recursively setting the same property (deep_copied)
	for all children of a Translator_group.
	
	* ly/property-init.ly: added commands
	\pianoAccidentals \voiceAccidentals
	\modernVoiceAccidentals \modernVoiceCautionaries

	* ly/engraver-init.ly: Correct initialization of new accidentals.
	
	* scm/translator-property-description.scm: Updated
	
	* input/regression/accidental-voice.ly: Added
	
	* Documentation/regression-test.tely: Added new test	

2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.44 released

	* lily/slur.cc (set_extremities): robustness fixes for #'attachment.

	* scripts/lilypond-book.py (bounding_box_dimensions): bugfix.

	* ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
	at 0.4 pt.

	* tex/feta*.tex: remove.
	
	* stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
	all software dealing with it.

2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>

	* mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
	(this fixes pdf output).  Drop awk dependency.

	* scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
	dimensions (linewidth) are in mm.

	* mf/GNUmakefile (depth): Always allow manual access to pfa target.

	* tex/lily-ps-defs.tex: scaletounit using PT/IN==72.

	* lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.

2002-03-19  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.43 released

	* scm/beam.scm (beam-dir-majority-median): if majority is
	undecided, use median. Removes a forced dir in sarabande.

	* mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)

2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
 
 	* lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
 	widths, heights and shortens are now customisable properties.
 
 	* scm/grob-description.scm, scm/grob-property-description.scm: New
 	properties added to PianoPedalBracket, unnecessary
 	Y-offset-callbacks removed from *Pedal, undocumented properties
 	fixed.
 
 	* Documentation/user/refman.itely: Piano pedal updates.

2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>

	* scm/grob-property-description.scm:
	* scm/interface-description.scm: Remove old stuff.

	* scm/grob-description.scm (StemTremolo): Change beam-thickness to
	0.48 (previously 0.42).
	(Beam): Remove old stuff.

	* lily/stem.cc: 
	* lily/stem-tremolo.cc: 
	* lily/beam.cc: 
	* scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
	(previously space-function).

 	* stepmake/bin/add-html-footer.py: Website title fix.

2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* scripts/ly2dvi.py (environment): use new font searching setup.

	* lily/afm.cc (afm_bbox_to_box): make code dimension independent

	* lily/tfm.cc (dimensions): make code dimension independent

	* ps/lilyponddefs.ps: add constant for MM and true/ps-point
	scaling

	* tex/lily-ps-defs.tex: scaling for PS points and MM.

	* lily/include/dimensions.hh: try MM as internal unit.

	* scm/*.scm: remove invoke-dim1

2002-03-17  Han-Wen  <hanwen@cs.uu.nl>

	* GNUmakefile.in (fontpaths): add fontpaths target,

	* make/mutopia-targets.make: add PDF rules.

	* make/mutopia-rules.make: add pdf rule.

	* buildscripts/mutopia-index.py (list_item): add PDF.

	* buildscripts/lilypond-profile.sh (TEXMF): typo.

	* make/lilypond-vars.make: set TEXMF for the new font setup.
 
2002-03-17  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.42 released
	
	* mf/feta-schrift.mf: endless twiddling of Tr.

	* mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
	endless twiddling with the bulb shape.

	* lily/note-head.cc (internal_brew_molecule): make ledger lines a
	little smaller if there is an accidental.

2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
 
 	* buildscripts/lilypond-profile.sh: 
 
 	* mf/GNUmakefile (INSTALLATION_OUT_DIR*),
 	buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
 	Implement new font installation strategy
 
 	* Documentation/misc/fontinstallation (TEXMF): Documentation of
 	the new font installation strategy.
 
 	* lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
 	for comment-region.
 
 	* input/test/staff-size.ly: Simplified using StaffContainer
 
 	* mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
 	lilypond.map file

2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>

	* scm/ps.scm (bezier-sandwich): Draw circles at slur ends.

	* lily/beam.cc (score_stem_lengths): new quanting stuff
	(score_forbidden_quants): Second and third beam quant stuff.

2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>

	* lily/beam.cc (least_squares): Remember least-squares-dy for
	later use.
	(quantise_interval): Don't quant to dy steeper that
	least-squares-dy.  Return empty interval if no sane quants found.
	(quantise_position): Try quantise_interval until we have
	acceptable solution.

2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>

	* scm/interface-description.scm (beam-interface): Update.

2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.41 released
	
	* mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
	optima serifs on top of t, bottom of r.

	* mf/feta-bolletjes.mf: make ledger line rounder. 

	* mf/feta-toevallig.mf: some smallish fixes for flat sign.

	* mf/feta-eindelijk.mf: make 8th rest a little darker, some more
	parametrization.

2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
 
       * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
       well as text pedal indications and a combination of both.  All
       pedal indications are horizontally aligned on a line spanner.
 
       * lily/text-spanner.cc: Edge-width property added to use in
       bracketed piano pedals. Function setup_sustain_pedal added to set
       the dimensions of the brackets. 
 
       * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
       some of the *Pedal properties tweaked. 
 
       * scm/grob-property-description.scm: New pedal-type (*Pedal) and
       edge-width (TextSpanner) properties.
 
       * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
 
       * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
       fontified identifiers list.
 
       * input/test/pedal.ly: New pedal features added. 
 
       * Documentation/user/refman.itely: New pedal features documented.
       

2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>

	* lily/include/new-beam.hh: Previously new-beam.hh
	* lily/beam.cc: Previously new-beam.cc
	(least_squares): Bugfix: don't barf on beams with less than two
	visible stems (tremolos).

	* scm/beam.scm: 
	* scm/grob-description.scm (Beam): Junk old beam stuff.
	
	
2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.40

	* mf/feta-eindelijk.mf: new 8th rest.

	* mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
	stick out of staffline

	* scripts/lilypond-book.py: fixes for texi regular expressions.

2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>

	* lily/include/new-beam.hh:
	* lily/new-beam.cc: New file.

	* flower/include/interval.hh: 
	* flower/include/interval.tcc (delta): New method.
	(swap): Now public (previously private).
	
	* scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
	1 staff-line-thickness.  Sadly, this makes dy quanting problems
	(dy quants allowed should depend on actual left y) more visible.

2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>

	* lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.

	* scm/grob-property-description.scm (concaveness-threshold): Add
	typecheck and description.

	* scm/grob-description.scm (Beam): Remove obsolete properties, add
	concaveness-threshold (previously concaveness).

	* lily/beam.cc (check_concave): Remove choices and debugging
	stuff: use best concaveness calculation.
	(quantise_dy): Remove choice.  Try to never make a slope steeper
	by quantising, but certainly never quantise a slope away.
	(check_stem_length_f): Remove choice.  In case of lengthening
	alowed, always lengthen to ideal length.

	* Documentation/index.texi: Fix FAQ url.

	* Documentation/topdocs/INSTALL.texi: Add information about fink,
	compile fix and 1.4 specific fix that doesn't hurt 1.5.

2002-03-13  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.39 released

	* lily/simple-spacer.cc (add_rod): rods take precedence over
	infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.

	* lily/arpeggio-engraver.cc (acknowledge_grob): clean up.

	* lily/note-spacing.cc (get_spacing): only insert space for
	accidentals if necessary.

	* input/regression/spacing-accidental-staffs.ly (texidoc): update example

	* lily/spacing-spanner.cc (musical_column_spacing): new
	function. Have correct spacing from note to end-of-line as well.

2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>

       * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.

       * darwin.patch: New file.

       * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
       code.  Shorten stems by fraction of stems to be shortened.

       * lily/stem.cc (get_default_stem_end_position): Shorten only half
       of shorten value for boundary cases.

       * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
       (Beam): Set beamed-stem-shorten to (1.0 0.5).

2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>

       * lily/beam.cc (check_stem_length_f): Try to lenthen more.

       * scm/grob-description.scm (Beam): Add concaveness.  Replace
       Beam::cancel_suspect_slope with Beam::check_concave.
 
       * lily/beam.cc (check_concave): Calculate concaveness of beam, and
       set slope to horizontal if concaveness > Beam.concaveness.  This
       handles cases that kludgy cancel_suspect_slope was meant to catch
       very well.
       (cancel_suspect_slope): Remove.

2002-03-12 Rune Zedeler <rune@zedeler.dk>

 	* lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
 	stemLeftBeamCount and stemRightBeamCount to equal 0.
 	Fixes [c8 c4 c8]
      
2002-03-12  Han-Wen  <hanwen@cs.uu.nl>

	* lily/spacing-spanner.cc (breakable_column_spacing): Only do
	fixed spacing for pref matter, if the next column is musical, and
	at the same moment.

	* lily/note-spacing.cc (stem_dir_correction): Use correct
	discretionary for stem-bar spacing.

2002-03-11  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.38 released 

	* lily/grob.cc (warning): Use cause tracking to give more
	meaningful errors from the backend. 

	* lily/property-iterator.cc (check_grob): Warn if setting grob
	property in unknown grob. 

	* mf/feta-toevallig.mf: brushed stems for natural sign.

	* lily/molecule.cc (align_to): don't translate empty molecule.
	(this triggers a very subtle bug in time-signature.)  

2002-03-10  Han-Wen  <hanwen@cs.uu.nl>

	* lily/spring.cc: remove file.

	* input/regression/spacing-stem-bar.ly: new file

	* lily/score.cc (run_translator): resurrect point-and-click

	* input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
	sarabande layout

	* lily/spacing-spanner.cc (find_shortest): Shortest note for
	spacing is now globally determined, using the most common shortest
	note. Notes that are shorter are spaced geometrically, and with
	expand hints. This makes spacing more even, and measures that have
	very short notes won't be that stretched out.  

	* mf/feta-klef.mf: F-clef fixes, documentation on the
	shape. (WARNING: font changed.)

2002-03-09  Han-Wen  <hanwen@cs.uu.nl>

	* lily/simple-spacer.cc (add_columns): support for infinitely
	stiff springs.
 
	* lily/staff-spacing.cc (get_spacing_params): space after
	prefatory matter is fixed.

2002-03-08  Han-Wen  <hanwen@cs.uu.nl>

	* lily/note-spacing.cc (stem_dir_correction): Correct spacing for
	barline following an upstem.

	* lily/staff-spacing.cc (extremal_break_aligned_grob): destill
	function from next_notes_correction().
	(bar_y_positions): idem.

2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* input/regression/break.ly (texidoc): bugfix: escape \ in
	strings.

	* lily/staff-spacing.cc (next_notes_correction): Correct the
	spacing of a note following a barline.


2002-03-04  Glen Prideaux

	* mf/feta-solfa.mf: Shaped note heads

2002-03-03  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.37 released

	* lily/key-signature-interface.cc (brew_molecule): rename from key_item
	left-align molecule.
	
	* lily/break-align-interface.cc (do_alignment): completely
	rewritten. Now it does not use Align_interface anymore, but a
	separate routine. Like StaffSpacing, it reads space-alist from the
	breakable grobs.  This allows you to set spacing using
	
	\property Staff.Clef \override #'space-alist = '(....stuff....)  
 
	* lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
	to Bar_line. Move files around as well.

	* lily/time-signature.cc (time_signature): left align time signatures. 

	* mf/feta-timesig.mf: Remove padding from C-style time signatures.
	Corrections of the glyph shape C. Comments added.

2002-03-02  Han-Wen  <hanwen@cs.uu.nl>

	* lily/spacing-spanner.cc: move from third-try.cc; rename
	Third_spacing_spanner to Spacing_spanner.

	* lily/staff-spacing.cc (get_spacing_params): redo prefatory
	spacing stuff. Much cleaner now, and we prepare for neat spacing
	tricks around bar lines and such.

	* lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
	variables with themselves. (Ouch.)

	* lily/span-bar.cc (brew_molecule): don't try to span bars that
	overlap.

2002-03-02  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.36

	* lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
	ly_dir_p

	* lily/music.cc (ly_get_mus_property): typechecking
	(ly_set_mus_property): idem
	(ly_make_music): idem
	(ly_music_name): idem

	* lily/chord.cc: use scm_reverse_x iso. gh_reverse()

	* lily/note-spacing.cc (stem_dir_correction): correction for
	same stem notes as well. 

	* lily/pitch.cc (pitch_transpose): stricter typechecking

	* mf/parmesan*mf: magnification fixes.

	* Documentation/topdocs/INSTALL.texi: update RedHat reqs

2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

	* buildscripts/mf-to-table.py (postfixes): Output also .ly file
	documenting the font. (Doesn't work for parmesan at the moment)

	* Documentation/user/appendices.itely (The Feta font): Add list of
	Feta font symbols with names.

	* mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
	automatically

2002-03-01  Han-Wen  <hanwen@cs.uu.nl>

	* lily/translator-group.cc (ly_set_trans_property): typechecking
	(ly_get_trans_property): typechecking.

	* lily/font-metric.cc (ly_text_dimension): typechecking 
	(ly_find_glyph_by_name): idem.

	* scm/bass-figure.scm (brew-complete-figure): support for
	bracketed numbers.
	
	* lily/grob.cc (ly_get_paper_var): new function

2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION (PATCH_LEVEL): 1.5.35 released.

	* lily/lookup.cc (ly_bracket): Scheme function ly-bracket
	(bracket): New function.

	* lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
	stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 

	* lily/third-try.cc (set_implicit_neighbor_columns): type checking
	bugfix.

	* lily/span-arpeggio-engraver.cc (stop_translation_timestep):
	typecheck bugfix. 

	* lily/grob.cc (ly_get_grob_property): be anal about types.
	(ly_set_grob_property): idem

	* lily/figured-bass-engraver.cc (process_music): move molecule
	building completely to Scheme

	* lily/include/musical-request.hh (class Bass_figure_req): Add
	class. 

	* lily/parser.yy (bass_figure): add support for space figure.

	* lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 

	* lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension

	* lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
	(ly_align_to_x): new function ly-align-to!

	* lily/font-interface.cc (ly_font_interface_get_font): new Scheme
	function ly-get-font

	* mf/feta-nummer.mf: include normal-space dimension. 

	* lily/collision.cc (check_meshing_chords): don't merge collisions
	with whole notes.
	
	* lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
	glyph is string.

2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>

	* scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4

2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>

	* mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
	font changed)

	* scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
	than mensural chars

	* mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
	scm/grob-description.scm: added mensural fermata symbol

2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.34 released.

	* lily/rest-engraver.cc (create_grobs): rests can have pitches.

	* lily/staff-symbol-referencer.cc (callback): assume that
	staff-position is unset in general.

	* input/regression/rest-pitch.ly: new file.

	* lily/parser.yy (simple_element): rests can have pitch. Syntax:
	a4\rest

2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/scm-option.cc (set_lily_option): add internal-type-checks
	as Scheme option. Run regression test by default with
	internal-type-checking.

	* lily/separating-group-spanner.cc (find_musical_sequences):  removed.

	* lily/lily-guile.cc (type_check_assignment): changed functions.

	* scm/*description*.scm: be anal about typechecks. Some changes
	for internal variable names.

2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4

2002-02-25  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.33 released.

	* mf/feta-macros.mf (flare_path): removed draw_flare, replace by
	flare_path everywhere (c-clef, numbers).	

	* lily/bar-number-engraver.cc (process_music): also print bar
	number if measure starts with grace note.	

	* input/regression/grace-bar-number.ly: new test.

2002-02-24  Han-Wen  <hanwen@cs.uu.nl>

	* lily/figured-bass-engraver.cc (stop_translation_timestep): reset
	rest as well.

	* scm/music-functions.scm (voicify-music):  split chords into
	different voices automatically.

	* lily/music.cc (ly_music_list_p): new function

	* lily/music-sequence.cc (do_relative_octave): robustification

	* scm/music-functions.scm: many utility functions 

	* lily/music.cc (ly_set_mus_property): add type checks to the
	Scheme property assignment.

	* buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
	dvips fixes

	* mf/lilypond.map: .map file from Mats' page. 

2002-02-21  Juergen Reuter <reuter@ipd.uka.de>

	* Some more parmesan related fixes;

	* Custos: varying shape (in particular, stem length), depending on the
	  vertical position of the custos (on staffline / between stafflines);

	* Custos: added grob property "neutral-direction" (same semantics as
	  with stem); introduced new grob property "neutral-position";

	* Time-signature: print a warning when resorting to default layout.

2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/translator-group.cc (add_fresh_simple_translator): remove
	function; initialize() is called through
	Translator_group::initialize().

	* lily/third-try.cc (prune_loose_colunms): add constraints (rods)
	for the neighbors of a loose column.

	* lily/line-of-score.cc (set_loose_columns): be more intelligent:
	position loose columns so that they don't collide.

2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.32 released.

	* scm/font.scm: remove font-name symbol.

	* mf/GNUmakefile: use pktrace for making PFAs

	* make/lilypond.redhat.spec.in: use pktrace when making RPMs

	* lily/rest-collision.cc (do_shift): read direction field from
	rest-column in case of note-rest collision. This should fix some
	problems with rest collisions.

2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/note-heads-engraver.cc (process_music): Removed easyPlay
	property.

	* lily/note-head.cc (brew_ez_molecule): Remove note-character
	property. Read pitch directly from #'cause.

	* mf/feta-puntje.mf: bugfix

2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
	
	* mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.

2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>

	* Documentation/windows/compiling.texi: Update.

	* Documentation/index.texi: Add link to orphaned compiling for
	windows page.

	* Documentation/footer.html.in: Comment fix.

	* stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.

2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
	
	* VERSION: 1.5.31 released

	* lily/new-spacing-spanner.cc: remove file.

	* lily/third-try.cc (do_measure): only take spacings into account
	if they pertain to the column pair under consideration. This fixes
	spacing bug when mixing eighths triplets and normal eighths.

	* lily/note-head.cc (brew_molecule): revert ledger change: ledger
	lines don't take up space anymore. Document why in note-head.cc
	comment.

2002-02-17  Han-Wen  <hanwen@cs.uu.nl>

	* lily/font-interface.cc (get_font): reinstate
	#'font-magnification. See input/regression/font-magnification.ly
	(get_font): Change the definition of  #'font-name grob property.

	* lily/grob.cc (get_uncached_molecule): output origin for grobs
	that have a #'cause field.

2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* Documentation/topdocs/INSTALL.texi: remove type3 stuff. 

	* mf/GNUmakefile:  remove metapost stuff

	* stepmake/aclocal.m4: remove metapost detection stuff.

2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>

	* mf/GNUmakefile (FET_FILES): 
	(FONT_FILES): Include parmesan.

	* stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
	iso regex, regsub

	* buildscripts/clean-fonts.sh (FILES): Clean parmesan too.

	* Documentation/user/refman.itely (Paper size): Quote braces.

2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* stepmake/aclocal.m4: fixed bison version check to be more
	robust.

	* lily/stem.cc (position_noteheads): fix for cluster chords.

	* mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler

	* python 2.2 support.

2002-02-04  Han-Wen  <hanwen@cs.uu.nl>

	* VERSION: 1.5.30 released

	* lily/dynamic-engraver.cc: add doco about DynamicLineSpanner

	* Documentation/user/refman.itely (Dynamics): add a note about
	DynamicLineSpanner.

	* scm/grob-description.scm: add a 'translator-type?  object
	property, so that \property Foo.Bar =\turnOff doesn't cause
	type check warning.

	* lily/translator-group.cc (add_fresh_group_translator): make
	new add-translator functions to make distinction between fresh and
	used group-translators. Fixes problem with scripts on auto-changing voice 

	* lily/timing-engraver.cc: make Timing_engraver instantiatable,
	add to Score_performer. Fixes bar checks in MIDI

	* lily/tie-engraver.cc (create_grobs): Use pitches to compare note
	heads. Fixes many quirks with ties.

	* lily/engraver.cc (announce_grob): Use SCM argument. Store cause
	in the grob property #'cause, instead of using Grob_info.

	* ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
	staff context, fixing dot alignment on collisions.

	* lily/beam-engraver.cc (try_music): remove can't find beam start
	warning, so that skipTypesetting won't complain.

2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

	* Documentation/user/refman.itely (Paper size): Documentation fix,
	papersize

	* lily/text-engraver.cc: Bugfix: textNonEmpty works again

	* scm/grob-description.scm: \breathe: Use feta font comma by default

2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

	* input/template/piano-dynamics.ly (pedal): Simplified

2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>

	* ly/engraver-init.ly: avoid warnings on \skip in lyrics

2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>

	* lilypond-mode.el (LilyPond-command-query): ignore case.

2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.29 released

	* all files: change 2001 to 2002 in headers globally

	* mf/parmesan20.mf: split out ancient notation into parmesan ("old
	cheese") font. WARNING: fonts changed.
	
2002-02-01  Juergen Reuter <reuter@ipd.uka.de>

	* mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
	
	* mf/*.mf: Added some more vaticana/solesmes style font symbols
	
	* mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum

	* mf/*.mf: Fixed a few typos in various .mf files

2002-01-17 Rune Zedeler <rune@zedeler.dk>
 
 	* mf/: added macro soft_penstroke
	
 	       softened some glyphs
 	       redrawn triangular noteheads
 	       redrawn tab-clef
 	       added classical quarter rest
 	
 	* lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
 
 	* lily/bar.cc: Bugfix: repeat dots when even number of staff
 	lines and staff_space>=2
 
 	* lily/rest.cc: Use default rests when current style glyphs not
 	found - this allows
 	\property Staff.Rest \override #'style = #'classical

2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>

	* input/bugs/first-tie.ly: New file.

	* input/bugs/spacing-clash.ly: New file.

2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>

	* po: regenerate.

2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>

	* lilypond-indent.el: New file providing indentation for
	parenthesised blocks of lilypond code in Emacs
	
	* lilypond-font-lock.el: Changes to the syntax table to facilitate
	indentation and handle block comments properly. Distinguish
	accents from close-brackets in fontification.

	* lilypond-mode.el: LilyPond-indent-command set appropriately.

2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>

	* Documentation/windows/installing.texi: 
	* Documentation/windows/compiling.texi: Include from 1.4.10.

	* Documentation/windows/gs-profile.sh: previously lily-gs.sh

	* input/bugs/first-midi-tie.ly: New file.

2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
	
	* VERSION: 1.5.28 released

        * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
        illicit beams on [c4 c4] etc.

        * lily/bar-check-iterator.cc (Bar_check_iterator): new
        file. Make separate iterator for Bar_checks. Bar_check now happen
        outside engravers, meaning that you can use them with
        skipTypesetting. Associated changes in other files.
        
        * lily/new-spacing-spanner.cc (stem_dir_correction): removed
        function
        
        * lily/spacing-spanner.cc (stem_dir_correction): removed function

        * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions

        * lily/bar.cc (before_line_breaking): remove bar-line spacing code.

        * lily/stem.cc (set_spacing_hints): removed function

        * lily/note-spacing.cc (stem_dir_correction): new stem-direction
        correction for spacing; now take vertical extents of the stem into
        account.  

        * lily/third-try.cc: More hacking to get spacing working.

        * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
        sits at staff level and creates note spacing objects. Scrap it
        again, and document why.

        * lily/include/group-interface.hh: rename functions. 

2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>

	* stepmake/stepmake/c++-rules.make:
	* stepmake/stepmake/c-rules.make: Fixes for bison-1.28.

2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>

	* make/lilypond-vars.make: 
	* scripts/ly2dvi.py (setup_environment): 
	* scripts/lilypond-book.py (setup_environment): Also set tex
	memory options.

2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* VERSION: 1.5.27 released.

	* Documentation/user/refman.itely (Bar numbers): added bar number
	documentation.

	* scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
	again.

2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>

	* tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
	spread the last few lines all over the last page of a score.

2001-12-24  Han-Wen  <hanwen@cs.uu.nl>

	* lily/third-try.cc: 3rd try at revising spacing
	engine. Not yet finished.

	* lily/paper-column.cc (brew_molecule): print debugging marks on a
	paper-column.

	* lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
	collecting past note heads.

	* lily/note-heads-engraver.cc (try_music): Remove end_mom_
	stuff.

	* lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
	class. Keep a queue of grobs that are still playing in busyGrobs. 

	* lily/lyric-combine-music-iterator.cc (get_busy_status): New
	function. Use busyGrobs to detect playing notes.
	
2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
 
	* Documentation/topdocs/INSTALL.texi: Added note about broken
	python-2.1.  Updated note for Debian's broken (well, broken for
	our use anyway) tex configuration.
	
	* scripts/lilypond-book.py (re_dict): python2.2 fix.
	
	* stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
	($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
	
	* scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
	(But left margin of png's still misses a few pixels.  Arg.)
	
2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>

	* lilypond-mode.el (LilyPond-command-next-midi): Make
	possible to kill midi-process (using "C-c C-m").

2001-12-14  Han-Wen  <hanwen@cs.uu.nl>

	* scripts/lilypond-book.py (LatexPaper.set_geo_option):
	Convert strings with dimensions to numbers.

	* lily/volta-engraver.cc:  only make a  bracket for the top staff,
	as found in stavesFound. 

	* lily/bar-number-engraver.cc: remove staff administration. 

	* lily/mark-engraver.cc (acknowledge_grob): remove staff
	administration. This breaks support for invisible-staff.

	* lily/staff-collecting-engraver.cc: new engraver. Collects staff
	symbols into stavesFound.

	* lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
	grobs, and put them into columns.

	* lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
	Engraver_group_engraver as a potential candidate for ack'ing grobs.

2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>

	* lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
	midi section in the Emacs-mode, so it is possible to play certain
	score in a multiscore lilypond-file.
	 
2001-12-09  Rune Zedeler  <rune@zedeler.dk>
	* lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
	(FIXME: not accessible from guile)
	
	* lily/accidental-engraver.cc: rewrote accidental-routines to get
	better support for Kurt Stone's suggestions.
	Removed properties: noResetKey, forgetAccidentals, autoReminders,
	                    lazyKeySignature.
	Changed property:   localKeySignature.
	Added properties:   extraNatural, autoAccidentals,
	                    autoCautionaries.

	(BUGFIX: broken-tie-support destroyed in 1.5.16)
	
	* ly/property-init.ly: added commands
	\defaultAccidentals \modernAccidentals \modernCautionaries
	\noResetKey \forgetAccidentals

	* ly/engraver-init.ly: Correct initialization of new accidentals.
	
	* scm/translator-property-description.scm: The new properties
	added.
	
	* input/: Some examples added, some changed.
	
	* Documentation/regression-test.tely: Added quick test of new
	accidentals.

2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* scripts/lilypond-book.py (scan_latex_preamble): don't crash if
	header not found

2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/beam.cc (before_line_breaking): Make beams  without stems
	or with only one stem disappear.

2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* bibtools/bib2html.py: Add simple bib2html convertor, and .bst
	files to have standardised HTML bibliography output. Update build
	docs to reflect this.

	* lily/include/simple-spacer.hh (struct Simple_spacer): add
	active_count_, so that we don't have to look for active springs
	anymore.

	* scm/interface-description.scm,scm/grob-property-description.scm:
	Add 'penalty

	* lily/simple-spacer.cc (solve): Handle forced line breaks
	here. Fixes problems when combining linebreaks with non-fitting
	line configurations

2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>

	* 1.4.9.jcn3 forward ports.
	
	* Really included .cvsignore.

	* Included Han-Wen's uu1 windows fixes.

	* Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.

	* Added Cygwin setup.hint

	* Removed tex, python wrappers and postinstalls to go with Cywgin's
	tetex/texmf, python installations.

	* Updated cygwin installer.

	* ly2dvi: Don't accept filenames with spaces (+ fix).

2001-12-03  Han-Wen  <hanwen@cs.uu.nl>

	* ly/engraver-init.ly (VoiceContext): fix text engraver ordering.

	* lily/translator-def.cc: Remove manual symbol caching.

	* lily/script-column.cc (before_line_breaking): robustness check:
	don't crash if no direction set.

	* scripts/pmx2ly.py: Key and clef change support (Laura Conrad)

	* scripts/pmx2ly.py (Parser.parse_header): more generic header
	parsing.


2001-12-01  Han-Wen  <hanwen@cs.uu.nl>

	* lily/note-head.cc (head_extent): added to compute width without
	ledger lines. By default, ledger lines take up width now.

	* input/regression/fingering.ly: demonstrate auto fingering.
	Horizontal placement is still buggy. 
	
	* lily/fingering-engraver.cc (class Fingering_engraver):
	added. Provides support for horizontal fingering scripts

	* lily/include/grob.hh: Naming: change parent_l() into get_parent()

	* lily/side-position-interface.cc (add_staff_support): add staff
	only for Y-axis side positions.

	* lily/parser.yy (request_chord): Fix mem leak.

	* lily/musical-request.cc (transpose): moved to Music::transpose()

	* lily/include/grob-info.hh: Change music pointer to SCM, so we
	can store grobs as grob-creation cause as well.

	* lily/group-interface.cc (add_thing): efficiency tweak: reuse
	handle when adding. Use precomputed symbols throughout lily.
	
	* lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
	track of spacing issues.

	* lily/separating-line-group-engraver.cc: make StaffSpacing grobs
	to keep track of staff spacing

2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>

	* Rewrote new conditional guile >= 1.5 compilation switches, to keep
	  code clean from conditionals and have a concentrated sets of
	  compatibility fixes for old guile versions.

	* Fixes for guile 1.4, including embedded ps.

2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>

	* lily/stanza-number-engraver.cc (process_music): allow pairs as
	well for markup texts.

	* lily/musical-request.cc (length_mom): kludge for null pointer.

	* scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility

	* scm/lily.scm (sign): bugfix

	* CHANGES: Change log instated.

	* stepmake/add-html-footer.py: @BRANCH@ tag insertion.

