release commit
[lilypond.git] / ChangeLog
blobe78a062a729c5e48c3e720d78af1dd23db482df9
1 2002-06-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3         * VERSION: 1.5.60 released
5         * lily/beam.cc: tremolo fix.
7         * scripts/convert-ly.py:  add tuplet-X-visibility rules.
8         add VerticalExtent -> verticalExtent rules.
10         * lily/axis-group-engraver.cc: consistent case for
11         XxxxVerticalExtent properties.  
13         * Documentation/user/refman.itely (Tuplets): update
14         tuplet-X-visibility properties. 
16         * input/test/defaultbars.ly: Corrected (thanks Mats)
17         
18 2002-06-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
20         * lily/beam.cc (shift_region_to_valid): fix stupido bug. 
22         * buildscripts/lilypond-profile.sh: override settings if
23         LILYPONDPREFIX is set.
25 2002-06-04  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
27         * scripts/ly2dvi.py (non_path_environment): Fix typo
29 2002-06-03  Heikki Junes  <heikki.junes@hut.fi>
31         * lilypond-mode.el: Extend "Quick notes" containing note tuples.
33         * lilypond-font-lock.el: Add fixes and comments to syntax-table.
35 2002-06-03  Han-Wen  <hanwen@cs.uu.nl>
37         * lily/beam-engraver.cc (class Grace_beam_engraver): derive from
38         beam-engraver: use different engraver so we can mix normal and
39         grace beams.
41 2002-06-01  Han-Wen  <hanwen@cs.uu.nl>
43         * lily/beam.cc (shift_region_to_valid): Try to shift positions
44         after slope-damping and concaveness check, so that short-stems are
45         not violated.
47 2002-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
49         * stepmake/aclocal.m4: Fix for ash as /bin/sh.
51 2002-05-31  Han-Wen  <hanwen@cs.uu.nl>
53         * VERSION: 1.5.59 released 
54         
55         * scripts/musedata2ly.py (Parser.parse_note_line): add dots. Add
56         notice that missing features are exercise for user.
58 2002-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
60         * lily/beam.cc (score_stem_lengths): Bugfix for knees: use correct
61         (but alas, not partly precomputed) value for current_y when
62         calculating stem length demerits.
63         (calc_stem_y): Temporary precomputed factors fix.
65         * lily/stem.cc (calc_stem_info): Take multiplicity into account
66         for shortest_y too.
68         * input/bugs/melisma-tie-rest.ly: New file.
70 2002-05-30  Han-Wen  <hanwen@cs.uu.nl>
72         * lily/stem.cc (calc_stem_info): remove min_y member, rename
73         stuff.  Remove kneeing stuff.
75         * lily/beam.cc (brew_molecule): remove beam direction. Lots of
76         twiddling
78 2002-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
80         * scm/sketch.scm: 
81         * scm/ps.scm: 
82         * scm/pdftex.scm: 
83         * scm/pdf.scm: 
84         * scm/tex.scm: Add check for Guile-1.4.1.  Guile includes
85         patch-level of version in minor-version string.  Arg.
87 2002-05-29  Han-Wen  <hanwen@cs.uu.nl>
89         * ly/engraver-init.ly (TabStaffContext): 
90         enable TabStaff by default.
92         *  Tablature support by Jean-Baptiste Lamy <jiba@@tuxfamily.org>
94 2002-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
96         * config.hh.in: Remove duplicate DIR_DATADIR entry.
98         * aclocal.m4: Regenerate.
99         
100         * stepmake/aclocal.m4: Append $FULL_VERSION to datadir.
102 2002-05-25  Heikki Junes  <heikki.junes@hut.fi>
104         * lilypond-mode.el: Added Deutsch notes and fixed "Quick notes".
106         * lilypond-mode.el: Write notes with fewer keystrokes trough a 
107         "Quick notes"-interface.
109 2002-05-26  Jan Nieuwenhuizen  <janneke@gnu.org>
111         * input/regression/non-empty-text.ly: Update example with outdated
112         comment.
114 2002-05-25  Han-Wen  <hanwen@cs.uu.nl>
116         * scripts/convert-ly.py:  add textNonEmpty rule
118         * lily/text-engraver.cc (create_grobs): remove textNonEmpty
120 2002-05-24  Jan Nieuwenhuizen  <janneke@gnu.org>
122         * lily/text-item.cc (markup_text2molecule): Junk ugly lookahead by
123         using translate-robust add_molecule instead of add_at_edge.
124         Bugfix for #(lines (finger "" "1")).
126 2002-05-24  Han-Wen  <hanwen@cs.uu.nl>
128         * lily/stem-tremolo.cc (brew_molecule): clean up and fix stem
129         tremolo placement.
131 2002-05-22  Han-Wen  <hanwen@cs.uu.nl>
133         * VERSION: 1.5.58
134         
135         * Documentation/user/refman.itely: Bugfix: add node Repeats and
136         MIDI.  Regenerate menu.  Fix @end example.
138         * lily/accidental.cc: Add cautionary-style to interface.
140         * mf/feta-beugel.mf (code): use autometric macros for braces.
141         This fixes input/bugs/braces.
143         * lily/afm.cc (count): return numOfChars, not size of array
144         (always equals 256.)
146         * lily/script.cc (before_line_breaking): postpone setting the
147         X-parent of vertical scripts. This fixes the case of scripts on
148         chords with seconds 
150 2002-05-21  Han-Wen  <hanwen@cs.uu.nl>
152         * scm/grob-description.scm:  fix alignment of barnumber: make sure
153         it doesn't hit the G-clef. 
155         * input/mozart-hrn3-defs.ly (startGraceMusic): typo (it's
156         startGraceMusic not startGraceContext).
158 2002-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
160         * stepmake/autogen.sh: Check for autoconf2.13, and abort if not
161         found.
163 2002-05-20  Han-Wen  <hanwen@cs.uu.nl>
165         * lily/accidental-engraver.cc: remove old accidental engraver,
166         move new one to accidental-engraver.cc.
168         * lily/local-key-item.cc: remove file
170         * lily/include/local-key-item.hh: remove file
172         * scripts/ly2dvi.py (make_preview): add --preview-resolution
173         option.
175         * lily/accidental.cc (brew_molecule): support for cautionary
176         accidentals. 
178         * lily/note-head.cc (internal_brew_molecule): warn if note head
179         not found.
181         * lily/time-signature.cc (special_time_signature): remove warning
182         about time signature. 
184         * lily/spacing-spanner.cc (musical_column_spacing): Prevent
185         reverse springs by limiting fixed-note space.
187 2002-05-19  Jan Nieuwenhuizen  <janneke@gnu.org>
189         * stepmake/aclocal.m4: Bugfix: complain if program not found.
191         * scripts/update-lily.py (next_version, prev_version, diff_name):
192         New function.  Patches now named name-prev-latest.diff.gz.
193         Bugfix: import shutil.
195 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
197         * input/tutorial/sammartini.ly: fix and document autochange
198         weirdness.
200         * scm/pdftex.scm: resurrect PDFTeX output. Still doesn't work, but
201         does produce .pdftex files.
203         * lily/note-collision.cc (check_meshing_chords): move file from
204         collision.cc, implement merged note heads (there you go, Drarn :-)
206         * input/regression/collision-heads.ly: new file
208         * VERSION: 1.5.57 released.
210 2002-05-18  Juergen Reuter  <reuter@ipd.uka.de>
212         * mf/parmesan-heads.mf, scm/grob-description.scm,
213         scm/grob-property-description.scm, scm/interface-description,
214         lily/include/my-lily-parser.hh, lily/include/ligature-head.hh,
215         lily/include/mensural-ligature.hh, lily/include/lily-proto.hh,
216         lily/include/ligature-engraver.hh,
217         lily/include/ligature-bracket.hh, lily/parser.yy,
218         lily/ligature-bracket-engraver.cc, lily/mensural-ligature.cc,
219         lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc,
220         lily/ligature-head.cc, lily/ligature-engraver.cc,
221         lily/ligature-bracket.cc, input/test/mensural-ligatures.ly:
222         implemented white mensural ligatures (still with a big list of
223         TODOs)
226 2002-05-19  Han-Wen  <hanwen@cs.uu.nl>
228         * lily/*.cc: use LY_DEFINE everywhere. Move doc strings from
229         Documentation/user/internals.itely.
231         * lily/function-documentation.cc: new file. Infrastructure for
232         self documenting Scheme functions.
234 2002-05-18  Han-Wen  <hanwen@cs.uu.nl>
236         * lily/stem.cc (calc_stem_info): bugfix for less ugly knees.
238 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
240         * scripts/lilypond-book.py (re_dict): fix regexps; don't combine ?
241         and * (as in "([^>]*)?")
243 2002-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
245         * Documentation/topdocs/INSTALL.texi: Update GCC, Flex and GUILE info.
246         Add info about CVS.  Stable/development are currently 1.4/1.5,
247         both at lilypond.org.
249         * autogen.sh: Generate.
251         * stepmake/configure:
252         * configure: Regenerate.
253         
254         * stepmake/stepmake/automatically-generated.sub.make: Keep
255         original first line.
257         * stepmake/stepmake/toplevel-targets.make (autogen.sh): Add rule.
259         * stepmake/stepmake/generic-targets.make (configure): Generate
260         using autogen.sh.
262         * GNUmakefile.in (SCRIPTS):
263         * stepmake/GNUmakefile.in (SCRIPTS): Add autogen.sh
265         * stepmake/autogen.sh: New file.
267         * configure: Check for g++ >= 2.95.
269         * stepmake/aclocal.m4: Fixes for FlexLexer.h, Python headers.  GNU
270         c/c++ version checking.
272         * flower/include/string.hh: Typo fix.
274         * lily/include/midi-item.hh: Remove stray i.
276         * Documentation/windows/GNUmakefile: Avoid collapsed directory
277         constructs '//'.
278         
279         * stepmake/bin/install-dot-exe.sh: Filter collapsed directory
280         constructs '//' from arguments.
282 2002-05-17  Han-Wen  <hanwen@cs.uu.nl>
284         * scm/lily.scm (ly-load): show SCM filenames if verbose.
286         * lily/lily-guile.cc (init_functions): add ly-verbose function.
288         * lily/main.cc (setup_paths): remove LILYINCLUDE support. 
290         * flower/include/{pointer,tuple}*: removed.
292         * VERSION: released 1.5.56
293         
294         * scm/music-functions.scm (check-start-chords): function to check
295         for chords without \context. Apply automatically from parser.
297 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
299         * lily/bar-line.cc: remove index entries. Texinfo can't handle  :
300         in index entries.
302         * scm/output-lib.scm: fix ez notation stems. 
304         * lily/paper-outputter.cc: various fixes to speed up compilation.
306 2002-05-16  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
308         * scripts/lilypond-book.py: Don't import pre for Python >= 2.2
310 2002-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
312         * scripts/lilypond-book.py (determine_format): Bugfix: correctly
313         determine latex input.
315         * stepmake/bin/install-sh: Include latest from libtool.
317         * stepmake/configure: 
318         * configure: Regenerate.
320         * config.make.in: Remove dead variables.  Add OPTIONAL/REQUIRED lists.
321         (USER_CFLAGS): Bugfix, include CPPFLAGS.
323         * configure.in: Use new OPTIONAL/REQUIRED mechanism.
325         * stepmake/aclocal.m4: Add mechanism for checking OPTIONAL or
326         REQUIRED programs and version.  Try to continue configuring, list
327         missing programs at the end, but don't generate a GNUmakefile if
328         REQUIRED programs are missing.  Cleanups, junk obsolete stuff.
329         Fix Cygwin detection, drop '32' suffix.  Hoping this is not too
330         fancy for some older systems.
332 2002-05-16  Han-Wen  <hanwen@cs.uu.nl>
334         * lily/score-engraver.cc (typeset_all): sanity check for items
335         that are Y parent to spanner. 
337         * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
338         pedal spanners.
340 2002-05-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
342         * lily/*.cc: remove as many iostream use as possible. 
344         * flower/ : remove text-db, text-stream, data-file.
345         
346 2002-05-15  Han-Wen  <hanwen@cs.uu.nl>
348         * scripts/lilypond-book.py: add --no-music option: strip all blocks.
349         (completize_preamble): don't barf if no preamble present.
350         (do_file): allow extensions on --output
352         * scripts/ly2dvi.py (make_preview): make automatic preview of
353         first system. Small cleanups.
355 2002-05-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
357         * scripts/lilypond-book.py (make_pixmap): output png directly.
359         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): create and install
360         fonts.dir file.
362         * lily/parser.yy (My_lily_parser): comment out code. (Causes
363         problems  with recent bison releases).
365         * make/lilypond.redhat.spec.in: add pfa fonts to X. 
367 2002-05-07  Heikki Junes <hjunes@cc.hut.fi>
369         * lilypond-font-lock.el: Fixes the order of the note name list.
371 2002-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
373         * scripts/lilypond-book.py: Add html/dtml output, pseudo-filter
374         capability, --verbose option, rlimit hack.
376 2002-05-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
378         * lily/piano-pedal-engraver.cc: cleanups.
380         * lily/accidental.cc (after_line_breaking): add break tie
381         reminders.
383         * lily/text-engraver.cc (try_music): don't typeset fingerings
385 2002-05-05  Heikki Junes <hjunes@cc.hut.fi>
387         * lilypond-font-lock.el: Handle \breve as a note (rest) duration.
389 2002-05-04  Han-Wen  <hanwen@cs.uu.nl>
391         * lily/*.cc: change gh_str02scm() to ly_str02scm().
393         * lily/spacing-spanner.cc (note_spacing): Bound
394         shortest-playing-length by the distance to next note. This should
395         fix chord tremolo spacing.
397         * VERSION: 1.5.55 released
399         * lily/stem.cc (off_callback): invisible stem over whole note is
400         centered on note now.
402         * lily/stem-engraver.cc (acknowledge_grob): X_AXIS Parent of
403         stem-tremolo is stem now.
405         * input/mozart-hrn*.ly: many corrections. 
407         * lily/dynamic-engraver.cc (acknowledge_grob): add Scripts  to
408         support for dynamic scripts.
410         * lily/accidental-placement.cc (position_accidentals): check for
411         collisions as well: should avoid those heads too.
413         * lily/beam.cc (check_concave): allow undefined gap and
414         threshold. Change the meaning of threshold/gap == 0.0.
415         (check_concave): skip Stolba concaveness check if we have a knee
416         on outer stems.
418 2002-05-03  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
420         * lily/chord-tremolo-engraver.cc (try_music): Handle chord
421         tremolos of dotted duration.
423 2002-05-03  Han-Wen  <hanwen@cs.uu.nl>
425         * mf/feta-klef.mf: more twiddling with G clef. Almost straight
426         downstroke again. Sigh.
428         * lily/dynamic-engraver.cc (acknowledge_grob): center dynamic
429         script on note head.
431 2002-05-02  Han-Wen  <hanwen@cs.uu.nl>
433         * lily/slur.cc (add_column): allow slur over rest. 
435 2002-04-27  Han-Wen  <hanwen@cs.uu.nl>
437         * lily/beam.cc: move scoring constants out of code
439 2002-04-25  Han-Wen  <hanwen@cs.uu.nl>
441         * mf/feta-nummer.mf: scalability fixes.
443         * mf/feta-nummer-code.mf: fixes for 5, 8. 
445         * mf/feta-klef.mf: G clef fixes.
447 2002-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
449         * scripts/ly2dvi.py: Mats' fix.  Try to import pre if available.
451         * scripts/lilypond-book.py: %Newline, rather than glue macros
452         after \end{verbatim}.
454 2002-04-24  Jan Nieuwenhuizen  <janneke@gnu.org>
456         * Documentation/user/lilypond-book.itely: 
457         * scripts/lilypond-book.py: Add options [no]indent, linewidth and
458         noinline.
460         * input/mozart-hrn3-defs.ly (startGraceContext): Customize grace init.
462         * scm/grob-property-description.scm (beam-space): Junk.
464         * lily/beam.cc (space_function): New method.
465         (get_interbeam): Call space-function.
467         * scm/grob-description.scm (Beam): Initialize space-function with
468         Beam::space_function.
470         * ly/grace-init.ly (startGraceMusic, stopGraceMusic): Set/revert
471         Beam.space-function.  Don't quantise grace beams.
473 2002-04-23  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
475         * VERSION: 1.5.54 released
477         * mf/feta-nummer-code.mf (code): tweaks for three, fixes for 6
478         bulb. 
480         * Documentation/index.texi: add PDF links.
482         * Documentation/user/GNUmakefile (PDF_FILES): add PDF files to website.
484         * lily/system-start-delimiter-engraver.cc (acknowledge_grob):
485         compare #'glyph as strings. 
487         * scripts/lilypond-book.py: fix by Mats. Try to import pre if available.
489         * scripts/ly2dvi.py (setup_environment): fix by Mats.
491         * lily/stem.cc (head_count): Change function name. Change property
492         to #'note-heads i.s.o.  #'heads.
493         (position_noteheads): Kern noteheads for invisible stems.
494         (before_line_breaking): Do position_noteheads() for whole note
495         heads too.
497         * lily/accidental-placement.cc (position_accidentals): First
498         determine refpoints, only then determine extents.  
500 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
502         * lily/accidental-placement.cc (position_accidentals): use all
503         note heads for note head-skyline. 
505         * scripts/lilypond-book.py (re_dict): remove all *? regexps.
507 2002-04-22  Jan Nieuwenhuizen  <janneke@gnu.org>
509         * Documentation/windows/setup.hint (requires): Add gsview dependency.
511         * scripts/lilypond-book.py (re_dict): Fix for python 2.x.
513         * lilypond-mode.el (LilyPond-xdvi-command): Default to plain xdvi.
515         * input/mozart-hrn3-allegro.ly: Bugfix: include defs.
517 2002-04-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
519         * mf/feta-schrift.mf: lighter staccato.
521 2002-04-22  Han-Wen  <hanwen@cs.uu.nl>
523         * mf/feta-nummer-code.mf (code): fixes for 3 glyph.
525 2002-04-21  Han-Wen  <hanwen@cs.uu.nl>
527         * VERSION: 1.5.53 released
529         * scm/lily.scm (ly-load): use primitive-load for loading.
531         * lily/misc.cc: remove quantise_iv()
533         * lily/*.cc: pass read-only arrays by reference.
534         
535         * lily/grob.cc (common_refpoint_of_array): new function. Try to
536         use common_refpoint_of_{array, list} when possible.
538         * lily/include/accidental-placement.hh: new file.
540         * lily/accidental-placement.cc (alignment_callback): position
541         accidentals in a better way.
543         * lily/skyline.cc: new file. Compute distances for collections of
544         boxes.
546         * lily/include/skyline.hh: new file
548 2002-04-20  Han-Wen  <hanwen@cs.uu.nl>
550         * lily/accidental.cc (class Accidental_interface): grob for a
551         single accidental.
553         * lily/accidental-engraver.cc (number_accidentals): Cleanups. Lots
554         of reformatting
556         * lily/new-accidental-engraver.cc (acknowledge_grob): Work
557         together with new accidental-interface. 
559         * lily/include/*.hh: remove spurious set_interface() decls.
561         * lily/key-signature-interface.cc (brew_molecule): add padding for
562         natural signs. Make natural typesetting like the sharp.
563         
565         * mf/feta-klef.mf: rewrote portion of the G-clef code. Downstroke
566         is now slightly curved, not straight.
567         
569 2002-04-18  Heikki Junes <hjunes@cc.hut.fi>
571         * lilypond-mode.el: Toggles font-lock-multiline (Emacs 21.1 or newer).
573         * lilypond-font-lock.el: Handles multiline-strings. Fontifies notes 
574         more strictly. Use more clever regular expressions. Commented regexps.
576 2002-04-16  Heikki Junes <hjunes@cc.hut.fi>
578         * lilypond-mode.el: "C-c f" does font-lock-fontify-buffer.
580 2002-04-15  Juergen Reuter  <reuter@ipd.uka.de>
582         * scm/grob-description.scm, lily/staff-symbol.cc: added properties
583         to control width of staff symbol in ragged-right mode (by request
584         of Han-Wen)
586         * ly/engraver-init.ly, lily/include/my-lily-parser.hh,
587         lily/include/ligature-bracket.hh, lily/lexer.ll, lily/parser.yy,
588         lily/ligature-bracket.cc, lily/ligature-bracket-engraver.cc:
589         added support for ligature brackets (needed when transcribing
590         mensural music)
592 2002-04-15  Heikki Junes <hjunes@cc.hut.fi>
594         * lilypond-font-lock.el: Handle scheme-slurs up to seventh level.
595         Fontify notes more strictly.
597 2002-04-15  Han-Wen  <hanwen@cs.uu.nl>
599         * mf/feta-din-code.mf: dynamic z sign.
601 2002-04-13  Heikki Junes <hjunes@cc.hut.fi>
603         * lilypond-mode.el: Prevent recoloring strings and comments.
605         * lilypond-font-lock.el: Handle block comments: block comments
606         can have also ordinary comments inside.
607         
608 2002-04-13  Han-Wen  <hanwen@cs.uu.nl>
610         * lily/stem.cc (get_default_dir): set direction to CENTER if
611         invisible. Various other fixes to deal with invisible stems and
612         stem-direction == CENTER.
614         * lily/rest-collision.cc (do_shift): take direction from note if
615         not set.
617         * input/regression/tie-grace.ly: new file.
619         * lily/tie-engraver.cc (create_grobs): fix tied graces.
621         * lily/note-spacing.cc (stem_dir_correction): set fixed space for
622         knee correction. Fixes tight spacing for knees.
624 2002-04-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
626         * VERSION: 1.5.52 released
627         
628         * lily/*.cc: add some undocced properties.
629         scm/grob-description.scm: idem.
631 2002-04-12  Heikki Junes <hjunes@cc.hut.fi>
633         * lilypond-font-lock.el: Handle slurs \( and \), numbers,
634         multi-measure rests like "R1 *4" and scheme (typically has '#' 
635         in the beginning). Small fixes. Add few reserved words.
637 2002-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
639         * Documentation/topdocs/INSTALL.texi: Updates for MacOS X and
640         emacs mode.
642         * Documentation/windows/installing.texi: Suggest gswin32c (console
643         program) for getting the version.  Layout fixes.
645 2002-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
647         * Documentation/user/tutorial.itely (Running LilyPond):  Separate
648         windows viewing commands, remove silly comment about Yap.
650 2002-04-10  Mats Bengtsson  <matsb@s3.kth.se>
651         
652         * Documentation/topdocs/INSTALL.texi: Describe how to learn
653         configure to find kpathsea on for example Slackware 8.0.
655         * scripts/ly2dvi.py (non_path_environment): Set $TEXMF correctly.
657         * scm/grob-description.scm (MultiMeasureRest): number-threshold=1
658         by default: avoid "1" over single bar rests.
660         * scripts/lilypond-book.py (LatexPaper.set_geo_option): Simplify
661         and correct the handling of geometry options.
663 2002-04-10  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
665         * lily/include/grob-interface.hh (ADD_INTERFACE): make
666         implementation for Class::has_interface automatically. Junk all
667         other implementations.
669         * lily/grob.cc (internal_get_grob_property): also typecheck
670         property reads. Catches even more undocced properties. Bugfixing
671         left for the uninspired masses.
673         * lily/beam.cc: remove end_after_line_breaking().
675         * lily/grob.cc (calculate_dependencies): remove list support for
676         callbacks.
678         * lily/font-size-engraver.cc: only do font-interface.
680 2002-04-10  Heikki Junes <hjunes@cc.hut.fi>
682         * lilypond-font-lock.el: Handle notes with cautionary accidentals.
683           Add few keywords.
685 2002-04-09 Chris Jackson <chris@fluffhouse.org.uk>
687         * lily/arpeggio.cc: New function brew_chord_bracket to draw chord
688         brackets using arpeggio requests.
689         
690         * ly/property-init.ly: Shorthand \arpeggioBracket defined as the
691         molecule-callback to use for drawing the brackets.
693         * Documentation/user/refman.itely: 
694         * input/test/chord-bracket.ly: Chord brackets documented
695         
696 2002-04-10  Han-Wen  <hanwen@cs.uu.nl>
698         * mf/feta-din-code.mf: tweaks for p, s. New dynamic r sign. 
700         * mf/feta-eindelijk.mf: tweak for eighth rest: move bulb up.
702 2002-04-09  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
704         * lily/tuplet-bracket.cc (after_line_breaking): bugfix for forced
705         direction tuplets on beams.
707 2002-04-08  Chris Jackson <chris@fluffhouse.org.uk>
709         * lilypond-indent.el: Bugfix of indentation of final point in buffer
711 2002-04-09  Heikki Junes <hjunes@cc.hut.fi>
713         * lilypond-mode.el: new command: LilyPond-un-comment-region.
714         Added 2Midi to "Command"-menu. Inspired by latex.el and tex.el: 
715         separate "Command"-menu and "LilyPond"-menu. Added "Miscellanous"-
716         submenu to "LilyPond"-menu.
718         * lilypond-mode.el: Added "Midi all" to "Command"-menu, i.e.,
719         an interface to play midi.
721 2002-04-08  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
723         * input/regression/script-stack-order.ly: new file.
725 2002-04-08  Han-Wen  <hanwen@cs.uu.nl>
727         * VERSION (MY_PATCH_LEVEL): Release 1.5.51.
729         * mf/feta-din-code.mf: kerning for dynamics.
731 2002-04-07  Han-Wen  <hanwen@cs.uu.nl>
733         * input/regression/dynamics-glyphs.ly: new file
735         * mf/feta-din-code.mf: dynamic tweaks. New dynamic s.
737         * mf/feta-nummer-code.mf: another bulb routine: mimic the bulb of
738         forte f for the 2 number. Some fixes for the other bulbed glyphs.
740         * Documentation/windows/gs-profile.sh:
741         * Documentation/windows/gsview-profile.sh: Remove.  Functionality
742         moved to gs/gsview windows packages.
744 2002-04-06  Mats Bengtsson  <matsb@s3.kth.se>
746         * lily/stem-engraver.cc (acknowledge_grob): Revert to old way of
747         finding out the duration. Fixes chord tremolo bug. 
749         * lily/completion-note-heads-engraver.cc (process_music): Set
750         correct duration for all requests of the broken notes.
752         * input/regression/completion-heads.ly: Added example of
753         Completion_heads_engraver.
755         * lilypond-mode.el: Added "2Midi" command
757 2002-04-06  Chris Jackson <chris@fluffhouse.org.uk>
759         * lily/tuplet-bracket.cc, scm/grob-description.scm: New
760         edge-width, edge-height and shorten-pair properties for tuplet
761         brackets.
763         * lilypond-indent.el: Support for blinking of matching parentheses
764         
765         * lilypond-font-lock.el: Fix fontification of closing > on its own line
766         
767         * lily/piano-pedal-engraver.cc, lily/text-spanner.cc: Fixes and
768         cleanups of piano pedal brackets.
770 2002-04-05  Han-Wen  <hanwen@cs.uu.nl>
772         * mf/cmbase.mf: remove file. -- do without s, r and z signs for now.
774 2002-04-04  Han-Wen  <hanwen@cs.uu.nl>
776         * mf/feta-new-code.mf:  new dynamic f sign.
777         new dynamic m sign.
779 2002-04-03  Han-Wen  <hanwen@cs.uu.nl>
781         * mf/feta-new-code.mf: new dynamic p sign.
783 2002-04-02  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
785         * lily/note-spacing.cc (stem_dir_correction): only do
786         beam-correction if a beam is there. 
788         * lily/stem.cc (duration_log): change from flag_i (); better
789         naming.
790         (get_default_stem_end_position): fix dot/flag collision code.
792 2002-04-02  Han-Wen  <hanwen@cs.uu.nl>
794         * VERSION: release 1.5.50
796         * lily/spaceable-grob.cc (add_spring): change incorrect spring to
797         unit spring here. Reduces number of warning messages.
799         * lily/auto-beam-engraver.cc: change noAutoBeaming to autoBeaming.
801 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
803         * scm/generic-property.scm: remove generic-property, property-engraver
805         * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
807         * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
809         * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
811         * scm/*.scm: remove volta, hairpin and tuplet functions.
813         * lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
814         note column for notes/stems/dots that already have parents. Fixes
815         nested grace contexts.
817 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
819         * input/mozart-hrn-3.ly: Tweak Slur.beautiful, so that we don't
820         get too curved slurs.
822         * scm/slur.scm (default-slur-extremity-offset-alist) 
823         (default-phrasing-slur-extremity-offset-alist): Move slur
824         attachments further away from note-head, vertically.  Also, leave
825         a horizontal gap between slur and stem end.
827         * lily/beam.cc (get_interbeam): Bugfix: don't look in empty list.
829 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
831         * input/regression/spacing-grace-duration.ly: new file
833         * lily/spacing-engraver.cc (acknowledge_grob): ignore grace notes
834         for shortest durations.
836         * lily/multi-measure-rest.cc (set_spacing_rods): tune rods to the
837         extent of the mm rest. 
839         * lily/spacing-spanner.cc (get_duration_space): better spacing for
840         really short notes.
842         * lily/tuplet-bracket.cc (make_bracket): new function
843         (get_x_offset): new function; make tuplet brackets align on stems
844         if stem has same direction.
845         (parallel_beam): be anal about matching bracket to tuplet.
847         * lily/lookup.cc (line): new function Lookup::line(). 
849         * scm/tex.scm (dashed-line): change -line to -system in names.
851         * lily/box.cc (add_point): new function.
853         * flower/include/interval.hh: new function add_point ().
854         new function widen()
855         
856 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
858         * input/mozart-hrn-3.ly: Mimic Breitkopf fonts and padding.
860         * scm/grob-property-description.scm (number-threshold): Add
861         description.
863         * lily/multi-measure-rest.cc (brew_molecule): Only put number over
864         rest if #measures > number-threshold.  Use padding (well, fake
865         using it, anyway).
867         * scm/font.scm (make-style-sheet): New styles: mark-number,
868         mark-letter.
869         (paper20-style-sheet-alist): Add bigger bold fonts.
871         * lily/mark-engraver.cc (process_music): Use style mark-number or
872         mark-letter.
874         * .cvsignore: Ignore all kinds of lilypond input and output.
876         * lily/beam.cc (ADD_INTERFACE): Add concaveness-gap.
878 2002-04-01  Han-Wen  <hanwen@cs.uu.nl>
880         * lily/staff-symbol.cc (brew_molecule): make line thickness
881         adjustable.
883         * lily/*.cc: replace stafflinethickness by linethickness.
885 2002-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
887         * input/regression/beam-concave.ly: Add to-be-considered-concave
888         beam.
890         * lily/beam.cc (check_concave): Add check for large gap between an
891         inner notehead and the line through outer noteheads.
893         * scm/grob-description.scm (Beam): Add concaveness-gap, default
894         value 2.0 staff-space.
895         
896         * scm/grob-property-description.scm (concaveness-gap): Add
897         description.
899         * input/mozart-hrn3-allegro.ly: Fix typo.
901 2002-03-31  Juergen Reuter  <reuter@ipd.uka.de>
903         * scm/ps.scm, ps/music-drawing-routines.ps, lily/lookup.cc,
904         lily/note-head-engraver: improved implementation of roundfilledbox
905         (according to Han-Wen's request)
907         * lily/include/spacing-spanner.hh, lily/spacing-spanner.cc,
908         lily/gourlay-breaking.cc, lily/staff-symbol.cc,
909         lily/simple-spacer.cc: ragged-right alignment
911 2002-03-29  Han-Wen  <hanwen@cs.uu.nl>
913         * input/regression/spacing-note-flags.ly: new file
915         * input/regression/spacing-rest.ly: new file
917         * mf/feta-eindelijk.mf: make bbox of quarter rest tighter.
919         * lily/spacing-spanner.cc (note_spacing): make note spacing after
920         all grace notes tight (not only the column directly following a
921         grace note).
923         * scm/grob-description.scm (all-grob-descriptions): don't make
924         mm-rests larger than normal.
926         * mf/feta-banier.mf: make upflag narrower. Make end of flag more
927         curved. Remove white space at the right of flags.
929 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
931         * ports/ports.make: Bugfix: ignore CVS directories.
933         * stepmake/.cvsignore: New file.
935 2002-03-28  Han-Wen  <hanwen@cs.uu.nl>
937         * lily/note-spacing.cc (stem_dir_correction): don't correct when
938         there is a flag on the stem.
940         * lily/multi-measure-rest.cc (brew_molecule): variable width molecule.
942         * scm/grob-property-description.scm (measure-length):
943         measure-length grob property.
945         * lily/spacing-spanner.cc (standard_breakable_column_spacing):
946         better spacing for breakable columns when they're juxtaposed: use
947         measure length if applicable
949         * lily/timing-engraver.cc (start_translation_timestep): store
950         measure length in breakable column at start of measure.
952 2002-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
954         * ROADMAP: Add description for ports dir, to check email upon
955         commit.
957 2002-03-27  Han-Wen  <hanwen@cs.uu.nl>
959         * VERSION: 1.5.48 released
960         
961         * lily/multi-measure-rest.cc (symbol_molecule): split off from
962         brew_molecule()
963         (set_spacing_rods): Use symbol_molecule() to determine minimum
964         width
965         (church_rest): split off from brew_molecule()
966         (big_rest): split off from brew_molecule(). Construct using
967         variable shape.
968         
969         * mf/feta-eindelijk.mf: junk multi measure rest.
971 2002-03-26  Han-Wen  <hanwen@cs.uu.nl>
973         * lily/multi-measure-rest.cc (add_column): remove columns property.
975         * lily/dynamic-engraver.cc (process_music): add more verbose warning
977         * input/mozart-hrn3-romanze.ly (romanze): add mozart horn concerto
978         3 as test piece.
980 2002-03-26  Heikki Junes <hjunes@cc.hut.fi>
982         * lilypond-font-lock.el (LilyPond-font-lock-keywords): most new
983         keywords covered, dropped some non-keywords, include R- and 128-notes
985 2002-03-25 Juergen Reuter <reuter@ipd.uka.de>
987         * Code clean-up: Junk multiple implementations of ledger line
988         creation in note_head, custos, and porrectus.  This is important
989         since there soon will be some more applications of ledger lines to
990         come (e.g. ambitus engraver).
992         * Make thickness of ledger lines adjustable.  This is essential
993         for mensural notation.
995         * Fix some bugs in the current ledger_line implementation, most
996         notably that of the horizontal extent of ledger lines which equals
997         at least the extent of the metafont ledger_line character, and
998         which grows(!) if the desired extent shrinks below this limit.
1000         * roundfilledbox: variable blotdiameter
1002 2002-03-24  Han-Wen  <hanwen@cs.uu.nl>
1004         * VERSION: 1.5.47 released
1006         * lily/line-spanner.cc (line_atom): change line-thickness to thickness
1008         * lily/porrectus.cc:  change line-thickness to thickness, change
1009         stem-direction to direction.
1011         * scm/backend-documentation-lib.scm (check-dangling-properties):
1012         Automatically detect doc'ed properties that are not in an interface
1014         * scm/grob-property-description.scm: property cleanup. Remove many
1015         paper-column props that are non-existent.
1017         * lily/grob.cc (Grob): only use molecule_extent_proc as default if
1018         the grob has a molecule-callback.
1020         * lily/*.cc: remove many set_interface() calls, and their
1021         implementations.
1023         * input/regression/spacing-knee.ly: new file
1025         * input/regression/spacing-clef-first-note.ly: new file
1027         * lily/staff-spacing.cc (get_spacing_params): different spacing
1028         for pref matter to note at start of line, halfway during line.
1030         * lily/note-spacing.cc (stem_dir_correction): apply 2nd stem direction
1031         correction only if stems have same direction (i.e. not for
1032         stem-clef combination).
1033         (stem_dir_correction): maximal correction for knees.
1035         * lily/*.cc: many updates to interface descriptions.
1036         
1037         * lily/grob.cc (internal_set_grob_property): add interface check
1038         for every set_grob_property call
1040         * lily/*.cc: document interface stuff in C++
1041         
1042         * lily/grob-interface.cc: new file. Add grob interfaces from C++. 
1044         * lily/volta-bracket.cc: naming: change volta spanner to
1045         volta-bracket.
1047         * input/bugs/*.ly: cleanup, remove lots of files.
1048         
1049         * buildscripts/mf-to-table.py (write_ps_encoding): generate
1050         .encoding file. WARNING: upgrade to pktrace 1.0.3
1052         * mf/feta-toevallig.mf: change PS name for parentheses.
1054 2002-03-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1056        * scripts/ly2dvi.py (ly_paper_to_latexpaper): Use the correct unit
1057        also for textheight
1059 2002-03-23  Han-Wen  <hanwen@cs.uu.nl>
1061         * lily/scope.cc: remove file .
1063         * lily/include/scope.hh: remove file. Remove Scope class
1065         * VERSION: 1.5.46
1067         * lily/beam.cc (score_slopes_dy, score_stem_lengths,
1068         score_forbidden_quants): ): take out of SCM, pass parameters so
1069         grob props are read only once. (wtk1-fugue2 from 31 sec to 14
1070         secs).
1071         (calc_stem_y): robustness: take care of last_visible_stem == 0.
1074         * lily/lily-guile.cc (ly_unit): return internal unit.
1076         * scm/tex.scm (header-end): insert scaling factor, using ly-unit 
1078         * lily/paper-outputter.cc (output_version): output internal unit
1079         from Paper_outputter
1081         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1083 2002-03-22  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1085        * scripts/ly2dvi.py: clean up old .*pk font caching code.
1087        * scm/ps.scm: Use uppercase postscript font names for the standard
1088        TeX fonts.
1090        * scripts/ly2dvi.py, buildscripts/lilypond-{login,profile}.sh, :
1091        Add all available TeX Type1 fonts, including Feta, to the
1092        Ghostscript font path.
1094        * Documentation/topdocs/INSTALL.texi (Top): Add required pktrace
1095        version (affects the FontName) in lilypond.map.
1097        * mf/GNUmakefile, Documentation/user/appendices.itely: Rename font
1098        documentation file to fetaNNlist.ly to avoid name collisions between
1099        lilypond generated .tex file and font .tex macros file.
1102 2002-03-22  Juergen Reuter <reuter@ipd.uka.de>
1104         * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: added maxima rests;
1105         made mensural longa and (semi-)brevis leaner
1107         * mf/parmesan-clefs.mf, scm/clef.scm: enhanced petrucci c clef
1109         * lily/{{lookup,porrectus}.cc,include/{lookup,porrectus}.hh}: code
1110         clean-up: moved bezier shape and slope from porrectus to lookup
1112         * buildscripts/clean-fonts.sh: added search paths /var/cache/fonts
1113         and /usr/share/texmf/fonts
1115         * scripts/ly2dvi.py: Read unit from paper vars (43.jcn3).
1117 2002-03-22  Han-Wen  <hanwen@cs.uu.nl>
1119         * lily/text-spanner.cc (brew_molecule): add #'thickness
1120         (brew_molecule): add corrections for thickness in molecule padding.
1122         * lily/line-spanner.cc (line_atom): make function private
1124         * scripts/lilypond-book.py (get_bbox): Use GS -sDEVICE=bbox to
1125         discover bounding box. This solves the cropping problem.
1127         * lily/bar-check-iterator.cc (process): Only resynchronize bar
1128         check when it  fails. This fixes the combination of  grace notes
1129         and bar checks.
1131 2002-03-21  Han-Wen  <hanwen@cs.uu.nl>
1133         * lily/repeated-music.cc (minimum_start): new Scheme callable function
1134         (first_start): new Scheme callable. This will fix repeated music
1135         starting with grace notes.
1137         * lily/music.cc (start_mom): check start-moment-function grob property.
1139         * VERSION: 1.5.45 released
1141         * input/regression/system-extents.ly: new regression test. Test
1142         System extents. 
1144         * lily/system.cc: rename LineOfScore into System 
1146         * lily/molecule.cc (ly_add_molecule): new Scheme ly-add-molecule.
1148         * lily/grob.cc (ly_get_parent): new Scheme function ly-get-parent.
1149         (ly_get_extent): new Scheme function ly-get-extent
1151         * ps/lilyponddefs.ps: use output-scale for  line-x
1152         definition. 
1154         * scm/ps.scm (font-load-command): 
1155         use output-scale
1157 2002-03-20  Rune Zedeler <rune@zedeler.dk>
1158         
1159         * lily/beaming-info.cc: Stupid typo fixed
1160         
1161         * lily/accidental-engraver.cc: rewrote accidental-routines to get
1162         support for cross-context auto-accidentals.
1163         Now the engraver can stay in Staff-context and see other contexts
1164         from there.
1165         Changed properties: autoAccidentals, autoCautionaries
1167         * lily/translator-group.cc (set_children_property):
1168         Function added recursively setting the same property (deep_copied)
1169         for all children of a Translator_group.
1170         
1171         * ly/property-init.ly: added commands
1172         \pianoAccidentals \voiceAccidentals
1173         \modernVoiceAccidentals \modernVoiceCautionaries
1175         * ly/engraver-init.ly: Correct initialization of new accidentals.
1176         
1177         * scm/translator-property-description.scm: Updated
1178         
1179         * input/regression/accidental-voice.ly: Added
1180         
1181         * Documentation/regression-test.tely: Added new test    
1183 2002-03-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1185         * VERSION: 1.5.44 released
1187         * lily/slur.cc (set_extremities): robustness fixes for #'attachment.
1189         * scripts/lilypond-book.py (bounding_box_dimensions): bugfix.
1191         * ly/params-init.ly (blotdiameter): use unit for blotdiameter, set
1192         at 0.4 pt.
1194         * tex/feta*.tex: remove.
1195         
1196         * stepmake/aclocal.m4: remove stepmake symlink. It confuses almost
1197         all software dealing with it.
1199 2002-03-20  Jan Nieuwenhuizen  <janneke@gnu.org>
1201         * mf/GNUmakefile (lilypond.map): Don't prepend TeX to font name
1202         (this fixes pdf output).  Drop awk dependency.
1204         * scripts/ly2dvi.py (ly_paper_to_latexpaper): Assume LilyPond's
1205         dimensions (linewidth) are in mm.
1207         * mf/GNUmakefile (depth): Always allow manual access to pfa target.
1209         * tex/lily-ps-defs.tex: scaletounit using PT/IN==72.
1211         * lily/slur.cc (get_attachment): Bugfix: correct for stem thickness.
1213 2002-03-19  Han-Wen  <hanwen@cs.uu.nl>
1215         * VERSION: 1.5.43 released
1217         * scm/beam.scm (beam-dir-majority-median): if majority is
1218         undecided, use median. Removes a forced dir in sarabande.
1220         * mf/feta-schrift.mf: Trill fixes, Vee fixes (upbow, ltoe, rtoe)
1222 2002-03-18 Chris Jackson <chris@fluffhouse.org.uk>
1224         * lily/text-spanner.cc, lily/piano-pedal-engraver.cc: Cleanups. Edge
1225         widths, heights and shortens are now customisable properties.
1227         * scm/grob-description.scm, scm/grob-property-description.scm: New
1228         properties added to PianoPedalBracket, unnecessary
1229         Y-offset-callbacks removed from *Pedal, undocumented properties
1230         fixed.
1232         * Documentation/user/refman.itely: Piano pedal updates.
1234 2002-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1236         * scm/grob-property-description.scm:
1237         * scm/interface-description.scm: Remove old stuff.
1239         * scm/grob-description.scm (StemTremolo): Change beam-thickness to
1240         0.48 (previously 0.42).
1241         (Beam): Remove old stuff.
1243         * lily/stem.cc: 
1244         * lily/stem-tremolo.cc: 
1245         * lily/beam.cc: 
1246         * scm/beam.scm: Remove old stuff.  Use Beam::get_interbeam ()
1247         (previously space-function).
1249         * stepmake/bin/add-html-footer.py: Website title fix.
1251 2002-03-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1253         * scripts/ly2dvi.py (environment): use new font searching setup.
1255         * lily/afm.cc (afm_bbox_to_box): make code dimension independent
1257         * lily/tfm.cc (dimensions): make code dimension independent
1259         * ps/lilyponddefs.ps: add constant for MM and true/ps-point
1260         scaling
1262         * tex/lily-ps-defs.tex: scaling for PS points and MM.
1264         * lily/include/dimensions.hh: try MM as internal unit.
1266         * scm/*.scm: remove invoke-dim1
1268 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1270         * GNUmakefile.in (fontpaths): add fontpaths target,
1272         * make/mutopia-targets.make: add PDF rules.
1274         * make/mutopia-rules.make: add pdf rule.
1276         * buildscripts/mutopia-index.py (list_item): add PDF.
1278         * buildscripts/lilypond-profile.sh (TEXMF): typo.
1280         * make/lilypond-vars.make: set TEXMF for the new font setup.
1282 2002-03-17  Han-Wen  <hanwen@cs.uu.nl>
1284         * VERSION: 1.5.42 released
1285         
1286         * mf/feta-schrift.mf: endless twiddling of Tr.
1288         * mf/feta-eindelijk.mf: 8th rest: make darker, top of brush lower, and
1289         endless twiddling with the bulb shape.
1291         * lily/note-head.cc (internal_brew_molecule): make ledger lines a
1292         little smaller if there is an accidental.
1294 2002-03-15  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1296         * buildscripts/lilypond-profile.sh: 
1298         * mf/GNUmakefile (INSTALLATION_OUT_DIR*),
1299         buildscripts/lilypond-login.sh, buildscripts/lilypond-profile.sh:
1300         Implement new font installation strategy
1302         * Documentation/misc/fontinstallation (TEXMF): Documentation of
1303         the new font installation strategy.
1305         * lilypond-mode.el (LilyPond-mode-map): Add shortcut "CTRL-c ;"
1306         for comment-region.
1308         * input/test/staff-size.ly: Simplified using StaffContainer
1310         * mf/GNUmakefile (ALL_GEN_FILES): Actually generate the
1311         lilypond.map file
1313 2002-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
1315         * scm/ps.scm (bezier-sandwich): Draw circles at slur ends.
1317         * lily/beam.cc (score_stem_lengths): new quanting stuff
1318         (score_forbidden_quants): Second and third beam quant stuff.
1320 2002-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
1322         * lily/beam.cc (least_squares): Remember least-squares-dy for
1323         later use.
1324         (quantise_interval): Don't quant to dy steeper that
1325         least-squares-dy.  Return empty interval if no sane quants found.
1326         (quantise_position): Try quantise_interval until we have
1327         acceptable solution.
1329 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1331         * scm/interface-description.scm (beam-interface): Update.
1333 2002-03-15  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1335         * VERSION: 1.5.41 released
1336         
1337         * mf/feta-schrift.mf: make Tr. smaller, smoother and closer.  Use
1338         optima serifs on top of t, bottom of r.
1340         * mf/feta-bolletjes.mf: make ledger line rounder. 
1342         * mf/feta-toevallig.mf: some smallish fixes for flat sign.
1344         * mf/feta-eindelijk.mf: make 8th rest a little darker, some more
1345         parametrization.
1347 2002-03-15 Chris Jackson <chris@fluffhouse.org.uk>
1349        * lily/piano-pedal-engraver.cc: Rewritten to support bracketed as
1350        well as text pedal indications and a combination of both.  All
1351        pedal indications are horizontally aligned on a line spanner.
1353        * lily/text-spanner.cc: Edge-width property added to use in
1354        bracketed piano pedals. Function setup_sustain_pedal added to set
1355        the dimensions of the brackets. 
1357        * scm/grob-description.scm: New *PedalLineSpanner grobs added, and 
1358        some of the *Pedal properties tweaked. 
1360        * scm/grob-property-description.scm: New pedal-type (*Pedal) and
1361        edge-width (TextSpanner) properties.
1363        * ly/engraver-init.ly: Default strings added for SostenutoPedal. 
1365        * lilypond-font-lock.el: sostenuto, unaCorda and treCorde added to
1366        fontified identifiers list.
1368        * input/test/pedal.ly: New pedal features added. 
1370        * Documentation/user/refman.itely: New pedal features documented.
1371        
1373 2002-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
1375         * lily/include/new-beam.hh: Previously new-beam.hh
1376         * lily/beam.cc: Previously new-beam.cc
1377         (least_squares): Bugfix: don't barf on beams with less than two
1378         visible stems (tremolos).
1380         * scm/beam.scm: 
1381         * scm/grob-description.scm (Beam): Junk old beam stuff.
1382         
1383         
1384 2002-03-14  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1386         * VERSION: 1.5.40
1388         * mf/feta-eindelijk.mf: new 8th rest.
1390         * mf/feta-toevallig.mf: small fixes for the sharp symbol. Don't
1391         stick out of staffline
1393         * scripts/lilypond-book.py: fixes for texi regular expressions.
1395 2002-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
1397         * lily/include/new-beam.hh:
1398         * lily/new-beam.cc: New file.
1400         * flower/include/interval.hh: 
1401         * flower/include/interval.tcc (delta): New method.
1402         (swap): Now public (previously private).
1403         
1404         * scm/beam.scm (default-beam-y-quants): Bugfix: lower beam-sit by
1405         1 staff-line-thickness.  Sadly, this makes dy quanting problems
1406         (dy quants allowed should depend on actual left y) more visible.
1408 2002-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
1410         * lily/beam.cc (quantise_dy): Bugfix: sign (0) = 0.  Hmm.
1412         * scm/grob-property-description.scm (concaveness-threshold): Add
1413         typecheck and description.
1415         * scm/grob-description.scm (Beam): Remove obsolete properties, add
1416         concaveness-threshold (previously concaveness).
1418         * lily/beam.cc (check_concave): Remove choices and debugging
1419         stuff: use best concaveness calculation.
1420         (quantise_dy): Remove choice.  Try to never make a slope steeper
1421         by quantising, but certainly never quantise a slope away.
1422         (check_stem_length_f): Remove choice.  In case of lengthening
1423         alowed, always lengthen to ideal length.
1425         * Documentation/index.texi: Fix FAQ url.
1427         * Documentation/topdocs/INSTALL.texi: Add information about fink,
1428         compile fix and 1.4 specific fix that doesn't hurt 1.5.
1430 2002-03-13  Han-Wen  <hanwen@cs.uu.nl>
1432         * VERSION: 1.5.39 released
1434         * lily/simple-spacer.cc (add_rod): rods take precedence over
1435         infinitely stiff springs. This fixes bugs with arpeggios and bar-lines.
1437         * lily/arpeggio-engraver.cc (acknowledge_grob): clean up.
1439         * lily/note-spacing.cc (get_spacing): only insert space for
1440         accidentals if necessary.
1442         * input/regression/spacing-accidental-staffs.ly (texidoc): update example
1444         * lily/spacing-spanner.cc (musical_column_spacing): new
1445         function. Have correct spacing from note to end-of-line as well.
1447 2002-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
1449        * Documentation/topdocs/INSTALL.texi: Add section for MacOS X.
1451        * darwin.patch: New file.
1453        * lily/beam.cc (set_stem_shorten): Revive deceased stem shorten
1454        code.  Shorten stems by fraction of stems to be shortened.
1456        * lily/stem.cc (get_default_stem_end_position): Shorten only half
1457        of shorten value for boundary cases.
1459        * scm/grob-description.scm (Stem): Set stem-shorten to (1.0 0.5).
1460        (Beam): Set beamed-stem-shorten to (1.0 0.5).
1462 2002-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1464        * lily/beam.cc (check_stem_length_f): Try to lenthen more.
1466        * scm/grob-description.scm (Beam): Add concaveness.  Replace
1467        Beam::cancel_suspect_slope with Beam::check_concave.
1469        * lily/beam.cc (check_concave): Calculate concaveness of beam, and
1470        set slope to horizontal if concaveness > Beam.concaveness.  This
1471        handles cases that kludgy cancel_suspect_slope was meant to catch
1472        very well.
1473        (cancel_suspect_slope): Remove.
1475 2002-03-12 Rune Zedeler <rune@zedeler.dk>
1477         * lily/beam.cc lily/stem.cc lily/beam-engraver.cc: allow for
1478         stemLeftBeamCount and stemRightBeamCount to equal 0.
1479         Fixes [c8 c4 c8]
1480       
1481 2002-03-12  Han-Wen  <hanwen@cs.uu.nl>
1483         * lily/spacing-spanner.cc (breakable_column_spacing): Only do
1484         fixed spacing for pref matter, if the next column is musical, and
1485         at the same moment.
1487         * lily/note-spacing.cc (stem_dir_correction): Use correct
1488         discretionary for stem-bar spacing.
1490 2002-03-11  Han-Wen  <hanwen@cs.uu.nl>
1492         * VERSION: 1.5.38 released 
1494         * lily/grob.cc (warning): Use cause tracking to give more
1495         meaningful errors from the backend. 
1497         * lily/property-iterator.cc (check_grob): Warn if setting grob
1498         property in unknown grob. 
1500         * mf/feta-toevallig.mf: brushed stems for natural sign.
1502         * lily/molecule.cc (align_to): don't translate empty molecule.
1503         (this triggers a very subtle bug in time-signature.)  
1505 2002-03-10  Han-Wen  <hanwen@cs.uu.nl>
1507         * lily/spring.cc: remove file.
1509         * input/regression/spacing-stem-bar.ly: new file
1511         * lily/score.cc (run_translator): resurrect point-and-click
1513         * input/baerenreiter-sarabande.ly: Copy Barenreiter beaming for
1514         sarabande layout
1516         * lily/spacing-spanner.cc (find_shortest): Shortest note for
1517         spacing is now globally determined, using the most common shortest
1518         note. Notes that are shorter are spaced geometrically, and with
1519         expand hints. This makes spacing more even, and measures that have
1520         very short notes won't be that stretched out.  
1522         * mf/feta-klef.mf: F-clef fixes, documentation on the
1523         shape. (WARNING: font changed.)
1525 2002-03-09  Han-Wen  <hanwen@cs.uu.nl>
1527         * lily/simple-spacer.cc (add_columns): support for infinitely
1528         stiff springs.
1530         * lily/staff-spacing.cc (get_spacing_params): space after
1531         prefatory matter is fixed.
1533 2002-03-08  Han-Wen  <hanwen@cs.uu.nl>
1535         * lily/note-spacing.cc (stem_dir_correction): Correct spacing for
1536         barline following an upstem.
1538         * lily/staff-spacing.cc (extremal_break_aligned_grob): destill
1539         function from next_notes_correction().
1540         (bar_y_positions): idem.
1542 2002-03-04  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1544         * input/regression/break.ly (texidoc): bugfix: escape \ in
1545         strings.
1547         * lily/staff-spacing.cc (next_notes_correction): Correct the
1548         spacing of a note following a barline.
1551 2002-03-04  Glen Prideaux
1553         * mf/feta-solfa.mf: Shaped note heads
1555 2002-03-03  Han-Wen  <hanwen@cs.uu.nl>
1557         * VERSION: 1.5.37 released
1559         * lily/key-signature-interface.cc (brew_molecule): rename from key_item
1560         left-align molecule.
1561         
1562         * lily/break-align-interface.cc (do_alignment): completely
1563         rewritten. Now it does not use Align_interface anymore, but a
1564         separate routine. Like StaffSpacing, it reads space-alist from the
1565         breakable grobs.  This allows you to set spacing using
1566         
1567         \property Staff.Clef \override #'space-alist = '(....stuff....)  
1569         * lily/bar-line.cc, lily/include/bar-line.hh: change name from Bar
1570         to Bar_line. Move files around as well.
1572         * lily/time-signature.cc (time_signature): left align time signatures. 
1574         * mf/feta-timesig.mf: Remove padding from C-style time signatures.
1575         Corrections of the glyph shape C. Comments added.
1577 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1579         * lily/spacing-spanner.cc: move from third-try.cc; rename
1580         Third_spacing_spanner to Spacing_spanner.
1582         * lily/staff-spacing.cc (get_spacing_params): redo prefatory
1583         spacing stuff. Much cleaner now, and we prepare for neat spacing
1584         tricks around bar lines and such.
1586         * lily/third-try.cc (prune_loose_colunms): bugfix. Don't init
1587         variables with themselves. (Ouch.)
1589         * lily/span-bar.cc (brew_molecule): don't try to span bars that
1590         overlap.
1592 2002-03-02  Han-Wen  <hanwen@cs.uu.nl>
1594         * VERSION: 1.5.36
1596         * lily/lily-guile.cc: isdir_b and isaxis_b changed to ly_axis_p,
1597         ly_dir_p
1599         * lily/music.cc (ly_get_mus_property): typechecking
1600         (ly_set_mus_property): idem
1601         (ly_make_music): idem
1602         (ly_music_name): idem
1604         * lily/chord.cc: use scm_reverse_x iso. gh_reverse()
1606         * lily/note-spacing.cc (stem_dir_correction): correction for
1607         same stem notes as well. 
1609         * lily/pitch.cc (pitch_transpose): stricter typechecking
1611         * mf/parmesan*mf: magnification fixes.
1613         * Documentation/topdocs/INSTALL.texi: update RedHat reqs
1615 2002-03-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1617         * buildscripts/mf-to-table.py (postfixes): Output also .ly file
1618         documenting the font. (Doesn't work for parmesan at the moment)
1620         * Documentation/user/appendices.itely (The Feta font): Add list of
1621         Feta font symbols with names.
1623         * mf/GNUmakefile ($(outdir)/lilypond.map): Generate lilypond.map
1624         automatically
1626 2002-03-01  Han-Wen  <hanwen@cs.uu.nl>
1628         * lily/translator-group.cc (ly_set_trans_property): typechecking
1629         (ly_get_trans_property): typechecking.
1631         * lily/font-metric.cc (ly_text_dimension): typechecking 
1632         (ly_find_glyph_by_name): idem.
1634         * scm/bass-figure.scm (brew-complete-figure): support for
1635         bracketed numbers.
1636         
1637         * lily/grob.cc (ly_get_paper_var): new function
1639 2002-02-28  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1641         * VERSION (PATCH_LEVEL): 1.5.35 released.
1643         * lily/lookup.cc (ly_bracket): Scheme function ly-bracket
1644         (bracket): New function.
1646         * lily/stem-engraver.cc (stop_translation_timestep): bugfix, unset
1647         stemLeftBeamCount, stemRightBeamCount in stead of using #<undefined> 
1649         * lily/third-try.cc (set_implicit_neighbor_columns): type checking
1650         bugfix.
1652         * lily/span-arpeggio-engraver.cc (stop_translation_timestep):
1653         typecheck bugfix. 
1655         * lily/grob.cc (ly_get_grob_property): be anal about types.
1656         (ly_set_grob_property): idem
1658         * lily/figured-bass-engraver.cc (process_music): move molecule
1659         building completely to Scheme
1661         * lily/include/musical-request.hh (class Bass_figure_req): Add
1662         class. 
1664         * lily/parser.yy (bass_figure): add support for space figure.
1666         * lily/molecule.cc (ly_molecule_combined_at_edge): be anal about types 
1668         * lily/font-metric.cc (ly_text_dimension): Scheme function ly-text-dimension
1670         * lily/molecule.cc (ly_fontify_atom): new function ly-fontify-atom
1671         (ly_align_to_x): new function ly-align-to!
1673         * lily/font-interface.cc (ly_font_interface_get_font): new Scheme
1674         function ly-get-font
1676         * mf/feta-nummer.mf: include normal-space dimension. 
1678         * lily/collision.cc (check_meshing_chords): don't merge collisions
1679         with whole notes.
1680         
1681         * lily/system-start-delimiter.cc (after_line_breaking): Bugfix:
1682         glyph is string.
1684 2002-02-28  Mats Bengtsson  <matsb@s3.kth.se>
1686         * scm/tex.scm, scm/ps.scm (or): Bugfix, ps output with Guile 3.4
1688 2002-02-28  Juergen Reuter  <reuter@ipd.uka.de>
1690         * mf/parmesan-heads.mf: bugfix: mensural note heads  (WARNING:
1691         font changed)
1693         * scm/output-lib.scm: bugfix: resort to neo_mensural chars rather
1694         than mensural chars
1696         * mf/parmesan-scripts.mf, mf/parmesan-generic.mf,
1697         scm/grob-description.scm: added mensural fermata symbol
1699 2002-02-27  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1701         * VERSION: 1.5.34 released.
1703         * lily/rest-engraver.cc (create_grobs): rests can have pitches.
1705         * lily/staff-symbol-referencer.cc (callback): assume that
1706         staff-position is unset in general.
1708         * input/regression/rest-pitch.ly: new file.
1710         * lily/parser.yy (simple_element): rests can have pitch. Syntax:
1711         a4\rest
1713 2002-02-26  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1715         * lily/scm-option.cc (set_lily_option): add internal-type-checks
1716         as Scheme option. Run regression test by default with
1717         internal-type-checking.
1719         * lily/separating-group-spanner.cc (find_musical_sequences):  removed.
1721         * lily/lily-guile.cc (type_check_assignment): changed functions.
1723         * scm/*description*.scm: be anal about typechecks. Some changes
1724         for internal variable names.
1726 2002-02-25  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1728         * scm/ps.scm: -f ps  output for GUILE 1.4 and 1.3.4
1730 2002-02-25  Han-Wen  <hanwen@cs.uu.nl>
1732         * VERSION: 1.5.33 released.
1734         * mf/feta-macros.mf (flare_path): removed draw_flare, replace by
1735         flare_path everywhere (c-clef, numbers).        
1737         * lily/bar-number-engraver.cc (process_music): also print bar
1738         number if measure starts with grace note.       
1740         * input/regression/grace-bar-number.ly: new test.
1742 2002-02-24  Han-Wen  <hanwen@cs.uu.nl>
1744         * lily/figured-bass-engraver.cc (stop_translation_timestep): reset
1745         rest as well.
1747         * scm/music-functions.scm (voicify-music):  split chords into
1748         different voices automatically.
1750         * lily/music.cc (ly_music_list_p): new function
1752         * lily/music-sequence.cc (do_relative_octave): robustification
1754         * scm/music-functions.scm: many utility functions 
1756         * lily/music.cc (ly_set_mus_property): add type checks to the
1757         Scheme property assignment.
1759         * buildscripts/lilypond-profile,lilypond-login.sh (TEXCONFIG):
1760         dvips fixes
1762         * mf/lilypond.map: .map file from Mats' page. 
1764 2002-02-21  Juergen Reuter <reuter@ipd.uka.de>
1766         * Some more parmesan related fixes;
1768         * Custos: varying shape (in particular, stem length), depending on the
1769           vertical position of the custos (on staffline / between stafflines);
1771         * Custos: added grob property "neutral-direction" (same semantics as
1772           with stem); introduced new grob property "neutral-position";
1774         * Time-signature: print a warning when resorting to default layout.
1776 2002-02-22  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1778         * lily/translator-group.cc (add_fresh_simple_translator): remove
1779         function; initialize() is called through
1780         Translator_group::initialize().
1782         * lily/third-try.cc (prune_loose_colunms): add constraints (rods)
1783         for the neighbors of a loose column.
1785         * lily/line-of-score.cc (set_loose_columns): be more intelligent:
1786         position loose columns so that they don't collide.
1788 2002-02-21  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1790         * VERSION: 1.5.32 released.
1792         * scm/font.scm: remove font-name symbol.
1794         * mf/GNUmakefile: use pktrace for making PFAs
1796         * make/lilypond.redhat.spec.in: use pktrace when making RPMs
1798         * lily/rest-collision.cc (do_shift): read direction field from
1799         rest-column in case of note-rest collision. This should fix some
1800         problems with rest collisions.
1802 2002-02-19  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1804         * lily/note-heads-engraver.cc (process_music): Removed easyPlay
1805         property.
1807         * lily/note-head.cc (brew_ez_molecule): Remove note-character
1808         property. Read pitch directly from #'cause.
1810         * mf/feta-puntje.mf: bugfix
1812 2002-02-19  Juergen Reuter <reuter@ipd.uka.de>
1813         
1814         * mf/*.mf: tried to fix ancient-font.ly. WARNING: Font changed.
1816 2002-02-18  Jan Nieuwenhuizen  <janneke@gnu.org>
1818         * Documentation/windows/compiling.texi: Update.
1820         * Documentation/index.texi: Add link to orphaned compiling for
1821         windows page.
1823         * Documentation/footer.html.in: Comment fix.
1825         * stepmake/bin/add-html-footer.py: Python2.[12] re workarounds.
1827 2002-02-18  Han-Wen  <hanwen@cs.uu.nl>
1828         
1829         * VERSION: 1.5.31 released
1831         * lily/new-spacing-spanner.cc: remove file.
1833         * lily/third-try.cc (do_measure): only take spacings into account
1834         if they pertain to the column pair under consideration. This fixes
1835         spacing bug when mixing eighths triplets and normal eighths.
1837         * lily/note-head.cc (brew_molecule): revert ledger change: ledger
1838         lines don't take up space anymore. Document why in note-head.cc
1839         comment.
1841 2002-02-17  Han-Wen  <hanwen@cs.uu.nl>
1843         * lily/font-interface.cc (get_font): reinstate
1844         #'font-magnification. See input/regression/font-magnification.ly
1845         (get_font): Change the definition of  #'font-name grob property.
1847         * lily/grob.cc (get_uncached_molecule): output origin for grobs
1848         that have a #'cause field.
1850 2002-02-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1852         * Documentation/topdocs/INSTALL.texi: remove type3 stuff. 
1854         * mf/GNUmakefile:  remove metapost stuff
1856         * stepmake/aclocal.m4: remove metapost detection stuff.
1858 2002-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
1860         * mf/GNUmakefile (FET_FILES): 
1861         (FONT_FILES): Include parmesan.
1863         * stepmake/bin/packagepython.py (make_assign_re): Bugfix.  Use re
1864         iso regex, regsub
1866         * buildscripts/clean-fonts.sh (FILES): Clean parmesan too.
1868         * Documentation/user/refman.itely (Paper size): Quote braces.
1870 2002-02-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1872         * stepmake/aclocal.m4: fixed bison version check to be more
1873         robust.
1875         * lily/stem.cc (position_noteheads): fix for cluster chords.
1877         * mf/*.mf: many blotting/pixel rounding fixes  by Rune Zedeler
1879         * python 2.2 support.
1881 2002-02-04  Han-Wen  <hanwen@cs.uu.nl>
1883         * VERSION: 1.5.30 released
1885         * lily/dynamic-engraver.cc: add doco about DynamicLineSpanner
1887         * Documentation/user/refman.itely (Dynamics): add a note about
1888         DynamicLineSpanner.
1890         * scm/grob-description.scm: add a 'translator-type?  object
1891         property, so that \property Foo.Bar =\turnOff doesn't cause
1892         type check warning.
1894         * lily/translator-group.cc (add_fresh_group_translator): make
1895         new add-translator functions to make distinction between fresh and
1896         used group-translators. Fixes problem with scripts on auto-changing voice 
1898         * lily/timing-engraver.cc: make Timing_engraver instantiatable,
1899         add to Score_performer. Fixes bar checks in MIDI
1901         * lily/tie-engraver.cc (create_grobs): Use pitches to compare note
1902         heads. Fixes many quirks with ties.
1904         * lily/engraver.cc (announce_grob): Use SCM argument. Store cause
1905         in the grob property #'cause, instead of using Grob_info.
1907         * ly/engraver-init.ly (StaffContext): move Dot_column_engraver to
1908         staff context, fixing dot alignment on collisions.
1910         * lily/beam-engraver.cc (try_music): remove can't find beam start
1911         warning, so that skipTypesetting won't complain.
1913 2002-02-01  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1915         * Documentation/user/refman.itely (Paper size): Documentation fix,
1916         papersize
1918         * lily/text-engraver.cc: Bugfix: textNonEmpty works again
1920         * scm/grob-description.scm: \breathe: Use feta font comma by default
1922 2002-01-23  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1924         * input/template/piano-dynamics.ly (pedal): Simplified
1926 2002-01-18  Mats Bengtsson  <mats.bengtsson@s3.kth.se>
1928         * ly/engraver-init.ly: avoid warnings on \skip in lyrics
1930 2002-01-10  Mats Bengtsson  <matsb@s3.kth.se>
1932         * lilypond-mode.el (LilyPond-command-query): ignore case.
1934 2002-02-01  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
1936         * VERSION: 1.5.29 released
1938         * all files: change 2001 to 2002 in headers globally
1940         * mf/parmesan20.mf: split out ancient notation into parmesan ("old
1941         cheese") font. WARNING: fonts changed.
1942         
1943 2002-02-01  Juergen Reuter <reuter@ipd.uka.de>
1945         * mf/*.mf: Fixed some blot_diameter related flaws in some feta symbols
1946         
1947         * mf/*.mf: Added some more vaticana/solesmes style font symbols
1948         
1949         * mf/*.mf: Bugfix: renamed subbipunctum -> inclinatum
1951         * mf/*.mf: Fixed a few typos in various .mf files
1953 2002-01-17 Rune Zedeler <rune@zedeler.dk>
1955         * mf/: added macro soft_penstroke
1956         
1957                softened some glyphs
1958                redrawn triangular noteheads
1959                redrawn tab-clef
1960                added classical quarter rest
1961         
1962         * lily/stem.cc: Bugfix: Stem-attachment when staff_space!=1
1964         * lily/bar.cc: Bugfix: repeat dots when even number of staff
1965         lines and staff_space>=2
1967         * lily/rest.cc: Use default rests when current style glyphs not
1968         found - this allows
1969         \property Staff.Rest \override #'style = #'classical
1971 2002-01-30  Jan Nieuwenhuizen  <janneke@gnu.org>
1973         * input/bugs/first-tie.ly: New file.
1975         * input/bugs/spacing-clash.ly: New file.
1977 2002-01-29  Jan Nieuwenhuizen  <janneke@gnu.org>
1979         * po: regenerate.
1981 2002-1-24 Chris Jackson <chris@fluffhouse.org.uk>
1983         * lilypond-indent.el: New file providing indentation for
1984         parenthesised blocks of lilypond code in Emacs
1985         
1986         * lilypond-font-lock.el: Changes to the syntax table to facilitate
1987         indentation and handle block comments properly. Distinguish
1988         accents from close-brackets in fontification.
1990         * lilypond-mode.el: LilyPond-indent-command set appropriately.
1992 2002-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
1994         * Documentation/windows/installing.texi: 
1995         * Documentation/windows/compiling.texi: Include from 1.4.10.
1997         * Documentation/windows/gs-profile.sh: previously lily-gs.sh
1999         * input/bugs/first-midi-tie.ly: New file.
2001 2001-12-29  Han-Wen  <hanwen@cs.uu.nl>
2002         
2003         * VERSION: 1.5.28 released
2005         * lily/parser.yy (My_lily_parser): Slightly kludgy warning for
2006         illicit beams on [c4 c4] etc.
2008         * lily/bar-check-iterator.cc (Bar_check_iterator): new
2009         file. Make separate iterator for Bar_checks. Bar_check now happen
2010         outside engravers, meaning that you can use them with
2011         skipTypesetting. Associated changes in other files.
2012         
2013         * lily/new-spacing-spanner.cc (stem_dir_correction): removed
2014         function
2015         
2016         * lily/spacing-spanner.cc (stem_dir_correction): removed function
2018         * lily/include/grob.hh (unsmob_item, unsmob_spanner): Add functions
2020         * lily/bar.cc (before_line_breaking): remove bar-line spacing code.
2022         * lily/stem.cc (set_spacing_hints): removed function
2024         * lily/note-spacing.cc (stem_dir_correction): new stem-direction
2025         correction for spacing; now take vertical extents of the stem into
2026         account.  
2028         * lily/third-try.cc: More hacking to get spacing working.
2030         * lily/note-spacing-engraver.cc: new file, Note_spacing_engraver
2031         sits at staff level and creates note spacing objects. Scrap it
2032         again, and document why.
2034         * lily/include/group-interface.hh: rename functions. 
2036 2001-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
2038         * stepmake/stepmake/c++-rules.make:
2039         * stepmake/stepmake/c-rules.make: Fixes for bison-1.28.
2041 2001-12-25  Jan Nieuwenhuizen  <janneke@gnu.org>
2043         * make/lilypond-vars.make: 
2044         * scripts/ly2dvi.py (setup_environment): 
2045         * scripts/lilypond-book.py (setup_environment): Also set tex
2046         memory options.
2048 2001-12-24  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2050         * VERSION: 1.5.27 released.
2052         * Documentation/user/refman.itely (Bar numbers): added bar number
2053         documentation.
2055         * scm/font.scm (make-style-sheet): Fixes to make staff-sizes work
2056         again.
2058 2001-12-22  Mats Bengtsson  <matsb@s3.kth.se>
2060         * tex/lilyponddefs.tex: Make sure interscorelinefill=1 doesn't
2061         spread the last few lines all over the last page of a score.
2063 2001-12-24  Han-Wen  <hanwen@cs.uu.nl>
2065         * lily/third-try.cc: 3rd try at revising spacing
2066         engine. Not yet finished.
2068         * lily/paper-column.cc (brew_molecule): print debugging marks on a
2069         paper-column.
2071         * lily/tie-engraver.cc (class Tie_engraver): Use busyGrobs for
2072         collecting past note heads.
2074         * lily/note-heads-engraver.cc (try_music): Remove end_mom_
2075         stuff.
2077         * lily/grob-pq-engraver.cc (class Grob_pq_engraver): New file, new
2078         class. Keep a queue of grobs that are still playing in busyGrobs. 
2080         * lily/lyric-combine-music-iterator.cc (get_busy_status): New
2081         function. Use busyGrobs to detect playing notes.
2082         
2083 2001-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
2085         * Documentation/topdocs/INSTALL.texi: Added note about broken
2086         python-2.1.  Updated note for Debian's broken (well, broken for
2087         our use anyway) tex configuration.
2088         
2089         * scripts/lilypond-book.py (re_dict): python2.2 fix.
2090         
2091         * stepmake/stepmake/c++-rules.make ($(outdir)/%.hh): 
2092         ($(outdir)/%.cc): Adapted to bison-1.30; added bison < 1.30 fix.
2093         
2094         * scripts/lilypond-book.py (bounding_box_dimensions): Bugfix.
2095         (But left margin of png's still misses a few pixels.  Arg.)
2096         
2097 2001-12-16  Heikki Junes  <hjunes@cc.hut.fi>
2099         * lilypond-mode.el (LilyPond-command-next-midi): Make
2100         possible to kill midi-process (using "C-c C-m").
2102 2001-12-14  Han-Wen  <hanwen@cs.uu.nl>
2104         * scripts/lilypond-book.py (LatexPaper.set_geo_option):
2105         Convert strings with dimensions to numbers.
2107         * lily/volta-engraver.cc:  only make a  bracket for the top staff,
2108         as found in stavesFound. 
2110         * lily/bar-number-engraver.cc: remove staff administration. 
2112         * lily/mark-engraver.cc (acknowledge_grob): remove staff
2113         administration. This breaks support for invisible-staff.
2115         * lily/staff-collecting-engraver.cc: new engraver. Collects staff
2116         symbols into stavesFound.
2118         * lily/score-engraver.cc (acknowledge_grob): Acknowledge spacing
2119         grobs, and put them into columns.
2121         * lily/engraver-group-engraver.cc (acknowledge_grobs): Include the
2122         Engraver_group_engraver as a potential candidate for ack'ing grobs.
2124 2001-12-13  Heikki Junes  <hjunes@cc.hut.fi>
2126         * lilypond-mode.el (LilyPond-command-next-midi): Play next (or last)
2127         midi section in the Emacs-mode, so it is possible to play certain
2128         score in a multiscore lilypond-file.
2129          
2130 2001-12-09  Rune Zedeler  <rune@zedeler.dk>
2131         * lily/lily-guile.cc: Added ly_assoc_front_x() and ly_assoc_cdr()
2132         (FIXME: not accessible from guile)
2133         
2134         * lily/accidental-engraver.cc: rewrote accidental-routines to get
2135         better support for Kurt Stone's suggestions.
2136         Removed properties: noResetKey, forgetAccidentals, autoReminders,
2137                             lazyKeySignature.
2138         Changed property:   localKeySignature.
2139         Added properties:   extraNatural, autoAccidentals,
2140                             autoCautionaries.
2142         (BUGFIX: broken-tie-support destroyed in 1.5.16)
2143         
2144         * ly/property-init.ly: added commands
2145         \defaultAccidentals \modernAccidentals \modernCautionaries
2146         \noResetKey \forgetAccidentals
2148         * ly/engraver-init.ly: Correct initialization of new accidentals.
2149         
2150         * scm/translator-property-description.scm: The new properties
2151         added.
2152         
2153         * input/: Some examples added, some changed.
2154         
2155         * Documentation/regression-test.tely: Added quick test of new
2156         accidentals.
2158 2001-12-13  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2160         * scripts/lilypond-book.py (scan_latex_preamble): don't crash if
2161         header not found
2163 2001-12-07  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2165         * lily/beam.cc (before_line_breaking): Make beams  without stems
2166         or with only one stem disappear.
2168 2001-12-05  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2170         * bibtools/bib2html.py: Add simple bib2html convertor, and .bst
2171         files to have standardised HTML bibliography output. Update build
2172         docs to reflect this.
2174         * lily/include/simple-spacer.hh (struct Simple_spacer): add
2175         active_count_, so that we don't have to look for active springs
2176         anymore.
2178         * scm/interface-description.scm,scm/grob-property-description.scm:
2179         Add 'penalty
2181         * lily/simple-spacer.cc (solve): Handle forced line breaks
2182         here. Fixes problems when combining linebreaks with non-fitting
2183         line configurations
2185 2001-12-05  Jan Nieuwenhuizen  <janneke@gnu.org>
2187         * 1.4.9.jcn3 forward ports.
2188         
2189         * Really included .cvsignore.
2191         * Included Han-Wen's uu1 windows fixes.
2193         * Bugfix: lilypond-profile.sh: append to GS_FONTPATH, GS_LIB.
2195         * Added Cygwin setup.hint
2197         * Removed tex, python wrappers and postinstalls to go with Cywgin's
2198         tetex/texmf, python installations.
2200         * Updated cygwin installer.
2202         * ly2dvi: Don't accept filenames with spaces (+ fix).
2204 2001-12-03  Han-Wen  <hanwen@cs.uu.nl>
2206         * ly/engraver-init.ly (VoiceContext): fix text engraver ordering.
2208         * lily/translator-def.cc: Remove manual symbol caching.
2210         * lily/script-column.cc (before_line_breaking): robustness check:
2211         don't crash if no direction set.
2213         * scripts/pmx2ly.py: Key and clef change support (Laura Conrad)
2215         * scripts/pmx2ly.py (Parser.parse_header): more generic header
2216         parsing.
2219 2001-12-01  Han-Wen  <hanwen@cs.uu.nl>
2221         * lily/note-head.cc (head_extent): added to compute width without
2222         ledger lines. By default, ledger lines take up width now.
2224         * input/regression/fingering.ly: demonstrate auto fingering.
2225         Horizontal placement is still buggy. 
2226         
2227         * lily/fingering-engraver.cc (class Fingering_engraver):
2228         added. Provides support for horizontal fingering scripts
2230         * lily/include/grob.hh: Naming: change parent_l() into get_parent()
2232         * lily/side-position-interface.cc (add_staff_support): add staff
2233         only for Y-axis side positions.
2235         * lily/parser.yy (request_chord): Fix mem leak.
2237         * lily/musical-request.cc (transpose): moved to Music::transpose()
2239         * lily/include/grob-info.hh: Change music pointer to SCM, so we
2240         can store grobs as grob-creation cause as well.
2242         * lily/group-interface.cc (add_thing): efficiency tweak: reuse
2243         handle when adding. Use precomputed symbols throughout lily.
2244         
2245         * lily/rhythmic-column-engraver.cc: make NoteSpacing grobs to keep
2246         track of spacing issues.
2248         * lily/separating-line-group-engraver.cc: make StaffSpacing grobs
2249         to keep track of staff spacing
2251 2001-11-30  Jan Nieuwenhuizen <janneke@gnu.org>
2253         * Rewrote new conditional guile >= 1.5 compilation switches, to keep
2254           code clean from conditionals and have a concentrated sets of
2255           compatibility fixes for old guile versions.
2257         * Fixes for guile 1.4, including embedded ps.
2259 2001-11-30  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
2261         * lily/stanza-number-engraver.cc (process_music): allow pairs as
2262         well for markup texts.
2264         * lily/musical-request.cc (length_mom): kludge for null pointer.
2266         * scm/sketch.scm (sketch-output-expression): guile 1.4 compatibility
2268         * scm/lily.scm (sign): bugfix
2270         * CHANGES: Change log instated.
2272         * stepmake/add-html-footer.py: @BRANCH@ tag insertion.