''
[lilypond.git] / ChangeLog
blobba863f785e2bcaca18ce6d430cfe2255e7ff1a2f
1 2002-06-29  Jan Nieuwenhuizen  <janneke@gnu.org>
3         * configure.in: Require guile 1.4 or newer (was 1.3.4?).
5 2002-06-29  Han-Wen  <hanwen@cs.uu.nl>
7         * lily/(phrasing-)slur-engraver.cc: remove slur{Begin|End}Attachment.
9         * lily/separating-line-group-engraver.cc (acknowledge_grob):
10         ignore grobs with no-spacing-rods set.
12         * Documentation/user/tutorial.itely (Fine tuning a piece): more tut.
14         * scm/grob-description.scm (all-grob-descriptions): sort list
15         
16 2002-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
18         * Documentation/user/tutorial.itely (A piano excerpt): Bugfix:
19         remove stray brace.
21         * Documentation/topdocs/FAQ.texi (Installation): Add
22         lilypond-devel list.  Add faq about font removal.  Fix faq about
23         generating and running ./configure.
25 2002-06-26  Jan Nieuwenhuizen  <janneke@gnu.org>
27         * scm/chord-name.scm (chord::name->text): Workaround: clean markup
28         text.
30         * lily/text-item.cc (markup_text2molecule): Bugfix: raise only once.
32         * input/test/ambitus.ly:
33         * lily/ambitus-engraver.cc:
34         * lily/ambitus.cc:
35         * lily/include/ambitus.hh: New file.
37         * GNUmakefile.in (local-clean): Also remove builddir-setup's symlinks.
39 2002-06-25  Juergen Reuter  <reuter@ipd.uka.de>
41         * input/test/ambitus.ly, lily/ambitus-engraver.cc,
42         lily/ambitus.cc, lily/include/ambitus.hh, ly/engraver-init.ly,
43         scm/basic-properties.scm, scm/grob-description.scm,
44         scm/grob-property-description.scm: Add support for ambitus.
46 2002-06-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
48         * lily/text-spanner.cc: add some props to interface (patch
49         courtesy Chris J).
51 2002-06-24  Jan Nieuwenhuizen  <janneke@gnu.org>
53         * lily/text-spanner.cc (setup_pedal_bracket): Bugfix: only
54         dereference valid Grob.
56         * configure.in: Quoting fixes.
58 2002-06-24  Han-Wen  <hanwen@cs.uu.nl>
60         * lily/grob-scheme.cc: new file
62         * lily/break-substitution.cc: split up break substitution
63         functionality, and make a special constant stack-space version for
64         lists of grobs. This should fix the problems of lily in
65         combination with pthreads/qthreads.
67         * lily/grob.cc (mark_smob): bugfix: mark X parent too.
69 2002-06-23  Chris Jackson  <chris@fluffhouse.org.uk>
71         * lily/text-spanner.cc (setup_pedal_bracket):
72         * lily/piano-pedal-engraver.cc (create_bracket_grobs): 
73         Fix the lengths of mixed-style piano pedal brackets.
75 2002-06-23  Jan Nieuwenhuizen  <janneke@gnu.org>
77         * Documentation/user/tutorial.itely (First steps): Add missing
78         quotation.
80         * Documentation/topdocs/INSTALL.texi (Top): Add some warnings
81         about guile --with-threads.  Hopefully this issue can be resolved
82         rsn, but maybe we should even add warnings for the standard Debian
83         and Red Hat packages?
85         * configure.in: Warn if guile is configured to use threads.  Maybe
86         we should make this an error (ie, add to REQUIRED list?)
88         * config.make.in (PACKAGE_NAME):
89         (PACKAGE, package):  Don't hardcode.
91         * VERSION (PACKAGE_NAME): Typo fix.
93 2002-06-23  Han-Wen  <hanwen@cs.uu.nl>
95         * input/tutorial/brahms-*.ly: new tutorial files.
97         * Documentation/user/tutorial.itely: fixes. Extend cheat sheet.
99         * scm/script.scm (default-script-alist): fermata is up.
101         * lily/dynamic-engraver.cc (stop_translation_timestep): stop
102         dynamic line spanner when there is no crescendo to connect.
104         * lily/tie.cc (get_control_points): add test to avoid flat ties.
106 2002-06-22  Han-Wen  <hanwen@cs.uu.nl>
108         * lily/note-collision.cc (check_meshing_chords): don't crash if no
109         stems.
111         * scm/music-functions.scm (toplevel-music-functions): new
112         definition. Functions to apply automatically. Removes the need for
113         explicitly doing \apply #voicify-music
115         * lily/grob.cc (do_break_substitution): rename function, use
116         global var for criterion argument. Reduces stack usage a little.
118         * ly/engraver-init.ly (StaffContext): add Instrument_engraver
120         * scripts/convert-ly.py, lily/*.cc, scm/*.scm: change
121         visibility-lambda to break-visibility
123 2002-06-21  Jan Nieuwenhuizen  <janneke@gnu.org>
125         * input/bugs/part-combiner.ly: New file.
127         * lily/include/spacing-interface.hh: New file.
129         * lily/include/spaceable-element.hh: Remove.
131         * input/test/script-priority.ly: New file.
133 2002-06-20  Han-Wen  <hanwen@cs.uu.nl>
135         * lily/system.cc (output_lines): kill grobs that are only for spacing.
137 2002-06-20  Jan Nieuwenhuizen  <janneke@gnu.org>
139         * lily/fingering-engraver.cc (make_script): 
140         * lily/script-engraver.cc (process_music): 
141         * lily/text-engraver.cc: 
142         (process_acknowledged_grobs): Remove hard coded script-priority.
144         * flower/warn.cc: Cleanup.
146         * lily/voice-devnull-engraver.cc: Also eat multi-measure rest, a
147         spanner now.
149         * aclocal.m4: Regenerate.
151         * stepmake/aclocal.m4: Also set GUILE_PATCH_LEVEL.
153         * config.hh.in: Only set GUILE_MAJOR_VERSION if necessary.
154         * lily/include/lily-guile.hh: Only include config.h if necessary.
156         * Changelog: cvs changes ml archive test #8.
157         
158         * lily/slur-engraver.cc: Layout fix.
160 2002-06-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
162         * ly/engraver-init.ly (RhythmicStaffContext): add
163         Dot_column_engraver, resurrect barlines 
164         
165         * VERSION: 1.5.62 released.
167         * lily/engraver-group-engraver.cc (do_announces): rename
168         create_grobs () to process_acknowledged_grobs().
170         * lily/grob.cc (programming_error): add programming_error with
171         origin location.  
173         * lily/tuplet-bracket.cc (parallel_beam): robustness check, don't
174         fail if a beam doesn't have stems.  
176         * lily/engraver-group-engraver.cc (do_announces): scary change in
177         calling convention of create_grobs():  no create_grobs() call
178         before acknowledge_grobs().
180         * lily/sequential-music-iterator.cc (skip): add support for grace
181         notes. 
183         * lily/music.cc (Music): fix very subtle and nasty memory
184         corruption bug. Typical symptom: "programming_error: Rhythmic_req
185         has no duration"
187         * mutopia/claop.py: new file: CLA(O)P II by Peter Wallin.
189 2002-06-19  Han-Wen  <hanwen@cs.uu.nl>
191         * ly/engraver-init.ly (RhythmicStaffContext): add
192         Dot_column_engraver
193         
195         * lily/parser.yy: various protection fixes. Less objects are now
196         overprotected.
198 2002-06-18  Jan Nieuwenhuizen  <janneke@gnu.org>
200         * stepmake/bin/release.py (prev_ver): Bugfix: assume new diff
201         naming scheme.
203         * Documentation/windows/zlily-profile.sh:
204         * Documentation/windows/post-lilypond.sh: Assume normal
205         prefix=/usr for lilypond.
207         * lily/musical-request.cc (length_mom): Display origin with error.
209         * input/test/duration-check.ly: New file.
211         * lily/lily-guile.cc (ly_pair_p): [PARANOID]: Check for freed
212         cells.
214         * lily/part-combine-music-iterator.cc (get_state): Bugfix: use
215         ly_symbol2scm to get a scm symbol (rather than ly_str02scm).
217         * aclocal.m4:
218         * autogen.sh: Regenerate.
219         
220         * Documentation/topdocs/INSTALL.texi: 
221         * configure.in: 
222         * stepmake/configure.in:
223         * stepmake/aclocal.m4: Revert autoconf upgrade.  Autoconf 2.53 has
224         a serious bug wrt AC_CONFIG_AUX_DIR (reported).  Creating
225         ./configure once again requires autoconf == 2.13.
227         * stepmake/autogen.sh: Check for autoconf == 2.13.
229 2002-06-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
231         * lily/parser.yy (open_request_parens): add input locations to
232         open and close parens. 
234 2002-06-17  Chris Jackson <chris@fluffhouse.org.uk>
236         * lily/tuplet-bracket.cc:
237         * lily/text-spanner.cc: 
238         * lily/piano-pedal-engraver.cc: 
239         * scm/grob-description.scm: 
240         * scm/grob-property-description.scm: Changed the
241         edge-width property of brackets to edge-widen. Changed the sign of
242         the left element of edge-widen so a pair of equal numbers produces
243         a symmetrical bracket.
245 2002-06-17  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
247         * ly/espanol.ly: added.
249         * lily/simple-spacer.cc (solve): remove assert.
251 2002-06-17  Han-Wen  <hanwen@cs.uu.nl>
253         * lily/forbid-break-engraver.cc (class
254         Forbid_line_break_engraver): new engraver: forbid linebreaks
255         during playing notes
257         * lily/spacing-spanner.cc (loose_column): add another check: don't
258         move around bar lines as loose columns.
260         * scm/basic-properties.scm (default-break-barline):  add pre-break
261         for .| barline
263 2002-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
265         * GNUmakefile.in (builddir-setup): Bugfix: include srcdir/tex as
266         well as mf/out as subdirs of tex, for kpathsea to find through TEXMF.
268         * scripts/lilypond-book.py (environment): Bugfix: update to new
269         TEXMF scheme, from ly2dvi.
271         * lily/lookup.cc (slur): Invoke bezier-bow.
273         * scm/tex.scm (bezier-bow): 
274         * scm/ps.scm (bezier-bow): Bezier sandwich with rounded endings
275         (Previously named bezier-sandwich).
276         
277         * scm/tex.scm (bezier-sandwich):
278         * scm/ps.scm (bezier-sandwich): Plain bezier sandwich.
280         * make/lilypond.mandrake.spec.in (post): 
281         * make/lilypond.suse.spec.in (post): 
282         * make/lilypond.redhat.spec.in (post): Also remove parmesan fonts.
283         
284         * tex/lilyponddefs.tex: Uncomment feta character support.
286         * Documentation/user/refman.itely (Pitches): Add espanol.ly
287         description.
289         * ly/catalan.ly: Add comment about (spanish) -s suffix.
291         * ly/espanol.ly: Spanish note names by Carlos Garc'ia Su'arez
292         <cgscqmp@terra.es>.
294 2002-06-14  Jan Nieuwenhuizen  <janneke@gnu.org>
296         * GNUmakefile.in (short-examples):
297         (long-examples): Bugfix for --srcdir build.
298         (top-web): Rewrite weblist find command.
300         * stepmake/bin/config.sub: 
301         * stepmake/bin/config.guess: Update from latest autotools.
303         * aclocal.m4:
304         * autogen.sh: Regenerate.
305         
306         * configure.in: 
307         * stepmake/configure.in: 
308         * stepmake/aclocal.m4: Run autoupdate.  Creating ./configure now
309         requires autoconf >= 2.50.
311         * stepmake/autogen.sh: Check for autoconf >= 2.50.
313         * Documentation/user/refman.itely: Bugfix for tablature example.
315         * Documentation/windows/compiling.texi: Update for new and
316         improved setup.
318 2002-06-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
320         * lily/spacing-spanner.cc (find_shortest): make 1/8 configurable:
321         introduce base-shortest-duration
323         * lily/parser.yy (music_output_def_body): don't crash when \tempo
324         in unexpected \midi{} is found.
326 2002-06-13  Jan Nieuwenhuizen  <janneke@gnu.org>
328         * stepmake/GNUmakefile.in: Don't install stepmake.  This breaks
329         the use of make/ly.make for use as an external makefile.  Probably
330         noone except for myself ever used this anyway.
332         * stepmake/stepmake/GNUmakefile (INSTALLATION_DIR): Bugfix: Adapt
333         to new $datadir convention (<package>/<version>).
335 2002-06-13  Han-Wen  <hanwen@cs.uu.nl>
336         
337         * VERSION: 1.5.61 released
338         
339         * Document/user/refman.itely: tablature doc and code updates by
340         Jean-Baptiste Lamy <jiba@tuxfamily.org>
341         
342         * input/template/piano-dynamics.ly: bugfixes.
344         * lily/key-engraver.cc (try_music): read request only once. Don't
345         overwrite lastKeySignature. Call create_key() only once. This
346         fixes a bug with multiple equal key changes on polyphonic staffs.
348 2002-06-12  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
350         * scm/grob-description.scm: Add side-position-interface to TextSpanner
352         * scm/grob-property-description.scm: Document the trill line type.
354 2002-06-12  Jan Nieuwenhuizen  <janneke@gnu.org>
356         * stepmake/stepmake/generic-vars.make: 
357         * make/lilypond-vars.make:
358         * GNUmakefile.in (builddir-setup): New setup for builddir run.
359         Fixes LilyPond run from builddir for --srcdir builds.
361         * Documentation/windows/GNUmakefile (OUT_PROFILES): Bugfix for
362         --srcdir build.
364 2002-06-12  Han-Wen  <hanwen@cs.uu.nl>
366         * scm/grob-description.scm (all-grob-descriptions): add
367         font-family to RehearsalMark
369         * scm/drums.scm: move over definitions from drum-pitch-init.ly
371         * lily/volta-bracket.cc (brew_molecule): bugfix, don't do anything
372         if glyph not set.
374 2002-06-12  Heikki Junes  <heikki.junes@hut.fi>
376         * lilypond-mode.el: Propose saving before applying a command:
377         for saved buffer set default command to LilyPond.
379 2002-06-11  Jan Nieuwenhuizen  <janneke@gnu.org>
381         * buildscripts/mutopia-index.py (headertext_nopics): Add missing
382         variable.
384         * Documentation/windows/lilypond.hint: Renamed (previously setup.hint).
386         * Documentation/windows/lilypond-doc.hint: New file.
388         * GNUmakefile.in: Forward port: Add toplevel target install-html-doc.
389         Bugfixes for --srcdir html-doc build.
390         
391         * make/lilypond-vars.make (LILYPOND_BOOK_INCLUDES): Forward port:
392         Bugfix: Include $(builddir)/mf/out (was $(srcdir)/mf/out.
394 2002-06-10  Han-Wen  <hanwen@cs.uu.nl>
396         * ly/script-init.ly (pralldown): add some scripts.
398         * Documentation/user/refman.itely: many edits.
400 2002-06-09  Han-Wen  <hanwen@cs.uu.nl>
402         * lily/tuplet-bracket.cc (brew_molecule): don't translate in Y
403         direction, this breaks staffline avoidance of the bracket when
404         they're horizontal.
406 2002-06-08  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
408         * scripts/midi2ly.py: Fix handling of -o
410 2002-06-08  Han-Wen  <hanwen@cs.uu.nl>
412         * lily/molecule.cc (translate): set max distance to 100 cm.
414 2002-06-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
416         * VERSION: 1.5.60 released
418         * lily/beam.cc: tremolo fix.
420         * scripts/convert-ly.py:  add tuplet-X-visibility rules.
421         add VerticalExtent -> verticalExtent rules.
423         * lily/axis-group-engraver.cc: consistent case for
424         XxxxVerticalExtent properties.  
426         * Documentation/user/refman.itely (Tuplets): update
427         tuplet-X-visibility properties. 
429         * input/test/defaultbars.ly: Corrected (thanks Mats)
430         
431 2002-06-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
433         * lily/beam.cc (shift_region_to_valid): fix stupido bug. 
435         * buildscripts/lilypond-profile.sh: override settings if
436         LILYPONDPREFIX is set.
438 2002-06-04  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
440         * scripts/ly2dvi.py (non_path_environment): Fix typo
442 2002-06-03  Heikki Junes  <heikki.junes@hut.fi>
444         * lilypond-mode.el: Extend "Quick notes" containing note tuples.
446         * lilypond-font-lock.el: Add fixes and comments to syntax-table.
448 2002-06-03  Han-Wen  <hanwen@cs.uu.nl>
450         * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
451         beam-engraver: use different engraver so we can mix normal and
452         grace beams.
454 2002-06-01  Han-Wen  <hanwen@cs.uu.nl>
456         * lily/beam.cc (shift_region_to_valid): Try to shift positions
457         after slope-damping and concaveness check, so that short-stems are
458         not violated.
460 2002-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
462         * stepmake/aclocal.m4: Fix for ash as /bin/sh.
464 2002-05-31  Han-Wen  <hanwen@cs.uu.nl>
466         * VERSION: 1.5.59 released 
467         
468         * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
469         notice that missing features are exercise for user.
471 2002-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
473         * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
474         (but alas, not partly precomputed) value for current_y when
475         calculating stem length demerits.
476         (calc_stem_y): Temporary precomputed factors fix.
478         * lily/stem.cc (calc_stem_info): Take multiplicity into account
479         for shortest_y too.
481         * input/bugs/melisma-tie-rest.ly: New file.
483 2002-05-30  Han-Wen  <hanwen@cs.uu.nl>
485         * lily/stem.cc (calc_stem_info): remove min_y member, rename
486         stuff.  Remove kneeing stuff.
488         * lily/beam.cc (brew_molecule): remove beam direction. Lots of
489         twiddling
491 2002-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
493         * scm/sketch.scm: 
494         * scm/ps.scm: 
495         * scm/pdftex.scm: 
496         * scm/pdf.scm: 
497         * scm/tex.scm: Add check for Guile-1.4.1.  Guile includes
498         patch-level of version in minor-version string.  Arg.
500 2002-05-29  Han-Wen  <hanwen@cs.uu.nl>
502         * ly/engraver-init.ly (TabStaffContext): 
503         enable TabStaff by default.
505         *  Tablature support by Jean-Baptiste Lamy <jiba@tuxfamily.org>
507 2002-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
509         * config.hh.in: Remove duplicate DIR_DATADIR entry.
511         * aclocal.m4: Regenerate.
512         
513         * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
515 2002-05-25  Heikki Junes  <heikki.junes@hut.fi>
517         * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
519         * lilypond-mode.el: Write notes with fewer keystrokes trough a 
520         "Quick notes"-interface.
522 2002-05-26  Jan Nieuwenhuizen  <janneke@gnu.org>
524         * input/regression/non-empty-text.ly: Update example with outdated
525         comment.
527 2002-05-25  Han-Wen  <hanwen@cs.uu.nl>
529         * scripts/convert-ly.py:  add textNonEmpty rule
531         * lily/text-engraver.cc (create_grobs): remove textNonEmpty
533 2002-05-24  Jan Nieuwenhuizen  <janneke@gnu.org>
535         * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
536         using translate-robust add_molecule instead of add_at_edge.
537         Bugfix for #(lines (finger "" "1")).
539 2002-05-24  Han-Wen  <hanwen@cs.uu.nl>
541         * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
542         tremolo placement.
544 2002-05-22  Han-Wen  <hanwen@cs.uu.nl>
546         * VERSION: 1.5.58
547         
548         * Documentation/user/refman.itely: Bugfix: add node Repeats and
549         MIDI.  Regenerate menu.  Fix @end example.
551         * lily/accidental.cc: Add cautionary-style to interface.
553         * mf/feta-beugel.mf (code): use autometric macros for braces.
554         This fixes input/bugs/braces.
556         * lily/afm.cc (count): return numOfChars, not size of array
557         (always equals 256.)
559         * lily/script.cc (before_line_breaking): postpone setting the
560         X-parent of vertical scripts. This fixes the case of scripts on
561         chords with seconds 
563 2002-05-21  Han-Wen  <hanwen@cs.uu.nl>
565         * scm/grob-description.scm:  fix alignment of barnumber: make sure
566         it doesn't hit the G-clef. 
568         * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
569         startGraceMusic not startGraceContext).
571 2002-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
573         * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
574         found.
576 2002-05-20  Han-Wen  <hanwen@cs.uu.nl>
578         * lily/accidental-engraver.cc: remove old accidental engraver,
579         move new one to accidental-engraver.cc.
581         * lily/local-key-item.cc: remove file
583         * lily/include/local-key-item.hh: remove file
585         * scripts/ly2dvi.py (make_preview): add --preview-resolution
586         option.
588         * lily/accidental.cc (brew_molecule): support for cautionary
589         accidentals. 
591         * lily/note-head.cc (internal_brew_molecule): warn if note head
592         not found.
594         * lily/time-signature.cc (special_time_signature): remove warning
595         about time signature. 
597         * lily/spacing-spanner.cc (musical_column_spacing): Prevent
598         reverse springs by limiting fixed-note space.
600 2002-05-19  Jan Nieuwenhuizen  <janneke@gnu.org>
602         * stepmake/aclocal.m4: Bugfix: complain if program not found.
604         * scripts/update-lily.py (next_version, prev_version, diff_name):
605         New function.  Patches now named name-prev-latest.diff.gz.
606         Bugfix: import shutil.
608 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
610         * input/tutorial/sammartini.ly: fix and document autochange
611         weirdness.
613         * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
614         does produce .pdftex files.
616         * lily/note-collision.cc (check_meshing_chords): move file from
617         collision.cc, implement merged note heads (there you go, Drarn :-)
619         * input/regression/collision-heads.ly: new file
621         * VERSION: 1.5.57 released.
623 2002-05-18  Juergen Reuter  <reuter@ipd.uka.de>
625         * mf/parmesan-heads.mf, scm/grob-description.scm,
626         scm/grob-property-description.scm, scm/interface-description,
627         lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
628         lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
629         lily/include/ligature-engraver.hh,
630         lily/include/ligature-bracket.hh, lily/parser.yy,
631         lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
632         lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
633         lily/ligature-head.cc, lily/ligature-engraver.cc,
634         lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
635         implemented white mensural ligatures (still with a big list of
636         TODOs)
639 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
641         * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
642         Documentation/user/internals.itely.
644         * lily/function-documentation.cc: new file. Infrastructure for
645         self documenting Scheme functions.
647 2002-05-18  Han-Wen  <hanwen@cs.uu.nl>
649         * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
651 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
653         * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
654         and * (as in "([^>]*)?")
656 2002-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
658         * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
659         Add info about CVS.  Stable/development are currently 1.4/1.5,
660         both at lilypond.org.
662         * autogen.sh: Generate.
664         * stepmake/configure:
665         * configure: Regenerate.
666         
667         * stepmake/stepmake/automatically-generated.sub.make: Keep
668         original first line.
670         * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
672         * stepmake/stepmake/generic-targets.make (configure): Generate
673         using autogen.sh.
675         * GNUmakefile.in (SCRIPTS):
676         * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
678         * stepmake/autogen.sh: New file.
680         * configure: Check for g++ >= 2.95.
682         * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers.  GNU
683         c/c++ version checking.
685         * flower/include/string.hh: Typo fix.
687         * lily/include/midi-item.hh: Remove stray i.
689         * Documentation/windows/GNUmakefile: Avoid collapsed directory
690         constructs '//'.
691         
692         * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
693         constructs '//' from arguments.
695 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
697         * scm/lily.scm (ly-load): show SCM filenames if verbose.
699         * lily/lily-guile.cc (init_functions): add ly-verbose function.
701         * lily/main.cc (setup_paths): remove LILYINCLUDE support. 
703         * flower/include/{pointer,tuple}*: removed.
705         * VERSION: released 1.5.56
706         
707         * scm/music-functions.scm (check-start-chords): function to check
708         for chords without \context. Apply automatically from parser.
710 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
712         * lily/bar-line.cc: remove index entries. Texinfo can't handle  :
713         in index entries.
715         * scm/output-lib.scm: fix ez notation stems. 
717         * lily/paper-outputter.cc: various fixes to speed up compilation.
719 2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
721         * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
723 2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
725         * scripts/lilypond-book.py (determine_format): Bugfix: correctly
726         determine latex input.
728         * stepmake/bin/install-sh: Include latest from libtool.
730         * stepmake/configure: 
731         * configure: Regenerate.
733         * config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
734         (USER_CFLAGS): Bugfix, include CPPFLAGS.
736         * configure.in: Use new OPTIONAL/REQUIRED mechanism.
738         * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
739         REQUIRED programs and version.  Try to continue configuring, list
740         missing programs at the end, but don't generate a GNUmakefile if
741         REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
742         Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
743         fancy for some older systems.
745 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
747         * lily/score-engraver.cc (typeset_all): sanity check for items
748         that are Y parent to spanner. 
750         * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
751         pedal spanners.
753 2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
755         * lily/*.cc: remove as many iostream use as possible. 
757         * flower/ : remove text-db, text-stream, data-file.
758         
759 2002-05-15  Han-Wen  <hanwen@cs.uu.nl>
761         * scripts/lilypond-book.py: add --no-music option: strip all blocks.
762         (completize_preamble): don't barf if no preamble present.
763         (do_file): allow extensions on --output
765         * scripts/ly2dvi.py (make_preview): make automatic preview of
766         first system. Small cleanups.
768 2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
770         * scripts/lilypond-book.py (make_pixmap): output png directly.
772         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
773         fonts.dir file.
775         * lily/parser.yy (My_lily_parser): comment out code. (Causes
776         problems  with recent bison releases).
778         * make/lilypond.redhat.spec.in: add pfa fonts to X. 
780 2002-05-07  Heikki Junes <hjunes@cc.hut.fi>
782         * lilypond-font-lock.el: Fixes the order of the note name list.
784 2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
786         * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
787         capability, --verbose option, rlimit hack.
789 2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
791         * lily/piano-pedal-engraver.cc: cleanups.
793         * lily/accidental.cc (after_line_breaking): add break tie
794         reminders.
796         * lily/text-engraver.cc (try_music): don't typeset fingerings
798 2002-05-05  Heikki Junes <hjunes@cc.hut.fi>
800         * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
802 2002-05-04  Han-Wen  <hanwen@cs.uu.nl>
804         * lily/*.cc: change gh_str02scm() to ly_str02scm().
806         * lily/spacing-spanner.cc (note_spacing): Bound
807         shortest-playing-length by the distance to next note. This should
808         fix chord tremolo spacing.
810         * VERSION: 1.5.55 released
812         * lily/stem.cc (off_callback): invisible stem over whole note is
813         centered on note now.
815         * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
816         stem-tremolo is stem now.
818         * input/mozart-hrn*.ly: many corrections. 
820         * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
821         support for dynamic scripts.
823         * lily/accidental-placement.cc (position_accidentals): check for
824         collisions as well: should avoid those heads too.
826         * lily/beam.cc (check_concave): allow undefined gap and
827         threshold. Change the meaning of threshold/gap == 0.0.
828         (check_concave): skip Stolba concaveness check if we have a knee
829         on outer stems.
831 2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
833         * lily/chord-tremolo-engraver.cc (try_music): Handle chord
834         tremolos of dotted duration.
836 2002-05-03  Han-Wen  <hanwen@cs.uu.nl>
838         * mf/feta-klef.mf: more twiddling with G clef. Almost straight
839         downstroke again. Sigh.
841         * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
842         script on note head.
844 2002-05-02  Han-Wen  <hanwen@cs.uu.nl>
846         * lily/slur.cc (add_column): allow slur over rest. 
848 2002-04-27  Han-Wen  <hanwen@cs.uu.nl>
850         * lily/beam.cc: move scoring constants out of code
852 2002-04-25  Han-Wen  <hanwen@cs.uu.nl>
854         * mf/feta-nummer.mf: scalability fixes.
856         * mf/feta-nummer-code.mf: fixes for 5, 8. 
858         * mf/feta-klef.mf: G clef fixes.
860 2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
862         * scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.
864         * scripts/lilypond-book.py: %Newline, rather than glue macros
865         after \end{verbatim}.
867 2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
869         * Documentation/user/lilypond-book.itely: 
870         * scripts/lilypond-book.py: Add options [no]indent, linewidth and
871         noinline.
873         * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
875         * scm/grob-property-description.scm (beam-space): Junk.
877         * lily/beam.cc (space_function): New method.
878         (get_interbeam): Call space-function.
880         * scm/grob-description.scm (Beam): Initialize space-function with
881         Beam::space_function.
883         * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
884         Beam.space-function.  Don't quantise grace beams.
886 2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
888         * VERSION: 1.5.54 released
890         * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
891         bulb. 
893         * Documentation/index.texi: add PDF links.
895         * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
897         * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
898         compare #'glyph as strings. 
900         * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
902         * scripts/ly2dvi.py (setup_environment): fix by Mats.
904         * lily/stem.cc (head_count): Change function name. Change property
905         to #'note-heads i.s.o.  #'heads.
906         (position_noteheads): Kern noteheads for invisible stems.
907         (before_line_breaking): Do position_noteheads() for whole note
908         heads too.
910         * lily/accidental-placement.cc (position_accidentals): First
911         determine refpoints, only then determine extents.  
913 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
915         * lily/accidental-placement.cc (position_accidentals): use all
916         note heads for note head-skyline. 
918         * scripts/lilypond-book.py (re_dict): remove all *? regexps.
920 2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>
922         * Documentation/windows/setup.hint (requires): Add gsview dependency.
924         * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
926         * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
928         * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
930 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
932         * mf/feta-schrift.mf: lighter staccato.
934 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
936         * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
938 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
940         * VERSION: 1.5.53 released
942         * scm/lily.scm (ly-load): use primitive-load for loading.
944         * lily/misc.cc: remove quantise_iv()
946         * lily/*.cc: pass read-only arrays by reference.
947         
948         * lily/grob.cc (common_refpoint_of_array): new function. Try to
949         use common_refpoint_of_{array, list} when possible.
951         * lily/include/accidental-placement.hh: new file.
953         * lily/accidental-placement.cc (alignment_callback): position
954         accidentals in a better way.
956         * lily/skyline.cc: new file. Compute distances for collections of
957         boxes.
959         * lily/include/skyline.hh: new file
961 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
963         * lily/accidental.cc (class Accidental_interface): grob for a
964         single accidental.
966         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
967         of reformatting
969         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
970         together with new accidental-interface. 
972         * lily/include/*.hh: remove spurious set_interface() decls.
974         * lily/key-signature-interface.cc (brew_molecule): add padding for
975         natural signs. Make natural typesetting like the sharp.
976         
978         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
979         is now slightly curved, not straight.
980         
982 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
984         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
986         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
987         more strictly. Use more clever regular expressions. Commented regexps.
989 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
991         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
993 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
995         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
996         to control width of staff symbol in ragged-right mode (by request
997         of Han-Wen)
999         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
1000         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
1001         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
1002         added support for ligature brackets (needed when transcribing
1003         mensural music)
1005 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
1007         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
1008         Fontify notes more strictly.
1010 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
1012         * mf/feta-din-code.mf: dynamic z sign.
1014 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
1016         * lilypond-mode.el: Prevent recoloring strings and comments.
1018         * lilypond-font-lock.el: Handle block comments: block comments
1019         can have also ordinary comments inside.
1020         
1021 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
1023         * lily/stem.cc (get_default_dir): set direction to CENTER if
1024         invisible. Various other fixes to deal with invisible stems and
1025         stem-direction == CENTER.
1027         * lily/rest-collision.cc (do_shift): take direction from note if
1028         not set.
1030         * input/regression/tie-grace.ly: new file.
1032         * lily/tie-engraver.cc (create_grobs): fix tied graces.
1034         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
1035         knee correction. Fixes tight spacing for knees.
1037 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1039         * VERSION: 1.5.52 released
1040         
1041         * lily/*.cc: add some undocced properties.
1042         scm/grob-description.scm: idem.
1044 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
1046         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
1047         multi-measure rests like "R1 *4" and scheme (typically has '#' 
1048         in the beginning). Small fixes. Add few reserved words.
1050 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1052         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
1053         emacs mode.
1055         * Documentation/windows/installing.texi: Suggest gswin32c (console
1056         program) for getting the version.  Layout fixes.
1058 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1060         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
1061         windows viewing commands, remove silly comment about Yap.
1063 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
1064         
1065         * Documentation/topdocs/INSTALL.texi: Describe how to learn
1066         configure to find kpathsea on for example Slackware 8.0.
1068         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
1070         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
1071         by default: avoid "1" over single bar rests.
1073         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
1074         and correct the handling of geometry options.
1076 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1078         * lily/include/grob-interface.hh (ADD_INTERFACE): make
1079         implementation for Class::has_interface automatically. Junk all
1080         other implementations.
1082         * lily/grob.cc (internal_get_grob_property): also typecheck
1083         property reads. Catches even more undocced properties. Bugfixing
1084         left for the uninspired masses.
1086         * lily/beam.cc: remove end_after_line_breaking().
1088         * lily/grob.cc (calculate_dependencies): remove list support for
1089         callbacks.
1091         * lily/font-size-engraver.cc: only do font-interface.
1093 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
1095         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
1096           Add few keywords.
1098 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
1100         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
1101         brackets using arpeggio requests.
1102         
1103         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
1104         molecule-callback to use for drawing the brackets.
1106         * Documentation/user/refman.itely: 
1107         * input/test/chord-bracket.ly: Chord brackets documented
1108         
1109 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
1111         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
1113         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
1115 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1117         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
1118         direction tuplets on beams.
1120 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
1122         * lilypond-indent.el: Bugfix of indentation of final point in buffer
1124 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
1126         * lilypond-mode.el: new command: LilyPond-un-comment-region.
1127         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
1128         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
1129         submenu to "LilyPond"-menu.
1131         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
1132         an interface to play midi.
1134 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1136         * input/regression/script-stack-order.ly: new file.
1138 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
1140         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
1142         * mf/feta-din-code.mf: kerning for dynamics.
1144 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
1146         * input/regression/dynamics-glyphs.ly: new file
1148         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
1150         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
1151         forte f for the 2 number. Some fixes for the other bulbed glyphs.
1153         * Documentation/windows/gs-profile.sh:
1154         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
1155         moved to gs/gsview windows packages.
1157 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
1159         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
1160         finding out the duration. Fixes chord tremolo bug. 
1162         * lily/completion-note-heads-engraver.cc (process_music): Set
1163         correct duration for all requests of the broken notes.
1165         * input/regression/completion-heads.ly: Added example of
1166         Completion_heads_engraver.
1168         * lilypond-mode.el: Added "2Midi" command
1170 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
1172         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
1173         edge-width, edge-height and shorten-pair properties for tuplet
1174         brackets.
1176         * lilypond-indent.el: Support for blinking of matching parentheses
1177         
1178         * lilypond-font-lock.el: Fix fontification of closing > on its own line
1179         
1180         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
1181         cleanups of piano pedal brackets.
1183 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
1185         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
1187 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
1189         * mf/feta-new-code.mf:  new dynamic f sign.
1190         new dynamic m sign.
1192 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
1194         * mf/feta-new-code.mf: new dynamic p sign.
1196 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1198         * lily/note-spacing.cc (stem_dir_correction): only do
1199         beam-correction if a beam is there. 
1201         * lily/stem.cc (duration_log): change from flag_i (); better
1202         naming.
1203         (get_default_stem_end_position): fix dot/flag collision code.
1205 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
1207         * VERSION: release 1.5.50
1209         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
1210         unit spring here. Reduces number of warning messages.
1212         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
1214 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
1216         * scm/generic-property.scm: remove generic-property, property-engraver
1218         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
1220         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
1222         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
1224         * scm/*.scm: remove volta, hairpin and tuplet functions.
1226         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
1227         note column for notes/stems/dots that already have parents. Fixes
1228         nested grace contexts.
1230 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1232         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
1233         get too curved slurs.
1235         * scm/slur.scm (default-slur-extremity-offset-alist) 
1236         (default-phrasing-slur-extremity-offset-alist): Move slur
1237         attachments further away from note-head, vertically.  Also, leave
1238         a horizontal gap between slur and stem end.
1240         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
1242 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
1244         * input/regression/spacing-grace-duration.ly: new file
1246         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
1247         for shortest durations.
1249         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
1250         extent of the mm rest. 
1252         * lily/spacing-spanner.cc (get_duration_space): better spacing for
1253         really short notes.
1255         * lily/tuplet-bracket.cc (make_bracket): new function
1256         (get_x_offset): new function; make tuplet brackets align on stems
1257         if stem has same direction.
1258         (parallel_beam): be anal about matching bracket to tuplet.
1260         * lily/lookup.cc (line): new function Lookup::line(). 
1262         * scm/tex.scm (dashed-line): change -line to -system in names.
1264         * lily/box.cc (add_point): new function.
1266         * flower/include/interval.hh: new function add_point ().
1267         new function widen()
1268         
1269 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1271         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
1273         * scm/grob-property-description.scm (number-threshold): Add
1274         description.
1276         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
1277         rest if #measures > number-threshold.  Use padding (well, fake
1278         using it, anyway).
1280         * scm/font.scm (make-style-sheet): New styles: mark-number,
1281         mark-letter.
1282         (paper20-style-sheet-alist): Add bigger bold fonts.
1284         * lily/mark-engraver.cc (process_music): Use style mark-number or
1285         mark-letter.
1287         * .cvsignore: Ignore all kinds of lilypond input and output.
1289         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
1291 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
1293         * lily/staff-symbol.cc (brew_molecule): make line thickness
1294         adjustable.
1296         * lily/*.cc: replace stafflinethickness by linethickness.
1298 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
1300         * input/regression/beam-concave.ly: Add to-be-considered-concave
1301         beam.
1303         * lily/beam.cc (check_concave): Add check for large gap between an
1304         inner notehead and the line through outer noteheads.
1306         * scm/grob-description.scm (Beam): Add concaveness-gap, default
1307         value 2.0 staff-space.
1308         
1309         * scm/grob-property-description.scm (concaveness-gap): Add
1310         description.
1312         * input/mozart-hrn3-allegro.ly: Fix typo.
1314 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
1316         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
1317         lily/note-head-engraver: improved implementation of roundfilledbox
1318         (according to Han-Wen's request)
1320         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
1321         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
1322         lily/simple-spacer.cc: ragged-right alignment
1324 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
1326         * input/regression/spacing-note-flags.ly: new file
1328         * input/regression/spacing-rest.ly: new file
1330         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
1332         * lily/spacing-spanner.cc (note_spacing): make note spacing after
1333         all grace notes tight (not only the column directly following a
1334         grace note).
1336         * scm/grob-description.scm (all-grob-descriptions): don't make
1337         mm-rests larger than normal.
1339         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
1340         curved. Remove white space at the right of flags.
1342 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1344         * ports/ports.make: Bugfix: ignore CVS directories.
1346         * stepmake/.cvsignore: New file.
1348 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
1350         * lily/note-spacing.cc (stem_dir_correction): don't correct when
1351         there is a flag on the stem.
1353         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
1355         * scm/grob-property-description.scm (measure-length):
1356         measure-length grob property.
1358         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
1359         better spacing for breakable columns when they're juxtaposed: use
1360         measure length if applicable
1362         * lily/timing-engraver.cc (start_translation_timestep): store
1363         measure length in breakable column at start of measure.
1365 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
1367         * ROADMAP: Add description for ports dir, to check email upon
1368         commit.
1370 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
1372         * VERSION: 1.5.48 released
1373         
1374         * lily/multi-measure-rest.cc (symbol_molecule): split off from
1375         brew_molecule()
1376         (set_spacing_rods): Use symbol_molecule() to determine minimum
1377         width
1378         (church_rest): split off from brew_molecule()
1379         (big_rest): split off from brew_molecule(). Construct using
1380         variable shape.
1381         
1382         * mf/feta-eindelijk.mf: junk multi measure rest.
1384 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
1386         * lily/multi-measure-rest.cc (add_column): remove columns property.
1388         * lily/dynamic-engraver.cc (process_music): add more verbose warning
1390         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
1391         3 as test piece.
1393 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
1395         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
1396         keywords covered, dropped some non-keywords, include R- and 128-notes
1398 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
1400         * Code clean-up: Junk multiple implementations of ledger line
1401         creation in note_head, custos, and porrectus.  This is important
1402         since there soon will be some more applications of ledger lines to
1403         come (e.g. ambitus engraver).
1405         * Make thickness of ledger lines adjustable.  This is essential
1406         for mensural notation.
1408         * Fix some bugs in the current ledger_line implementation, most
1409         notably that of the horizontal extent of ledger lines which equals
1410         at least the extent of the metafont ledger_line character, and
1411         which grows(!) if the desired extent shrinks below this limit.
1413         * roundfilledbox: variable blotdiameter
1415 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
1417         * VERSION: 1.5.47 released
1419         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1421         * lily/porrectus.cc:  change line-thickness to thickness, change
1422         stem-direction to direction.
1424         * scm/backend-documentation-lib.scm (check-dangling-properties):
1425         Automatically detect doc'ed properties that are not in an interface
1427         * scm/grob-property-description.scm: property cleanup. Remove many
1428         paper-column props that are non-existent.
1430         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1431         the grob has a molecule-callback.
1433         * lily/*.cc: remove many set_interface() calls, and their
1434         implementations.
1436         * input/regression/spacing-knee.ly: new file
1438         * input/regression/spacing-clef-first-note.ly: new file
1440         * lily/staff-spacing.cc (get_spacing_params): different spacing
1441         for pref matter to note at start of line, halfway during line.
1443         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1444         correction only if stems have same direction (i.e. not for
1445         stem-clef combination).
1446         (stem_dir_correction): maximal correction for knees.
1448         * lily/*.cc: many updates to interface descriptions.
1449         
1450         * lily/grob.cc (internal_set_grob_property): add interface check
1451         for every set_grob_property call
1453         * lily/*.cc: document interface stuff in C++
1454         
1455         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
1457         * lily/volta-bracket.cc: naming: change volta spanner to
1458         volta-bracket.
1460         * input/bugs/*.ly: cleanup, remove lots of files.
1461         
1462         * buildscripts/mf-to-table.py (write_ps_encoding): generate
1463         .encoding file. WARNING: upgrade to pktrace 1.0.3
1465         * mf/feta-toevallig.mf: change PS name for parentheses.
1467 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1469        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1470        also for textheight
1472 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
1474         * lily/scope.cc: remove file .
1476         * lily/include/scope.hh: remove file. Remove Scope class
1478         * VERSION: 1.5.46
1480         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1481         score_forbidden_quants): ): take out of SCM, pass parameters so
1482         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1483         secs).
1484         (calc_stem_y): robustness: take care of last_visible_stem == 0.
1487         * lily/lily-guile.cc (ly_unit): return internal unit.
1489         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
1491         * lily/paper-outputter.cc (output_version): output internal unit
1492         from Paper_outputter
1494         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1496 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1498        * scripts/ly2dvi.py: clean up old .*pk font caching code.
1500        * scm/ps.scm: Use uppercase postscript font names for the standard
1501        TeX fonts.
1503        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1504        Add all available TeX Type1 fonts, including Feta, to the
1505        Ghostscript font path.
1507        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1508        version (affects the FontName) in lilypond.map.
1510        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1511        documentation file to fetaNNlist.ly to avoid name collisions between
1512        lilypond generated .tex file and font .tex macros file.
1515 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
1517         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1518         made mensural longa and (semi-)brevis leaner
1520         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1522         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1523         clean-up: moved bezier shape and slope from porrectus to lookup
1525         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1526         and /usr/share/texmf/fonts
1528         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1530 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
1532         * lily/text-spanner.cc (brew_molecule): add #'thickness
1533         (brew_molecule): add corrections for thickness in molecule padding.
1535         * lily/line-spanner.cc (line_atom): make function private
1537         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1538         discover bounding box. This solves the cropping problem.
1540         * lily/bar-check-iterator.cc (process): Only resynchronize bar
1541         check when it  fails. This fixes the combination of  grace notes
1542         and bar checks.
1544 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
1546         * lily/repeated-music.cc (minimum_start): new Scheme callable function
1547         (first_start): new Scheme callable. This will fix repeated music
1548         starting with grace notes.
1550         * lily/music.cc (start_mom): check start-moment-function grob property.
1552         * VERSION: 1.5.45 released
1554         * input/regression/system-extents.ly: new regression test. Test
1555         System extents. 
1557         * lily/system.cc: rename LineOfScore into System 
1559         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1561         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1562         (ly_get_extent): new Scheme function ly-get-extent
1564         * ps/lilyponddefs.ps: use output-scale for  line-x
1565         definition. 
1567         * scm/ps.scm (font-load-command): 
1568         use output-scale
1570 2002-03-20  Rune Zedeler <rune@zedeler.dk>
1571         
1572         * lily/beaming-info.cc: Stupid typo fixed
1573         
1574         * lily/accidental-engraver.cc: rewrote accidental-routines to get
1575         support for cross-context auto-accidentals.
1576         Now the engraver can stay in Staff-context and see other contexts
1577         from there.
1578         Changed properties: autoAccidentals, autoCautionaries
1580         * lily/translator-group.cc (set_children_property):
1581         Function added recursively setting the same property (deep_copied)
1582         for all children of a Translator_group.
1583         
1584         * ly/property-init.ly: added commands
1585         \pianoAccidentals \voiceAccidentals
1586         \modernVoiceAccidentals \modernVoiceCautionaries
1588         * ly/engraver-init.ly: Correct initialization of new accidentals.
1589         
1590         * scm/translator-property-description.scm: Updated
1591         
1592         * input/regression/accidental-voice.ly: Added
1593         
1594         * Documentation/regression-test.tely: Added new test    
1596 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1598         * VERSION: 1.5.44 released
1600         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1602         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1604         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1605         at 0.4 pt.
1607         * tex/feta*.tex: remove.
1608         
1609         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1610         all software dealing with it.
1612 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1614         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1615         (this fixes pdf output).  Drop awk dependency.
1617         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1618         dimensions (linewidth) are in mm.
1620         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1622         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1624         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1626 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
1628         * VERSION: 1.5.43 released
1630         * scm/beam.scm (beam-dir-majority-median): if majority is
1631         undecided, use median. Removes a forced dir in sarabande.
1633         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1635 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1637         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1638         widths, heights and shortens are now customisable properties.
1640         * scm/grob-description.scm, scm/grob-property-description.scm: New
1641         properties added to PianoPedalBracket, unnecessary
1642         Y-offset-callbacks removed from *Pedal, undocumented properties
1643         fixed.
1645         * Documentation/user/refman.itely: Piano pedal updates.
1647 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1649         * scm/grob-property-description.scm:
1650         * scm/interface-description.scm: Remove old stuff.
1652         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1653         0.48 (previously 0.42).
1654         (Beam): Remove old stuff.
1656         * lily/stem.cc: 
1657         * lily/stem-tremolo.cc: 
1658         * lily/beam.cc: 
1659         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
1660         (previously space-function).
1662         * stepmake/bin/add-html-footer.py: Website title fix.
1664 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1666         * scripts/ly2dvi.py (environment): use new font searching setup.
1668         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1670         * lily/tfm.cc (dimensions): make code dimension independent
1672         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1673         scaling
1675         * tex/lily-ps-defs.tex: scaling for PS points and MM.
1677         * lily/include/dimensions.hh: try MM as internal unit.
1679         * scm/*.scm: remove invoke-dim1
1681 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1683         * GNUmakefile.in (fontpaths): add fontpaths target,
1685         * make/mutopia-targets.make: add PDF rules.
1687         * make/mutopia-rules.make: add pdf rule.
1689         * buildscripts/mutopia-index.py (list_item): add PDF.
1691         * buildscripts/lilypond-profile.sh (TEXMF): typo.
1693         * make/lilypond-vars.make: set TEXMF for the new font setup.
1695 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1697         * VERSION: 1.5.42 released
1698         
1699         * mf/feta-schrift.mf: endless twiddling of Tr.
1701         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1702         endless twiddling with the bulb shape.
1704         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1705         little smaller if there is an accidental.
1707 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1709         * buildscripts/lilypond-profile.sh: 
1711         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1712         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1713         Implement new font installation strategy
1715         * Documentation/misc/fontinstallation (TEXMF): Documentation of
1716         the new font installation strategy.
1718         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1719         for comment-region.
1721         * input/test/staff-size.ly: Simplified using StaffContainer
1723         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1724         lilypond.map file
1726 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1728         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1730         * lily/beam.cc (score_stem_lengths): new quanting stuff
1731         (score_forbidden_quants): Second and third beam quant stuff.
1733 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1735         * lily/beam.cc (least_squares): Remember least-squares-dy for
1736         later use.
1737         (quantise_interval): Don't quant to dy steeper that
1738         least-squares-dy.  Return empty interval if no sane quants found.
1739         (quantise_position): Try quantise_interval until we have
1740         acceptable solution.
1742 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1744         * scm/interface-description.scm (beam-interface): Update.
1746 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1748         * VERSION: 1.5.41 released
1749         
1750         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
1751         optima serifs on top of t, bottom of r.
1753         * mf/feta-bolletjes.mf: make ledger line rounder. 
1755         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1757         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1758         parametrization.
1760 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1762        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1763        well as text pedal indications and a combination of both.  All
1764        pedal indications are horizontally aligned on a line spanner.
1766        * lily/text-spanner.cc: Edge-width property added to use in
1767        bracketed piano pedals. Function setup_sustain_pedal added to set
1768        the dimensions of the brackets. 
1770        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
1771        some of the *Pedal properties tweaked. 
1773        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1774        edge-width (TextSpanner) properties.
1776        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
1778        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1779        fontified identifiers list.
1781        * input/test/pedal.ly: New pedal features added. 
1783        * Documentation/user/refman.itely: New pedal features documented.
1784        
1786 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1788         * lily/include/new-beam.hh: Previously new-beam.hh
1789         * lily/beam.cc: Previously new-beam.cc
1790         (least_squares): Bugfix: don't barf on beams with less than two
1791         visible stems (tremolos).
1793         * scm/beam.scm: 
1794         * scm/grob-description.scm (Beam): Junk old beam stuff.
1795         
1796         
1797 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1799         * VERSION: 1.5.40
1801         * mf/feta-eindelijk.mf: new 8th rest.
1803         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1804         stick out of staffline
1806         * scripts/lilypond-book.py: fixes for texi regular expressions.
1808 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1810         * lily/include/new-beam.hh:
1811         * lily/new-beam.cc: New file.
1813         * flower/include/interval.hh: 
1814         * flower/include/interval.tcc (delta): New method.
1815         (swap): Now public (previously private).
1816         
1817         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1818         1 staff-line-thickness.  Sadly, this makes dy quanting problems
1819         (dy quants allowed should depend on actual left y) more visible.
1821 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1823         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
1825         * scm/grob-property-description.scm (concaveness-threshold): Add
1826         typecheck and description.
1828         * scm/grob-description.scm (Beam): Remove obsolete properties, add
1829         concaveness-threshold (previously concaveness).
1831         * lily/beam.cc (check_concave): Remove choices and debugging
1832         stuff: use best concaveness calculation.
1833         (quantise_dy): Remove choice.  Try to never make a slope steeper
1834         by quantising, but certainly never quantise a slope away.
1835         (check_stem_length_f): Remove choice.  In case of lengthening
1836         alowed, always lengthen to ideal length.
1838         * Documentation/index.texi: Fix FAQ url.
1840         * Documentation/topdocs/INSTALL.texi: Add information about fink,
1841         compile fix and 1.4 specific fix that doesn't hurt 1.5.
1843 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
1845         * VERSION: 1.5.39 released
1847         * lily/simple-spacer.cc (add_rod): rods take precedence over
1848         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1850         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1852         * lily/note-spacing.cc (get_spacing): only insert space for
1853         accidentals if necessary.
1855         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1857         * lily/spacing-spanner.cc (musical_column_spacing): new
1858         function. Have correct spacing from note to end-of-line as well.
1860 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1862        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1864        * darwin.patch: New file.
1866        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1867        code.  Shorten stems by fraction of stems to be shortened.
1869        * lily/stem.cc (get_default_stem_end_position): Shorten only half
1870        of shorten value for boundary cases.
1872        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1873        (Beam): Set beamed-stem-shorten to (1.0 0.5).
1875 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1877        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1879        * scm/grob-description.scm (Beam): Add concaveness.  Replace
1880        Beam::cancel_suspect_slope with Beam::check_concave.
1882        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1883        set slope to horizontal if concaveness > Beam.concaveness.  This
1884        handles cases that kludgy cancel_suspect_slope was meant to catch
1885        very well.
1886        (cancel_suspect_slope): Remove.
1888 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1890         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1891         stemLeftBeamCount and stemRightBeamCount to equal 0.
1892         Fixes [c8 c4 c8]
1893       
1894 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
1896         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1897         fixed spacing for pref matter, if the next column is musical, and
1898         at the same moment.
1900         * lily/note-spacing.cc (stem_dir_correction): Use correct
1901         discretionary for stem-bar spacing.
1903 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
1905         * VERSION: 1.5.38 released 
1907         * lily/grob.cc (warning): Use cause tracking to give more
1908         meaningful errors from the backend. 
1910         * lily/property-iterator.cc (check_grob): Warn if setting grob
1911         property in unknown grob. 
1913         * mf/feta-toevallig.mf: brushed stems for natural sign.
1915         * lily/molecule.cc (align_to): don't translate empty molecule.
1916         (this triggers a very subtle bug in time-signature.)  
1918 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
1920         * lily/spring.cc: remove file.
1922         * input/regression/spacing-stem-bar.ly: new file
1924         * lily/score.cc (run_translator): resurrect point-and-click
1926         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1927         sarabande layout
1929         * lily/spacing-spanner.cc (find_shortest): Shortest note for
1930         spacing is now globally determined, using the most common shortest
1931         note. Notes that are shorter are spaced geometrically, and with
1932         expand hints. This makes spacing more even, and measures that have
1933         very short notes won't be that stretched out.  
1935         * mf/feta-klef.mf: F-clef fixes, documentation on the
1936         shape. (WARNING: font changed.)
1938 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
1940         * lily/simple-spacer.cc (add_columns): support for infinitely
1941         stiff springs.
1943         * lily/staff-spacing.cc (get_spacing_params): space after
1944         prefatory matter is fixed.
1946 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
1948         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1949         barline following an upstem.
1951         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1952         function from next_notes_correction().
1953         (bar_y_positions): idem.
1955 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1957         * input/regression/break.ly (texidoc): bugfix: escape \ in
1958         strings.
1960         * lily/staff-spacing.cc (next_notes_correction): Correct the
1961         spacing of a note following a barline.
1964 2002-03-04  Glen Prideaux
1966         * mf/feta-solfa.mf: Shaped note heads
1968 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
1970         * VERSION: 1.5.37 released
1972         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1973         left-align molecule.
1974         
1975         * lily/break-align-interface.cc (do_alignment): completely
1976         rewritten. Now it does not use Align_interface anymore, but a
1977         separate routine. Like StaffSpacing, it reads space-alist from the
1978         breakable grobs.  This allows you to set spacing using
1979         
1980         \property Staff.Clef \override #'space-alist = '(....stuff....)  
1982         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1983         to Bar_line. Move files around as well.
1985         * lily/time-signature.cc (time_signature): left align time signatures. 
1987         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1988         Corrections of the glyph shape C. Comments added.
1990 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1992         * lily/spacing-spanner.cc: move from third-try.cc; rename
1993         Third_spacing_spanner to Spacing_spanner.
1995         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1996         spacing stuff. Much cleaner now, and we prepare for neat spacing
1997         tricks around bar lines and such.
1999         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
2000         variables with themselves. (Ouch.)
2002         * lily/span-bar.cc (brew_molecule): don't try to span bars that
2003         overlap.
2005 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
2007         * VERSION: 1.5.36
2009         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
2010         ly_dir_p
2012         * lily/music.cc (ly_get_mus_property): typechecking
2013         (ly_set_mus_property): idem
2014         (ly_make_music): idem
2015         (ly_music_name): idem
2017         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
2019         * lily/note-spacing.cc (stem_dir_correction): correction for
2020         same stem notes as well. 
2022         * lily/pitch.cc (pitch_transpose): stricter typechecking
2024         * mf/parmesan*mf: magnification fixes.
2026         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
2028 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2030         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
2031         documenting the font. (Doesn't work for parmesan at the moment)
2033         * Documentation/user/appendices.itely (The Feta font): Add list of
2034         Feta font symbols with names.
2036         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
2037         automatically
2039 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
2041         * lily/translator-group.cc (ly_set_trans_property): typechecking
2042         (ly_get_trans_property): typechecking.
2044         * lily/font-metric.cc (ly_text_dimension): typechecking 
2045         (ly_find_glyph_by_name): idem.
2047         * scm/bass-figure.scm (brew-complete-figure): support for
2048         bracketed numbers.
2049         
2050         * lily/grob.cc (ly_get_paper_var): new function
2052 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2054         * VERSION (PATCH_LEVEL): 1.5.35 released.
2056         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
2057         (bracket): New function.
2059         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
2060         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
2062         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
2063         bugfix.
2065         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
2066         typecheck bugfix. 
2068         * lily/grob.cc (ly_get_grob_property): be anal about types.
2069         (ly_set_grob_property): idem
2071         * lily/figured-bass-engraver.cc (process_music): move molecule
2072         building completely to Scheme
2074         * lily/include/musical-request.hh (class Bass_figure_req): Add
2075         class. 
2077         * lily/parser.yy (bass_figure): add support for space figure.
2079         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
2081         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
2083         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
2084         (ly_align_to_x): new function ly-align-to!
2086         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
2087         function ly-get-font
2089         * mf/feta-nummer.mf: include normal-space dimension. 
2091         * lily/collision.cc (check_meshing_chords): don't merge collisions
2092         with whole notes.
2093         
2094         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
2095         glyph is string.
2097 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
2099         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
2101 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
2103         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
2104         font changed)
2106         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
2107         than mensural chars
2109         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
2110         scm/grob-description.scm: added mensural fermata symbol
2112 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2114         * VERSION: 1.5.34 released.
2116         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
2118         * lily/staff-symbol-referencer.cc (callback): assume that
2119         staff-position is unset in general.
2121         * input/regression/rest-pitch.ly: new file.
2123         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
2124         a4\rest
2126 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2128         * lily/scm-option.cc (set_lily_option): add internal-type-checks
2129         as Scheme option. Run regression test by default with
2130         internal-type-checking.
2132         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
2134         * lily/lily-guile.cc (type_check_assignment): changed functions.
2136         * scm/*description*.scm: be anal about typechecks. Some changes
2137         for internal variable names.
2139 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2141         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
2143 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
2145         * VERSION: 1.5.33 released.
2147         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
2148         flare_path everywhere (c-clef, numbers).        
2150         * lily/bar-number-engraver.cc (process_music): also print bar
2151         number if measure starts with grace note.       
2153         * input/regression/grace-bar-number.ly: new test.
2155 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
2157         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
2158         rest as well.
2160         * scm/music-functions.scm (voicify-music):  split chords into
2161         different voices automatically.
2163         * lily/music.cc (ly_music_list_p): new function
2165         * lily/music-sequence.cc (do_relative_octave): robustification
2167         * scm/music-functions.scm: many utility functions 
2169         * lily/music.cc (ly_set_mus_property): add type checks to the
2170         Scheme property assignment.
2172         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
2173         dvips fixes
2175         * mf/lilypond.map: .map file from Mats' page. 
2177 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
2179         * Some more parmesan related fixes;
2181         * Custos: varying shape (in particular, stem length), depending on the
2182           vertical position of the custos (on staffline / between stafflines);
2184         * Custos: added grob property "neutral-direction" (same semantics as
2185           with stem); introduced new grob property "neutral-position";
2187         * Time-signature: print a warning when resorting to default layout.
2189 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2191         * lily/translator-group.cc (add_fresh_simple_translator): remove
2192         function; initialize() is called through
2193         Translator_group::initialize().
2195         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
2196         for the neighbors of a loose column.
2198         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
2199         position loose columns so that they don't collide.
2201 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2203         * VERSION: 1.5.32 released.
2205         * scm/font.scm: remove font-name symbol.
2207         * mf/GNUmakefile: use pktrace for making PFAs
2209         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
2211         * lily/rest-collision.cc (do_shift): read direction field from
2212         rest-column in case of note-rest collision. This should fix some
2213         problems with rest collisions.
2215 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2217         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
2218         property.
2220         * lily/note-head.cc (brew_ez_molecule): Remove note-character
2221         property. Read pitch directly from #'cause.
2223         * mf/feta-puntje.mf: bugfix
2225 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
2226         
2227         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
2229 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
2231         * Documentation/windows/compiling.texi: Update.
2233         * Documentation/index.texi: Add link to orphaned compiling for
2234         windows page.
2236         * Documentation/footer.html.in: Comment fix.
2238         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
2240 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
2241         
2242         * VERSION: 1.5.31 released
2244         * lily/new-spacing-spanner.cc: remove file.
2246         * lily/third-try.cc (do_measure): only take spacings into account
2247         if they pertain to the column pair under consideration. This fixes
2248         spacing bug when mixing eighths triplets and normal eighths.
2250         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
2251         lines don't take up space anymore. Document why in note-head.cc
2252         comment.
2254 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
2256         * lily/font-interface.cc (get_font): reinstate
2257         #'font-magnification. See input/regression/font-magnification.ly
2258         (get_font): Change the definition of  #'font-name grob property.
2260         * lily/grob.cc (get_uncached_molecule): output origin for grobs
2261         that have a #'cause field.
2263 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2265         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
2267         * mf/GNUmakefile:  remove metapost stuff
2269         * stepmake/aclocal.m4: remove metapost detection stuff.
2271 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
2273         * mf/GNUmakefile (FET_FILES): 
2274         (FONT_FILES): Include parmesan.
2276         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
2277         iso regex, regsub
2279         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
2281         * Documentation/user/refman.itely (Paper size): Quote braces.
2283 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2285         * stepmake/aclocal.m4: fixed bison version check to be more
2286         robust.
2288         * lily/stem.cc (position_noteheads): fix for cluster chords.
2290         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
2292         * python 2.2 support.
2294 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
2296         * VERSION: 1.5.30 released
2298         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
2300         * Documentation/user/refman.itely (Dynamics): add a note about
2301         DynamicLineSpanner.
2303         * scm/grob-description.scm: add a 'translator-type?  object
2304         property, so that \property Foo.Bar =\turnOff doesn't cause
2305         type check warning.
2307         * lily/translator-group.cc (add_fresh_group_translator): make
2308         new add-translator functions to make distinction between fresh and
2309         used group-translators. Fixes problem with scripts on auto-changing voice 
2311         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
2312         add to Score_performer. Fixes bar checks in MIDI
2314         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
2315         heads. Fixes many quirks with ties.
2317         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
2318         in the grob property #'cause, instead of using Grob_info.
2320         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
2321         staff context, fixing dot alignment on collisions.
2323         * lily/beam-engraver.cc (try_music): remove can't find beam start
2324         warning, so that skipTypesetting won't complain.
2326 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2328         * Documentation/user/refman.itely (Paper size): Documentation fix,
2329         papersize
2331         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
2333         * scm/grob-description.scm: \breathe: Use feta font comma by default
2335 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2337         * input/template/piano-dynamics.ly (pedal): Simplified
2339 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
2341         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
2343 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
2345         * lilypond-mode.el (LilyPond-command-query): ignore case.
2347 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2349         * VERSION: 1.5.29 released
2351         * all files: change 2001 to 2002 in headers globally
2353         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
2354         cheese") font. WARNING: fonts changed.
2355         
2356 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
2358         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
2359         
2360         * mf/*.mf: Added some more vaticana/solesmes style font symbols
2361         
2362         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
2364         * mf/*.mf: Fixed a few typos in various .mf files
2366 2002-01-17 Rune Zedeler <rune@zedeler.dk>
2368         * mf/: added macro soft_penstroke
2369         
2370                softened some glyphs
2371                redrawn triangular noteheads
2372                redrawn tab-clef
2373                added classical quarter rest
2374         
2375         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
2377         * lily/bar.cc: Bugfix: repeat dots when even number of staff
2378         lines and staff_space>=2
2380         * lily/rest.cc: Use default rests when current style glyphs not
2381         found - this allows
2382         \property Staff.Rest \override #'style = #'classical
2384 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2386         * input/bugs/first-tie.ly: New file.
2388         * input/bugs/spacing-clash.ly: New file.
2390 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
2392         * po: regenerate.
2394 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
2396         * lilypond-indent.el: New file providing indentation for
2397         parenthesised blocks of lilypond code in Emacs
2398         
2399         * lilypond-font-lock.el: Changes to the syntax table to facilitate
2400         indentation and handle block comments properly. Distinguish
2401         accents from close-brackets in fontification.
2403         * lilypond-mode.el: LilyPond-indent-command set appropriately.
2405 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
2407         * Documentation/windows/installing.texi: 
2408         * Documentation/windows/compiling.texi: Include from 1.4.10.
2410         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
2412         * input/bugs/first-midi-tie.ly: New file.
2414 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
2415         
2416         * VERSION: 1.5.28 released
2418         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2419         illicit beams on [c4 c4] etc.
2421         * lily/bar-check-iterator.cc (Bar_check_iterator): new
2422         file. Make separate iterator for Bar_checks. Bar_check now happen
2423         outside engravers, meaning that you can use them with
2424         skipTypesetting. Associated changes in other files.
2425         
2426         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2427         function
2428         
2429         * lily/spacing-spanner.cc (stem_dir_correction): removed function
2431         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2433         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2435         * lily/stem.cc (set_spacing_hints): removed function
2437         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2438         correction for spacing; now take vertical extents of the stem into
2439         account.  
2441         * lily/third-try.cc: More hacking to get spacing working.
2443         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2444         sits at staff level and creates note spacing objects. Scrap it
2445         again, and document why.
2447         * lily/include/group-interface.hh: rename functions. 
2449 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2451         * stepmake/stepmake/c++-rules.make:
2452         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2454 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2456         * make/lilypond-vars.make: 
2457         * scripts/ly2dvi.py (setup_environment): 
2458         * scripts/lilypond-book.py (setup_environment): Also set tex
2459         memory options.
2461 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2463         * VERSION: 1.5.27 released.
2465         * Documentation/user/refman.itely (Bar numbers): added bar number
2466         documentation.
2468         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2469         again.
2471 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
2473         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2474         spread the last few lines all over the last page of a score.
2476 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
2478         * lily/third-try.cc: 3rd try at revising spacing
2479         engine. Not yet finished.
2481         * lily/paper-column.cc (brew_molecule): print debugging marks on a
2482         paper-column.
2484         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2485         collecting past note heads.
2487         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2488         stuff.
2490         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2491         class. Keep a queue of grobs that are still playing in busyGrobs. 
2493         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2494         function. Use busyGrobs to detect playing notes.
2495         
2496 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2498         * Documentation/topdocs/INSTALL.texi: Added note about broken
2499         python-2.1.  Updated note for Debian's broken (well, broken for
2500         our use anyway) tex configuration.
2501         
2502         * scripts/lilypond-book.py (re_dict): python2.2 fix.
2503         
2504         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
2505         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2506         
2507         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2508         (But left margin of png's still misses a few pixels.  Arg.)
2509         
2510 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
2512         * lilypond-mode.el (LilyPond-command-next-midi): Make
2513         possible to kill midi-process (using "C-c C-m").
2515 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
2517         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2518         Convert strings with dimensions to numbers.
2520         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
2521         as found in stavesFound. 
2523         * lily/bar-number-engraver.cc: remove staff administration. 
2525         * lily/mark-engraver.cc (acknowledge_grob): remove staff
2526         administration. This breaks support for invisible-staff.
2528         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2529         symbols into stavesFound.
2531         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2532         grobs, and put them into columns.
2534         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2535         Engraver_group_engraver as a potential candidate for ack'ing grobs.
2537 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
2539         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2540         midi section in the Emacs-mode, so it is possible to play certain
2541         score in a multiscore lilypond-file.
2542          
2543 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
2544         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2545         (FIXME: not accessible from guile)
2546         
2547         * lily/accidental-engraver.cc: rewrote accidental-routines to get
2548         better support for Kurt Stone's suggestions.
2549         Removed properties: noResetKey, forgetAccidentals, autoReminders,
2550                             lazyKeySignature.
2551         Changed property:   localKeySignature.
2552         Added properties:   extraNatural, autoAccidentals,
2553                             autoCautionaries.
2555         (BUGFIX: broken-tie-support destroyed in 1.5.16)
2556         
2557         * ly/property-init.ly: added commands
2558         \defaultAccidentals \modernAccidentals \modernCautionaries
2559         \noResetKey \forgetAccidentals
2561         * ly/engraver-init.ly: Correct initialization of new accidentals.
2562         
2563         * scm/translator-property-description.scm: The new properties
2564         added.
2565         
2566         * input/: Some examples added, some changed.
2567         
2568         * Documentation/regression-test.tely: Added quick test of new
2569         accidentals.
2571 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2573         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2574         header not found
2576 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2578         * lily/beam.cc (before_line_breaking): Make beams  without stems
2579         or with only one stem disappear.
2581 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2583         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2584         files to have standardised HTML bibliography output. Update build
2585         docs to reflect this.
2587         * lily/include/simple-spacer.hh (struct Simple_spacer): add
2588         active_count_, so that we don't have to look for active springs
2589         anymore.
2591         * scm/interface-description.scm,scm/grob-property-description.scm:
2592         Add 'penalty
2594         * lily/simple-spacer.cc (solve): Handle forced line breaks
2595         here. Fixes problems when combining linebreaks with non-fitting
2596         line configurations
2598 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2600         * 1.4.9.jcn3 forward ports.
2601         
2602         * Really included .cvsignore.
2604         * Included Han-Wen's uu1 windows fixes.
2606         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2608         * Added Cygwin setup.hint
2610         * Removed tex, python wrappers and postinstalls to go with Cywgin's
2611         tetex/texmf, python installations.
2613         * Updated cygwin installer.
2615         * ly2dvi: Don't accept filenames with spaces (+ fix).
2617 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
2619         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2621         * lily/translator-def.cc: Remove manual symbol caching.
2623         * lily/script-column.cc (before_line_breaking): robustness check:
2624         don't crash if no direction set.
2626         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2628         * scripts/pmx2ly.py (Parser.parse_header): more generic header
2629         parsing.
2632 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
2634         * lily/note-head.cc (head_extent): added to compute width without
2635         ledger lines. By default, ledger lines take up width now.
2637         * input/regression/fingering.ly: demonstrate auto fingering.
2638         Horizontal placement is still buggy. 
2639         
2640         * lily/fingering-engraver.cc (class Fingering_engraver):
2641         added. Provides support for horizontal fingering scripts
2643         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2645         * lily/side-position-interface.cc (add_staff_support): add staff
2646         only for Y-axis side positions.
2648         * lily/parser.yy (request_chord): Fix mem leak.
2650         * lily/musical-request.cc (transpose): moved to Music::transpose()
2652         * lily/include/grob-info.hh: Change music pointer to SCM, so we
2653         can store grobs as grob-creation cause as well.
2655         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2656         handle when adding. Use precomputed symbols throughout lily.
2657         
2658         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2659         track of spacing issues.
2661         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2662         to keep track of staff spacing
2664 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
2666         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2667           code clean from conditionals and have a concentrated sets of
2668           compatibility fixes for old guile versions.
2670         * Fixes for guile 1.4, including embedded ps.
2672 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2674         * lily/stanza-number-engraver.cc (process_music): allow pairs as
2675         well for markup texts.
2677         * lily/musical-request.cc (length_mom): kludge for null pointer.
2679         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2681         * scm/lily.scm (sign): bugfix
2683         * CHANGES: Change log instated.
2685         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.