]> git.donarmstrong.com Git - lilypond.git/blob - CHANGES
release: 1.3.64
[lilypond.git] / CHANGES
1 1.3.63.uu1
2 ==========
3
4 * Lyrics centered on notehead.
5
6 * Various bugfixes hyphen-spanner.
7
8 * Bugfix: set appropriate callbacks for Note_head. This fixes 
9 problems with dots.
10
11 * Removed Clef_item as score-element derived type.
12
13 * Updated config.sub and config.guess
14
15 * Bugfix: allow linebreaks on beamed grace notes.
16
17 1.3.61.jcn2
18 ===========
19
20 * Included dutch po-update based on submitted 1.3.57 nl.po
21
22 * Added "Development" link to website, now that "Home" is a relative link.
23
24 * Bugfix: use deep copies for resetting keys.
25
26 * Assorted typing erors in procedure names in ly/engraver.ly
27
28 1.3.62
29 ======
30
31 * Made callbacks from Score_element::before_line_breaking() and
32 Score_element::after_line_breaking()
33
34 * Fixed website; backlinks should work again.
35
36 * Removed --ignore-version option. Added --verbose option.
37
38 1.3.61
39 ======
40
41 * Webpage hacking
42
43 1.3.60.hwn1
44 ===========
45
46 * Junk int_identifier, real_identifier. Merged Midi_def_identifier and
47 Paper_def_identifier.
48
49 * Fixed bug with spanning barlines in combination with Hara-Kiri staffs.
50
51 * Cleaned up Text_item, Hyphen_spanner, Lyric_extender and
52 Sustain_pedal and reduced them to an Score_element interface (they are
53 no longer Score_element derived types).
54
55 * Some instances of brew_molecule routines have moved out of
56 Score_element, and are now called scheme_molecule.
57
58 * Moved lots of parameters from ly/params.ly to ly/engraver.ly
59
60 1.3.59.hwn1
61 ===========
62
63 * Removed String_identifier, and use the type system of GUILE instead.
64
65 * Fixed \key PITCH MODALITY syntax. The modality argument is now
66 mandatory, a rule in convert-mudela has been added.
67
68 * Cleaned up  buildscripts/ directory: removed obsolete scripts.
69
70 * Use Scheme_hash_table for identifier Scopes.  Scheme_hash_table is
71 based on STL and should be faster than hash_table.
72
73
74 1.3.59.jcn1
75 ===========
76
77 * Fixed scm_un/protect_object for guile-1.3.4 and 1.3.5 snapshots,
78   in the process reduced number of protect/unprotect calls.  With
79   guile-1.3.5 snapshot, memory usage has decreased by 1/5th, now
80   just 10% above the 1.2 level.  Also, Lily's a bit faster.
81
82 * Fixed make diff bug in stepmake to be able to make this diff :-)
83
84 1.3.58.hwn1
85 ===========
86
87 * Rewrote key sig support.  Now key signature can also be controlled
88 by setting keySignature and localKeySignature properties, eg.
89
90         \property keySignature = #'((2 . -1) ( 4 . -1) (6 . -1))
91
92 sets a key signature of `es ges bes' (an unusual key signature).
93
94 Keys are internally represented as transpositions of the c-major
95 scale. Printing the key signature for a scale is done by filtering out
96 all non-natural accidentals.
97
98 * Removed support for \keysignature, and \key something \minor; Newkey
99 is now obsolete.
100
101 1.3.58.jcn3
102 ===========
103
104 * Fixed pedal items (hw)
105
106 * Changed configure option tex-tmfdir to tmf-path now accepting multiple
107   tfm directories.  Automated links to cmr and amstex tfm font directories.
108
109 * Replaced one scm_assoc () u-turn slipped through jcn1
110
111 * various GUILE 1.3.5 compile fixes
112
113 * Added `Ped' as a compound symbol font and removed silly scheme kerning.
114
115 * Replaced some scheme assoc u-turns with scm_assoc ()
116
117 * Ran po-update (mostly because of new ja contribution).
118
119 1.3.57.jcn2
120 ===========
121
122 * Cleaned-up scheme list to text conversion for Chord_name and 
123 fixed horizontal kerning.
124
125 * Added examples for american (slashed o) and jazz (black triangle),
126   see input/test/{american-chords.ly,jazz-chords.ly}
127
128 * Made guile-1.3.5 compile fixes
129
130 1.3.57.uu1
131 ==========
132
133 * Fixed typo in Dots::do_brew_molecule (); this fixes the disappearing
134 dots problem.
135
136 * Rewrote key signature administration; now Scheme is used; Octave and
137 Key have been junked in favor of Newkey.
138
139 * japanese .po file included (thanks, Japanese team!)
140
141 1.3.57
142 ======
143
144 * Fixed several forgotten molecule-callbacks 
145
146 * Fixed first clef in score; now F clefs are also possible.
147
148 1.3.56.mb1
149 =========
150  
151 * Updated FAQ with two useful GDB macros.
152
153 * Several fixes in the documentation.
154
155 1.3.55.jcn1
156 ===========
157
158 * Made (dutch) po-update
159
160 1.3.56
161 ===========
162
163 * Molecules are now generated via callbacks exclusively; most calls to
164 set_elt_property ("transparent", SCM_BOOL_T) have been replaced by suicide().
165
166 1.3.55
167 ======
168
169 * Experimental property collapse for most score-elements.  (notable
170 exceptions: Scripts, pedals). Change all Score_element constructors to
171 take a basic-property list. The suffix of a property list may be
172 shared by several score-elements, for instance all default G-clefs in
173 a score share the following settings
174   
175            (breakable . #t)
176            (break-align-symbol . Clef_item)
177            (visibility-lambda . ,begin-of-line-visible) 
178
179 This should reduce memory usage further. 
180
181 * Magically fixed the disappearing Lyrics problem.
182
183 * Removed used_b_ field from Score_element.  
184
185 * Massive search-replace patch: store pointers and properties
186 separately, in preparation of property collapse.
187
188
189 1.3.54
190 ======
191
192 * Bugfix: don't crash on tuplet spanners that don't contain any notes.
193
194 * Cleanup of Dimension_cache: removed a few redundant
195 fields. Slightly lower memory usage (32 bytes per
196 score-element). Dimension_cache is now a `dumb' struct again.
197
198 * Add array index to priority field of text scripts to ensure that
199 order is unique, and sensible.
200
201 * Added an element count statistic.
202
203 1.3.53
204 ======
205
206 * russian.po (thank you, August.)
207
208 * Small cleanups in Molecule interface 
209
210 * Spacing related elements perform suicide after calculating
211 distances.  This saves a some memory, approximately 2 to 5 % ?
212
213 * Small cleanups in line breaking: Paper_column stores springs and
214 rods in only one place now.  All fields relating to energy have been
215 removed
216
217 * Don't generate all output Scheme in memory, but evaluate to output
218 file immediately.  This will reduce memory usage a little.
219
220 * Use STL's map  for Dictionary template
221
222 * Substitute pointers on element properties of the root Line_of_score
223 as well.
224
225 * Added toplevel doc target, to support building doc with --srcdir
226
227 * Removed cygwin build stuff; updated versions at:
228
229      http://appel.dyndns.org/lilypond/gnu-windows/cross
230
231 * Fixed lily.scm to handle incipits (thanks, Mats)
232
233
234 1.3.52
235 ======
236
237 * Made bugfix in smob handling: delete the C-part of freed smobs and
238 be honest about amount of allocation and deletion, so that GUILE
239 doesn't overestimate the amount of memory available.
240
241 * Faq update: nicer blank note paper, courtesy Mats Bengtsson.
242
243 * Bugfix: don't crash on durations that are not a power of 2.
244
245 * Build manpages during `make all' 
246  
247 * Bugfix: don't do absolute comparisons in Polynomial::clean ().
248
249 * Bugfix: set visibility-lambda for key signature created by
250 createKeyOnClefChange. Fixes disappearing key signatures. 
251
252 * Bugfix: make System_start_delimiter of bar-line type invisible when
253 it spans only one staff.
254
255 1.3.51
256 ======
257
258 * Item cleanups.  Copying items and rearranging pointers are done in
259 separate passes, which makes the code cleaner. This fixes a problem
260 with some items not disappearing from hara-kiri staffs.
261
262 * Use Scheme for Key_item data members. 
263
264 * Don't use regex in chord-names.scm under windows; hybrid chordnames
265 user+calculated will be partly broken.
266
267 1.3.50
268 ======
269
270 * Junked Shift_tuple from collision; Now it uses SCM.
271
272 * Bugfix of documentation and test-file of tuplet.
273
274 * Bugfix type string of repeated music is copied. This fixes declared
275 tremolos.
276
277 * Junked various cruft from lily.scm
278
279 * Use interfaces symbols instead of C++ class-name for assigning generic
280 element properties.
281
282 * Junked Dictionary from Piano_pedal_engraver and
283 Piano_pedal_performer.
284
285 * Introduced boolean element property no-spacing-rods: ignore this
286 item for hard constraints.
287
288 * Bugfix: added sanitised TeX fragment in faq.texi
289
290 * Bugfix: merge equal Bar_reqs
291
292 1.3.48.uu1
293 ==========
294
295 * Small fixes for \cresc and \endcresc
296
297 * Release properties of unbroken spanners & items after doing
298 handle_broken_smobs (); should conserve a little memory.
299
300 * Fixed handling of orphaned score-elements. Any element that does
301 not have its Line_of_score as a ancestor in both directions, is silently
302 removed from the output.  This guarantees that programming errors
303 don't result in coredumps from Dimension_cache::common_refpoint ():
304 element->line_l () is always a common reference point.
305
306 * Bugfix: set visibility-lambda of clef and octavation-8 explicitly
307 for default case.  Now the octavation 8 is not printed at every
308 barline.
309
310 1.3.48.mb1
311 ===========
312
313 * Changed noteHeadStyle properties to symbols, for example
314   \property Voice.noteHeadStyle = #'cross
315
316 1.3.47.jcn3
317 ===========
318
319 * Rewrite of chord-name production in scheme.  There are two major styles
320   now, banter and american.  To get american style, use
321
322       \property ChordNames.chordNameStyle = "american"
323  
324   Most anything should be possible now.  See input/test/american-chords.ly
325
326 * Added isinf check to configure.in, and isinf macro from guile to
327   bezier.cc; solaris has no isinf ().
328
329 * Fixed star-spangled-banner with not-so-nice \bar "|." fix.  Almost
330   perfect now.
331
332 * Added output property to regression test.
333
334 * Fixed warning of creating existing outdir.
335
336 * Added `Mark' interface to text-items that are marks (thanks, HW).
337
338 1.3.48
339 ======
340 1.3.47.mb2
341 ===========
342
343 * Corrected glossary.tely
344
345 * Corrected \mark font handling. feta-nummer font only of the 
346   string is all numeric.
347
348 * Implemented noteHeadStyle lookup in Guile. Reintroduced the style
349   "harmonic" and added "baroque" (normal note shapes except for 
350   brevis and longa which are square).
351
352 * Simplified ly2dvi using the power of the geometry package.
353
354 * Improved heuristic size calculation of TeX macros. Handles e.g.
355   "\\u{a}", "\\"{o}" and "\\^{u}" correctly.
356
357 1.3.47.hwn1
358 ===========
359
360 * Bugfix: don't hang on zero-duration.
361
362 * Various glossary updates (thanks, Christian)
363
364 1.3.47
365 ======
366
367 1.3.46.jcn2
368 ===========
369
370 * Drastically reduced vertical space used by headers/footers, when using
371   ly2dvi.  See input/test/fill-a4.ly.
372
373 * Fixed bug with colons appearing on repeat span-bars.
374
375 * Added Bar_number_engraver to standard Score context
376
377 * Construct octavation scripts in the clef-engraver; this fixes the
378 hara-kiri + clef8 problem
379
380 1.3.46
381 ======
382
383 1.3.45.jcn2
384 ===========
385
386 * Fixed chord-name customisation and made small chord-name build fixes.
387
388 * Accidentals with chord-names smaller and as superscript.
389
390 * Do some extra footify (works only once) while making html docs.  
391
392 1.3.45.hwn1
393 ===========
394
395 * Debian patch (Thanks Anthony)
396
397 * Rewrote Bar_number_engraver and Mark_engraver and removed
398 Bar_script_engraver as baseclass. Both Bar_number_engraver and
399 Mark_engraver are simpler and more robust.
400
401 * Fixed precedence of \property verticalDirection and dynamicDirection
402
403 * Fixed keys without barlines 
404
405 * Fixed StaffGroups: removing `\consistsend "Axis_group_engraver"'
406 puts alignment in function again
407
408 * Fixed StaffGroup + GrandStaff combination.
409
410 * Music is now mandatory as the first thing in a \score{} block
411
412 1.3.45
413 ======
414 1.3.44.jcn2
415 ===========
416
417 * Implemented una-chorda and sostenuto piano pedals in performer and engraver.
418
419 * Added Properties textScriptWordSpace and chordNameWordSpace.
420
421 * Junked old lyrics in star-spangled-banner.
422
423 * Added a Piano_pedal_engraver.
424
425 * Removed some empty files.
426
427 * Created piano pedal symbols: * - . P e d.
428
429 * Fixed ps-to-pfa.py to handle multiple unfills.
430
431 * Moved accordion symbols out of feta-script to end of font.
432
433 * Bugfix: don't create tfm's, pfa's etc of feta-test fonts.
434
435 * Fixed blot_diameter for small resolutions.
436
437 1.3.43
438 ======
439
440 * Put global element list into Line_of_score, instead of
441 Paper_score. post processing (the stage after line breaking) is now
442 truly done per-system, and we got rid of an ugly hack to get font
443 handling OK.
444
445 * Bugfix: set the group-interface of System_start_delimiter.
446
447 * Cleanups of Break_algorithm and derived classes, Move
448 broken_col_range () to Line_of_score, remove Paper_score::col_l_arr_
449
450 * Bugfix for accordion symbols.
451
452 * Various patches to prevent crashing when do_brew_molecule gets
453 called before after_line_breaking (). This was a problem in Spanner
454 classes mostly.
455
456 1.3.43
457 ======
458
459 1.3.42.jcn3
460 ===========
461
462 * Made a quick try at piano pedal performer, damper pedal only.
463
464 * mf/feta-accordion.mf: Fixed strange turning paths.
465
466 * mf/feta-beugel.mf: Fixed infinity errors.
467
468 * Use a more discriptive name for windows setup.zip.
469
470 * mf/GNUmakefile: Have logs as last target, so that normally, they're 
471 not made twice.
472
473 * stepmake/stepmake/metafont-rules.make: Don't remove the .log files.
474 The logs are a target, removing them retriggers make.
475
476 * stepmake/stepmake/metapost-rules.make: Remove the correct log and tfm
477 files, ie the ones that clutter the source directory, not the target logs.
478
479 * Windows distribution: faked symlink for cmtfm.  Setup.zip should now be
480 standalone; ie, no need for Cygnus' usertools anymore.
481
482 1.3.42.jbr1
483 ===========
484   
485 * Documentation/ntweb: Updated angels.ly to match current syntax.
486 Also updated index.texi.
487
488 1.3.42.uu1
489 ==========
490
491 * Change all occurances of Staff_margin_engraver to
492 Instrument_name_engraver, add a convert-mudela rule
493
494 * Change status == busy assert into programming error
495
496 1.3.42
497 ======
498
499 1.3.41.jcn3
500 ===========
501
502 * Lots of fixes to windows distribution scripts.
503
504 * Added configuration features --program-prefix, --program suffix.
505
506 * lily/my-lily-parser.cc (get_chord): Bugfix, don't use deleted pitch.
507 This fixes inversions c/g and bass additions d/+c on chords.
508
509 1.3.41.mb1
510 ==========
511
512 * Avoid that xxxXXXVerticalExtent is used for empty HaraKiriStaff
513   lines.
514
515 1.3.41.hwn1
516 ===========
517
518 * Debian patches (thanks Anthony!)
519
520 * Use symbols for prefatory matter spacing. Do not use the typename
521 for looking up item pairs in the table, but read element property
522 break-align-symbol
523
524 * Instrument_name_engraver, uses break alignment instead of
525 side-position.
526
527 * System_start_delimiter_engraver, System_start_delimiter, uses a
528 spanner for the braces/brackets at the left of the system. Remove all
529 old Span_score_bar engravers.
530
531 * Removed Base_span_bar_engraver::use_prority_b_, and moved
532 Base_span_bar_engraver into Span_bar_engraver.
533
534 1.3.40.jcn3
535 ===========
536
537 * mutopia/Coriolan/violino-2.ly: Bugfix: wrong pitch.
538
539 * input/test: Removed stale AutoStaffSwitch examples.
540
541 * mutopia/E.Satie: Fixed gnossiene-4, doing \autochange.  Removed
542 stale copy of gnossiene-4.
543
544 * buildscripts/make-cygwin-cross.sh: Made some small .zip package fixes.
545
546 * make/lilypond.spec.in: Made some bugfixes for _prefix, preparations
547 for cross-building to Cygwin.
548
549 * buildscripts/make-cygwin-cross.sh: Now using rpm packages.
550
551 1.3.40.hwn2
552 ===========
553
554 * added \property XXXMinimumVerticalExtent, \property XXXExtraVerticalExtent
555
556 * New_chord_tremolo_engraver: make tremolo beams from
557
558         \repeat "tremolo" NUMBER <Music-expression>
559
560 Removed support for "old-style" tremolos.
561
562 * Add a convert-mudela function for the conversion "\key A;" to "\key a; 
563
564 * Read \property measurePosition within the engraver code, instead of
565 looking up the Timing_translator.
566
567 * star-spangled-banner.ly: add Bar_engraver to LyricsVoice 
568
569 * Changed all .fly and .sly files to .ly files.  Propose to dump .fly
570 and .sly.
571
572 1.3.40
573 ======
574
575 1.3.39.jbr1
576 ===========
577
578 * buildscripts/mf-to-table.py: feta dep files are now opened with write
579   binary option.  This avoids carriage return linefeed problems and
580   windows while not affecting unix.
581
582 * Documentation/hacking.texi: Fixed a texinfo syntax error
583
584 * stepmake/bin/package-zip32.sh: Fixed or Removed some legacy, 1.2.x,
585   directory paths.
586
587 * Documentation/ntweb/index.texi: Fixed broken links, added 1.3.39 links.
588
589 1.3.39.hwn1
590 ===========
591
592 * Glossary updates by Christian Mondrup.
593
594 * Bugfix: use generic properties in lyrics too. This fixes the
595 \property textStyle for lyrics.
596
597 * Score_element::preset_extent(), used by \property
598 XXXVerticalExtent, so hard code the size of a vertical group. 
599
600 * Don't fix up reference points for originals of broken
601 spanners. Fixes spurious "orphaned score-element" warnings.
602
603 * buildscripts/make-cygwin-cross.sh: Use rx-1.5 instead of regex (Jeffrey).
604
605 * scm/lily.scm: Fixed check for Windows: by default don't use scm regex.
606
607 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: Significantly smaller
608 patch for guile.
609
610 * buildscripts/make-cygwin-cross.sh: Compile native package GNU regex,
611 which should fix Windows problems with guile.  Also added input directory
612 to zip file.
613
614 * stepmake/aclocal.m4: Added decent checking for version of guile, and 
615 fixed warning message.
616
617 * lily/lexer.ll (My_lily_lexer): Bugfix: lookup chordmodifiers in the
618 chord-modifier table (not in the pitch list).
619
620 1.3.39
621 ======
622
623 1.3.38.hwn2
624 ===========
625
626 * General cleanups of My_lily_parser. 
627
628 * Start of a Chord_tremolo_iterator for the `\repeat 4 "tremolo"'
629 syntax.
630
631 * Moved Score_element::do_space_processing out of the dependency
632 mechanism.
633
634 * Use Scheme for notename tables.  Removed uppercase letters for low
635 octave notes. Removed Notename_table.
636
637 * Fixed core dump with declared "\key  ; "
638
639 * Extra robustness warning for Side_position_interface::aligned_on_self ()
640
641 * Extra robustness: make sure that first and last columns are breakable.
642         
643 1.3.38.jcn4
644 ===========
645
646 * stepmake/aclocal.m4: Added support for cross-compiling with guile.
647
648 * buildscripts/make-cygwin-cross.sh: A try at dropping cygwin1.dll
649  dependency by using mingw.  Compiling guile is too much to ask
650  for mingw, though.  Also:
651  - rename python scripts .py (request from Alain)
652  - install native packages under their own, separate root. (Alain)
653
654 * lily.scm: Don't use regex module when running on
655 Windows. (Shamus)
656
657 * lily/staff-margin-engraver.cc (acknowledge_element): If
658 possible, hang y-axis of margin script to span-bar.  This fixes
659 vertical placement of margin scripts attached to staff groups.
660
661 * help2man-rules.make: Fixes for generating manpages by copying
662 and for building using --scrdir.
663
664 * stepmake/stepmake/generic-targets.make: Preserve date stamp of
665 config.h, version.hh files file when copying.
666
667 * buildscripts/make-cygwin-cross.sh: made number of fixes:
668         - add `Cygnus/' prefix to directories in .zip-file too.
669         - package guile too.
670         - don't link to cygwin1.dll
671
672 * stepmake/stepmake/install-targets.make: bugfix, don't fail if directory
673   is not emty when uninstalling.
674         
675 * stepmake/stepmake/generic-targets.make: added man target.
676
677 * buildscripts/make-cygwin-cross.sh: new script for cross-building cygwin
678   development tools and lilypond executable.
679
680 * Documentation/ntweb/lilypond-manpages.patch: provide pre-built
681   manpages, so that make doesn't fail on help2man trying to execute
682   a GNU/windows executable.     
683
684 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: new patch for
685   guile-1.3.4.  
686
687 * flower/libc-extension.cc (memmem): cygwin compile fix.
688
689 1.3.38
690 ======
691
692 1.3.37.hwn1
693 ===========
694
695 * (generic-property.scm) added \property tieDash to set dashing on
696 ties.
697
698 * Removed  ly_eval_str(), we should use scm_eval (Scm_object).
699
700 * Removed scm_to_array (), array_to_scm (), associated junk. Reverted
701 undocumented .29 patch that made Bezier::control_ into an
702 Array<Offset>.  Added some comments documenting the reasons for the
703 changes.
704
705 * Revert generic-property.scm of .37 fix, fix the real problem in
706 property-engraver.cc: use the right symbol to check if element
707 property is already set.
708
709 1.3.37.jcn2
710 ===========
711
712 * Fixed srcdir build, so that you can do:
713
714       tar xzf releases/lilypond-x.y.z
715       mkdir <build>
716       cd <build>
717       ../lilypond-x.y.z/configure
718       make
719
720   as with any other gnu package.  All build output goes to <build>/out.
721
722 * Changed and fixed use of different configurations, and different output
723   directories.  Finally, you can use different configurations alongside
724   eachother.  From make/stepmake.make:
725
726       # Use alternate configurations alongside eachother:
727       #
728       #     ./configure --enable-configsuffix=debug
729       #     make conf=debug
730       #
731       # uses config-debug.make and config-debug.h; output goes to out-debug.
732       #
733
734       # Use same configuration, but different output directory:
735       #
736       #     make out=www
737       #
738       # uses config.make and config.h; output goes to out-www.
739       #
740
741
742 * Fixed performance of (de)crescendi.
743
744 * Better documentation for arithmetic_multiplier and arithmetic_basicspace
745   in params.ly.
746
747 * Added instrument-equaliser for MIDI output, see scm/midi.scm, and
748   properties midiMinimumVolume, midiMaximumVolume, ranges [0,1].
749
750 * Changed absolute midi volume settings into factor of full scale.
751
752 * Fixed another dynamic-line-spanner bug, it gets hairy.
753
754 * Added warning for spanners that are not fully contained in parent spanner.
755
756
757 1.3.37
758 ======
759 1.3.36.hwn1
760 ===========
761
762 * Abstract Align_element into Align_interface. Removed
763 Axis_align_{item,spanner}, Align_element, Super_element, all multiple
764 inheritance in the backend.
765
766 * new Gade score, INSTALL.texi fixes (thanks, Mats)
767
768 * Removed Item::hpos_f (), Score_element::{get,set}_real ()
769
770 * comments detailing properties for Axis_group_interface,
771 Side_position_interface, Score_element, Item and Spanner
772
773 1.3.36.jcn3
774 ===========
775
776 * Fixed vertical dimensions of elements in dynamic line spanner by adding
777   axis-group to dynamic line spanner.
778
779 * Bugfix: line-spanner lasts always full duration of (de)crescendi.
780
781 * Bugfix: broken (de)crescendi on a dynamic-line-spanner.
782
783 * Bugfix: compilation dynamic-engraver.
784
785 * Added and updated a faq about postscript and ghostscript.
786
787 * Fixed order of slurVerticalDirection verticalDirection in
788   generic-property.scm.  Similar fixes for Stem, Tie, etc.
789
790 * Added a Text_engraver to GraceContext.  Maybe it was removed on
791   purpose: scripst on grace notes seem broken, they appear on the
792   main note.
793
794 * Bugfix: volume effect of (de)crescendi was sometimes wrong way round.
795
796 1.3.36
797 ======
798 1.3.35.hwn1
799 ===========
800
801 * textEmptyDimension changed into textNonEmpty, default: off,
802 ie. texts don't occupy space.
803
804 * Use STL map for Lookup::lookup_p_tab_p_
805
806 * Abstracted Axis_group_element into Axis_group_interface, and removed
807 Axis_group_element. This eliminates some multiple inheritance in the
808 backend
809
810 1.3.35.jcn1
811 ===========
812
813 * Added minimum-space property to Side_position_interface.  Used in
814   positioning of Volta_spanner: voltaMinimumSpace.
815
816 * Fixed and cleaned-up volta-spanner.
817
818 * Moved directional-element.cc -> directional-element-interface.cc
819
820 * Renamed all `process_requests' to `process_music', which fixes
821   midi performance.
822
823 * Fixed dimensions (more x-y interchanges) of brace, bracket and
824   volta-spanner.
825
826 * Bit half-baken fix in to get similar vertical placement of orphaned vs.
827   line-spanned dynamic elements.
828
829 * Added property bracketCollapseHeight: the minimal size of a staff bracket
830   that will be typeset.  Smaller brackets will not be displayed.  This
831   fixes the (in 1.3.x reintroduced) funny duck-beak-bracket-bug (sorry).
832
833 * Removed some dissonant chords from Coriolan
834
835 1.3.35
836 ======
837
838 * Removed Documentation/programmer directory 
839
840 1.3.34.jcn3
841 ===========
842
843 * Small enhancements to Staff_margin_engraver:
844    - by default, the marginScript left aligns the text
845    - to set the text style, use property marginScriptTextStyle
846    - to change the alignment, use property marginScriptHorizontalAlignment
847      (centred and right alignment require manual padding settings).
848
849 * Print a friendly message if the manual pages failed to build.
850
851 * Bugfix: dynamicDirection now overrides verticalDirection setting.
852
853 * Warning messages and nl.po
854
855 * Fixed vertical alignment for all dynamic items and (reluctantly)
856   reinstated old directional behaviour for orphaned dynamics.
857
858 * Finished maximumRestCount property.
859
860 1.3.34
861 ======
862 1.3.33.hwn2
863 ===========
864
865 * Print key without setting key, syntax "\key ;". General cleanups of
866 key-item.
867
868 * Add paragraph tags in HTML output of mudela-book.  Music fragment
869 don't run into the text anymore.
870
871 * Bugfix: don't align the first line of text. (Lookup::text ()).
872
873 * Abstract away data members of Axis_group_element, Align_element
874
875
876 1.3.33.jcn3
877 ===========
878
879 * Added helpful properties instrumentScriptPadding/instrScriptPadding for
880   Staff_margin_engraver.
881
882 * Removed some empty files, substituted (c) 1999 occurrences.
883
884 * Added \property maximumRestCount.  It will prevent showing (or actually:
885   moving in case of a collision) more than maximumRestCount similar rests.
886   WIP!
887
888 * Rewrote Staff_margin_engraver.  Staff margin texts now hang on a new
889   breakable item: Left_edge_item.
890
891 * Fixed vertical alignment for dynamic elements.  Orphaned dynamic items
892   (not supported by a Dynamic_line_spanner) still collide with Staff,
893   although they now have staff support, which was supposed to fix this.
894
895 * Fixed Staff_margin_engraver for "instrument", "instr" is still broken.
896
897 * Dynamic elements are only put in a Dynamic_line_spanner if there
898   actually is more than one adjacent note-column with a dynamic.
899   This breaks the fine looks of all dynamics, again :-)
900
901
902
903
904 1.3.33
905 ======
906
907 1.3.32.hwn3
908 ===========
909
910 * Experiment: use STL map for Scheme_hash_table; Is there a speedup?
911
912 * Bugfix: print brace iso. bracket for Piano / GrandStaff
913
914 * Change naming: change do_post_processsing into after_line_breaking,
915 do_pre_processsing into before_line_breaking and do_process_requests
916 into do_process_music.
917
918 * Bugfix in hash-table.hh: do quadratic probing, and not cubic probing.
919
920 * Display property name for type error.
921
922 * Cleanups for Dynamic_engraver and Dynamic_line_spanner.
923
924 * Warn if last column in score is musical. Helps catch programming errors.
925
926 * Spanner::spanned_drul_ now is private. 
927
928 * Rewrote some bar code: moved molecule functions out of Lookup.
929
930 1.3.32.jcn3
931 ===========
932
933 * Embedded newlines in text items are now allowed.  This helps avoiding
934   TeX-hacking in some cases.  See input/test/coriolan-margin.ly
935
936 * Fixed stupid x-y interchange bug for staff-bracket.  This fixes
937   placement of staff-brackets.
938
939 * Fixed bracket/arch-thickness interchange bug, and made bracket a bit
940   thinner.
941
942 * Fixed slur/bezier-beautiful name mismatch.  This should fix the steep
943   slurs that were apparently reintroduced in 1.3.29.
944
945 * Made some small fixes to Coriolan.
946
947 * Removed duplicate lily/output-property-engraver.hh.
948
949 * Removed optional use of vanilla spanner in Dynamic_engraver.
950
951 * Fixed (measured) tremolo for Stem and Beam. Merged declarations
952   stem-engraver.hh and chord-tremolo-engraver.hh into their .cc
953   implementation file.  Also fixed looks of Chord tremolo, input and
954   implementation is still ugly.
955
956 * Added *.yy and *.ll to TAGS, to that tags-find-replace doesn't omit
957   parser and lexer.
958
959 1.3.31.mb1
960 =========
961
962 * Fixed \specialkey and \normalkey. Updated documentation.
963
964 1.3.32
965 ======
966 1.3.31.jcn5
967 ===========
968
969 * Fixed and cleaned-up Dynamic_engraver.  Optionionally uses vanilla
970   spanner instead of Dynamic_line_spanner.
971
972 * Made gcc-2.95 compile fix in libc-extension.
973
974 * Various fixes to Coriolan, score starts to look acceptable.
975
976 * Moved optional text of crescendo into Crescendo spanner.  Fixed horizontal
977   and vertical alignment of dynamics.
978
979 * Added new text crescendo spanners to Coriolan and made some fixes.
980   If you're using timidity, use the -EO option to prevent notes get
981   stuck.  I'm not sure whose fault this is, Lily's MIDI output may be
982   stretching the standard a bit.
983
984 * Adjacent dynamic markings are now grouped on a horizontal line, but it's
985   not perfect yet: they're always below the staff and no horizontal spacing
986   is done.  Also, character metrics of dynamics are still not used.
987   See: input/test/crescendi.ly and input/test/dyn-line.ly
988
989 * Cleaned up Span_dynamic_performer.
990
991 1.3.31
992 ======
993 1.3.30.mb1
994 =========
995
996 * Fixed the page layout, reintroducing space for the header and
997   trying to keep piece titles on the same page as the piece.
998   The header and footer can now contain several lines.
999
1000 1.3.30.jcn3
1001 ===========
1002
1003 * Lily now also performs crescendi and decrescendi in MIDI output:
1004   Span_dynamic_performer (bit scrappy).
1005
1006 * Added preliminary support for crescendi/decrescendi other than `hairpins',
1007   eg: `cresc. poco `a poco -- -- --'
1008
1009 * Made MIDI tie performance fix.
1010
1011 1.3.30.jcn2
1012 ===========
1013
1014 * Lily now performs absolute dynamics in MIDI output.
1015
1016 * Included David's comments on opus47 in TODO.
1017
1018 1.3.30.jcn1
1019 ===========
1020
1021 * More Coriolan: flute-1,2; oboe-1,2; clarinet-1,2; 
1022   fixes and remainder french horn-1,2; trombone-1,2;
1023   fagotto-1,2; timpani; and several fixes.
1024   
1025 1.3.30.uu1
1026 ==========
1027
1028 * Remove some old doco from programmer/ and put on personal homepage.
1029
1030 * Removed union-find from flower library.
1031
1032 * Only quantise tie horizontal part inside the staff.
1033
1034 1.3.30
1035 ======
1036 1.3.29.hwn1
1037 ===========
1038
1039 * Report type errors for \property. Helps with converting 1.2 input
1040
1041 * Use Scheme for Align_element; fixed graceAlignPosition 
1042 and removed \property alignmentReference in the process.
1043
1044 * Use generic properties for lyrics too.  This fixes \property
1045 Lyrics.textStyle
1046
1047
1048 * Add relative distance for constraints between non-column items.
1049
1050 * Automatic \marks: use "\mark ; ". The mark numbers or letters are
1051 increased automatically.
1052
1053 * Translators now only change properties of their own context. This
1054 removes the 2nd argument to Translator::get_property()
1055
1056 * Bugfix for Metapost mode
1057
1058 1.3.29.uu1
1059 ==========
1060
1061 * Updates of glossary  (Christian Mondrup)
1062
1063 * Bugfix with bar number placement
1064
1065 * Moved links to bibliography/ and misc/ to main index.
1066
1067 1.3.29
1068 ======
1069
1070 * Moved Slur-specific code from Bezier_bow to Slur and Slur_bezier_bow.
1071   Slurs are now calculated just once.
1072
1073 * Bezier_bow gets constants from paper.  Still no sensible solution for
1074   magic asymmetry gradient step constants.
1075
1076 * Reinstantiated tangent-controls, more flexible than ever.  You can choose
1077   between area asymmetry and tangent-controls.  My guess is, tangent controls
1078   will be junked in 1.3.30.
1079
1080 * Slur area: only look at x-gradient.
1081
1082 * Added credits for some symbols of as5/9 fonts.
1083
1084 * Bugfix: don't make almost flat slurs, change in de-uglyfy slur.  
1085
1086 * Bugfix: midi2ly put out recent version (ugh).
1087
1088 1.3.28.hwn2
1089 ===========
1090
1091 * Bugfix: don't forget to process staffSpace and numberOfStaffLines
1092 properties.
1093
1094 * Removed Gade score. To appear (shortly?) on Mutopia. 
1095
1096 * Make Bar_script_engraver look for typeVisibilityFunction (eg
1097 property barNumberVisibilityFunction). Changed the names of the Scheme
1098 functions to be understandable. See input/test/bar-script-visibility.ly
1099
1100 * rewrite of class Molecule. It has now reached the ultimate quality
1101 plateau. All molecule data is now shared.
1102
1103 1.3.28
1104 ======
1105
1106 * Update of the glossary by Christian Mondrup 
1107
1108 * Moved horn-concerto-3 out of tarball to private website, removed
1109 W.A.Mozart subdirectory.
1110
1111 1.3.27.hwn1
1112 ===========
1113
1114 * Bugfix: don't make giant ties if the horizontal part of tie is near
1115 the center.
1116
1117 * Small optimizations to be a little more careful with mem usage. 
1118
1119 * Website change: put all examples in one directory.
1120
1121 * Removed Atom as a separate type.  Now use SCM, and since we use
1122 function composition, Atoms are immutable, so they don't have to be
1123 copied. This makes life easier, hopefully this is quicker and uses
1124 less memory.
1125
1126 1.3.27.jcn1
1127 ===========
1128
1129 * Bezier_bow: minimise_enclosed_area
1130
1131 1.3.27
1132 ======
1133
1134 1.3.26.hwn4
1135 ===========
1136
1137 * Tuplet-spanner slope calculation now looks better on tupletted rests
1138 (patch courtesy Laurent Martelli)
1139
1140 * Bugfix (Staff_performer::new_instrument_str ()) check type of
1141 \property "instrument"
1142
1143 * New mechanism for breaking lines: do not copy & prune the element
1144 property list separately, but combine these steps. Dramatically
1145 reduces memory usage for large scores.
1146
1147 1.3.27
1148 ======
1149 1.3.26.jcn2
1150 ===========
1151
1152 * Bugfix: font used in volta-spanner calculation.
1153
1154 * Added simple selection list to webpage, inspired by sawmill.
1155  
1156 * Devised kludge for ascii 5 character font pitches.
1157  
1158 * Substitutions: interline, 1997,1998, @stack.nl and small typo fixes.
1159
1160 1.3.26.hwn1
1161 ===========
1162
1163 * Plug memory leaks related to Moment:
1164   - Spacing_engraver::do_pre_move_processing ()
1165   - make_rational ()/make-rational
1166   - Paper_column::Paper_column ()
1167
1168 * Plug memory leak in Paper_outputter::output_{String,Real,int}_def()
1169
1170 * Plug memory leak in Score_engraver::set_columns ()
1171
1172 * Plug memory leak in Scheme_hash_table::set()
1173
1174 * Plug memory leak in Score_element::molecule_extent ()
1175
1176 * Bugfix: don't crash if a slur doesn't span anything.
1177
1178 * Bugfix: don't crash if doing beams without a staff symbol.
1179
1180 * Generic element property setting:
1181
1182         \outputproperty #predicate #'symbol = #value
1183
1184 Will set the element property symbol to value, for any elements that
1185 return true for PREDICATE.  This allows you to virtually tweak *ANY*
1186 property of the output. Example in input/test/generic-output-property.ly
1187
1188 1.3.26
1189 ======
1190
1191 * lilypond as as2ly: --help and --version to stdout.  Regular identify 
1192   to stderr.  This fixes help2man's manpage generation.
1193
1194 * configure: substitute full path for perl and guile in scripts.
1195
1196 * Added ascii slur and volta.  There seems to be a Lily bug in volta placement.
1197
1198 * Bugfix: default font now user settable
1199
1200 * as2text: handle plain ascii font, read from stdin, you can now do:
1201
1202   echo "\time 4/4; g''1 g2 g4. g8" | lilypond -f as -i init-as.fly - | as2text
1203
1204 1.3.25.hwn1
1205 ===========
1206
1207 * Bugfix: second half of broken ties now are displayed again.
1208
1209 * Bugfix: add clef to the support of 8 text in the G_8 clefs. Center
1210 it horizontally on the clef.
1211
1212 * Added Tie_column spanner. Ties in tied chords now get proper directionsa.
1213
1214 * Bugfix: unbroken repeat barlines now work, eg. |:
1215
1216 * Added Request_iterator to make more flexible constructions possible.
1217
1218 1.3.25
1219 ======
1220 * as2text: catch missing font/character errors, added default font, set text.
1221
1222 * New ascii fonts and glyphs: as5 as-numeral4 as-braces9
1223
1224 * Ascii output, minimal support:
1225   - AsciiScript Fonts: mf/*.af
1226   - Init files: ly/*-as.*ly 
1227   - AsciiScript translation to text: scripts/as2text.scm
1228   - input/test/as.fly input/test/as1.fly
1229   - Output support: lily/lily.scm
1230   - Try:
1231       lilypond -f as -i init-as.fly input/test/as.fly
1232       as2text as.as
1233
1234 1.3.24.hwn1
1235 ===========
1236
1237 * The horizontal part of ties will avoid collision with staff lines.
1238
1239 * Plugged memory leak: don't protect Atom function.
1240
1241 * Lookup cleanups. Made lots of functions static. Moved some code out
1242 of Lookup.
1243
1244
1245
1246 1.3.24.hwn1
1247 ===========
1248
1249 * Bugfix: ly2dvi.py exits succesfully when encountering --help and
1250 does not delete any of the file_ly*.tex.
1251
1252 * Added header and footer support in ly2dvi.py
1253
1254 1.3.24
1255 ======
1256
1257 * Added a ROADMAP file explaining the source directory layout.
1258
1259 * Minor tweak in the feta 6 and 9 numeral
1260  
1261 * Moved files from lib/ to flower/
1262
1263 * Removed Note_head_side class.
1264
1265 * Updated the webpage to be a little more chatty. 
1266
1267 * Small Local_key_engraver optimization: only lookup timing engraver once.
1268
1269 * Fixed dashed slurs
1270
1271 * Rewrite of Slur code.  Be much more picky about slur shapes. We try
1272 to offset the slur instead of bending it too much
1273
1274 * Look at stem directions for tie direction.
1275
1276 * Compound multimeasure rests. Put measures_i_ variable in an element
1277 property.  Made the symbol a lot wider.
1278
1279 * Time signature small cleanups.
1280
1281 1.3.22.hwn2
1282 ===========
1283
1284 * Symbols opposite to stem (eg marcato) now get the proper glyph in up
1285 version.
1286
1287 * Breathing marks now have a direction by default.
1288
1289 * Do set generic script properties.
1290
1291 * Also put tuplet brackets under notes.
1292
1293 * Score_element_info: only store origin of element, but not the path
1294 to parent translators. Saves a little memory, and removes some complexity.
1295
1296
1297 1.3.22.hwn1
1298 ===========
1299
1300 * Autobeaming in time sigs that don't have 1/4 beats fixed.
1301
1302 * (De)crescendi should now work. (Thanks Michael)
1303
1304 * Better error reporting for conflicting time signatures.
1305
1306 * Line_number_engraver: output locations of note head
1307 definitions. Very handy when entering complicated scores.
1308
1309 * Rewrote multi measure rest support: now they are entered as spanners
1310 (\commandspanrequest \start "rest"). RXXXX is an abbreviation for
1311
1312   { \commandspanrequest \start "rest"
1313     SXXXX
1314     \commandspanrequest \stop "rest"
1315   }
1316
1317 * Removed support of percent style repetitions. 
1318
1319 * Put texts outside the staff.
1320
1321 1.3.21.mb1
1322 ==========
1323 * Getopt bugfix: don't assert on certain errors.
1324
1325 * ly2dvi: Remove unnecessary space for the page headers.
1326
1327 * Bugfix convert-mudela
1328
1329 1.3.21.hwn1
1330 ===========
1331
1332 * Bugfix in lilypond-mode.el: eval-buffering now uses file name and
1333 not buffer name.
1334
1335 * Scrapped tupletVisibility property. Now use tupletNumberVisibility,
1336 tupletBracketVisibility, with Scheme value #t, #f or 'if-no-beam.
1337 \property tupletInvisible will stop all tuplet spanner creation.
1338
1339 * Don't go berserk if tuplet spanner is on only one column.
1340
1341 * Use SCMs & Smobs for Molecules & atoms.  This uses less
1342 scm_(un)protect_object () calls, so the output stage should be faster.
1343
1344 * Added \property tupletSpannerDuration, to make multiple tuplet signs
1345 with one \times.
1346
1347 * Some programming Errors in spacing are now caught. Lily does not
1348 hang when encountering degenerate springs.
1349
1350 * Allow beams to start and end over rests
1351
1352 1.3.19.hwn2
1353 ===========
1354 * Fix disappearing clefs when clefs are not printed with a barline.
1355
1356 1.3.20.jcn2
1357 ==========
1358
1359 * SCM properties beamHeight and beamVerticalposition now use half-spaces:
1360   input/test/beam-control.fly
1361 * Added \context Voice to .fly and .sly; the default \context Staff is almost
1362   never what you expect
1363 * Fixed decision for .sly/.fly in lilypond-mode.
1364
1365 1.3.19.hwn1
1366 ==========
1367
1368 * Clean up font-metric hierarchy, use Adobe AFM code to parse AFM files.
1369 Cleanup mf-to-table.py
1370
1371 * Fixed embarassing slur bug.
1372
1373 1.3.19.jcn1
1374 ==========
1375
1376 * lilypond-mode.el: guess init file for lily-*-region, lily-mode-map bindings
1377
1378 1.3.18.uu2
1379 ==========
1380
1381 * lilypond-mode.el for emacs supersedes mudela-mode.el 
1382
1383 * Tuplet spanners don't collide with encompassing notes. 
1384
1385 * Gobbled Adobe parseAFM* code, for future use.
1386
1387 * Big 1999 to 2000 search/replace.
1388
1389 * Big interline to staff_space search/replace for mf files.
1390
1391 * Removed Bow class, and split code into Tie and Slur
1392
1393 * Don't put scripts on grace notes.
1394
1395 * Font_metric uses SCM for name field.
1396
1397 * Various compilation fixes.
1398
1399 1.3.17.jcn2
1400 ===========
1401
1402 * Bugfix: beams with less than one (visible) stem
1403
1404 * small fixes to pa.ly
1405
1406 1.3.17.jcn1
1407 ===========
1408
1409 * Fixed bug that made multi-measure rest barnumber counts go wild.
1410 (even more scm2int/int2scm mixups!)
1411
1412 * mutopia/J.S.Bach/pa.ly: organ score (for my father)
1413
1414 * small fix to mutopia/J.S.Bach/Duette/violino-ii.ly
1415
1416 1.3.17.hwn2
1417 ===========
1418
1419 * Remove Paper_def calls in bezier-bow.cc
1420
1421 * Remove data members of Tuplet_spanner,  Volta_spanner
1422
1423 * hang_on_clef, property hangOnClef removed
1424
1425 * Bar::type_str_ mode into element property `glyph'. Use a Scheme
1426 function to determine breaking behavior.
1427
1428 * More Scheme typechecking.
1429
1430 * Be strict about the difference between strings and symbols for conversion.
1431
1432 * Fixed bug that made 1st line offset to right fixed. Bugfix courtesy
1433 Laurent Martelli.
1434
1435 * Partial French translation, courtesy Laurent Martelli.
1436
1437 * Small corrections in NL translation. 
1438
1439 1.3.17.hwn1
1440 ===========
1441
1442 * Added mensural note heads (noteHeadStyle = "mensural") Additionally,
1443 we have a longa note head.  noteHeadStyle = "harmonic" is not
1444 supported anymore. (for now, that is)  
1445
1446 * Reference manual update. Document \properties with examples
1447
1448 * fix mudela-book --help
1449
1450 * Use element properties for Text_item::text_str_, Clef_item::symbol_,
1451 Key_item::c0_position_
1452
1453 * Clef_engraver general cleanup. Use alists (\property
1454 supportedClefTypes, clefPitches) for clef types.
1455
1456 * Use progress_indication () for progress. Don't include <iostream.h> directly 
1457 Don't include <string.h>, <math.h> from headers.
1458
1459
1460 1.3.16.hwn1
1461 ===========
1462
1463 * \property stemCentered (boolean): centers stem on note head. See
1464 input/test/stem-centered.ly
1465
1466 * input/trip.ly, small test of lots of features.
1467
1468 * \property Staff.collisionMergeDotted: merge equal noteheads
1469 with different dot count. See input/test/collision-merge-dotted.fly
1470
1471 * Dotted rest bugfix 
1472
1473 * Don't crash if a slur does not span any notes.
1474
1475 * Volta repeats fixed.
1476
1477 * cleanup of Note_heads_engraver
1478
1479 * removed dots_i_ member of Dots
1480
1481 1.3.16.jcn1
1482 ===========
1483 * Fixed cross staff slurs.  It seems that cross-staff sign
1484   was swapped.
1485
1486 1.3.15.hwn1
1487 ===========
1488
1489 * Fixed bug in stem code.  Stem in chords works again.  Small
1490 stem cleanups.
1491
1492 * Use element properties for Staff_symbol.
1493
1494 * \property sparseTies (boolean).  Only make one tie in the
1495 middle for tied chords.
1496
1497 * Junked Directional_spanner, Column_info.
1498 Directional_element now is element interface `Directional_element_interface'
1499
1500 * cleanup: use to_boolean () iso. gh_boolean_p && gh_bool2scm
1501
1502 pl 15.jcn4
1503         - removed old notename2scm conversion
1504         - beam-dir-algorithm through scm
1505         - bfs paper-scm
1506         - bf: knee-stemlengths
1507
1508 pl 15.jcn3
1509         - moved poor man's stem arrays to scm
1510         
1511 pl 15.jcn2
1512         - beam quanting using scm lists
1513
1514 pl 14.hwn1jcn1
1515         - chord-name uses scm members
1516         - bfs: knee with different mults, interstaff knee, auto-knee
1517
1518 **********
1519 pl 14.hwn1
1520         - specialize duration.cc for lily, move out of lib/
1521         - stem cleanup
1522         - more SCM typechecking
1523         - stafflineleading -> staff_space
1524         - bf: rod distances.
1525         - junk some unused code.
1526         
1527 pl 13.hwn2
1528         - paper/score column cleanups. Junk Score_column type
1529
1530 pl 13.hwn1
1531         - Bezier_bow/Bezier cleanups
1532         - bf: rest under beam.
1533         
1534 pl 13.jcn2
1535         - untangled Chord_name (item) and Chord (list-of-pitches)
1536         
1537 pl 13.jcn1
1538         - bezier-bow fix
1539
1540 **********
1541 pl 12.hwn1
1542         - polynomial.hh
1543         - bf: generic properties
1544         - quantise_iv () fix.
1545         - bezier cleanup
1546         - class Polynomial 
1547         - use smobs for font metric tables/hashes.
1548         - nl.po bf
1549
1550 **********
1551 pl 11.jcn3
1552         - small beam fixes (interstaff knees still broken)
1553
1554 pl 11.hwn1
1555         - bf: dots
1556         - bf: harmonic note heads
1557         - revise stem, notehead, rest
1558
1559 pl 11.jcn2
1560         - included missing scm,ly updates
1561         - bf: urg to_dir () takes scm..
1562         - bf's: if (Foo b = bar != 1)
1563         - beam cleanup
1564
1565 *********
1566 pl 10.uu1
1567         - various small bfs
1568         - bf: alignment reversed
1569         - Staff_symbol_referencer -> Staff_symbol_referencer_interface
1570         - bf: staccato pos
1571         - Knee fixes (thanks, Jan)
1572
1573 pl 10.jcn2
1574         - fixes for invisible beamed stems
1575         - removed steminfo from properties, don't cache Stem_info
1576
1577 pl 10.jcn1
1578         - steminfo to properties
1579         - dropped internote dim for stem-beams
1580
1581 *********
1582 pl 9.hwn1
1583         - abstracting Staff_symbol_referencer to an interface.
1584         - quantised_position for staccato dots.
1585         - standchen fixes
1586         - junk Score_element::do_{width,height}: set callbacks directly.
1587         - merge Score_element, Graphical_element
1588         - merge Axis_group_element, Graphical_axis_group
1589         - junk pointer fields from Score_element derived classes
1590         - junk obsolete do_substitute_dependency code.
1591
1592 **********
1593
1594 pl 8.hwn2
1595         - staff-support for Crescendi.
1596         - padding for accidentals.
1597         - cascading offset callbacks
1598
1599 pl 8.hwn1
1600         - note-head-side 
1601         - naming Staff_sidify -> Side_position_interface
1602
1603 ***********
1604
1605 pl 7.mb1
1606         - bf: timeSignatureStyle works again
1607
1608 pl 7.hwn1
1609         - Dirk Latterman key/mmrest patches
1610         - Offset callbacks in Dimension_cache
1611         - Junked Staff_side_*
1612         - Staff_sidify: interface class.
1613         - prelude-{1,2} fixes.
1614
1615 ***********
1616 pl 6.uu2
1617         - bf: PS font selecting.
1618
1619 pl 6.uu1
1620         - bf: ls-latex
1621         - mudela-book --no-pictures
1622         - bf: ly2dvi
1623         - convert-mudela: beamAuto moment syntax. 
1624
1625 pl 6.jcn3
1626         - fixed scm output
1627
1628 pl 6.jcn2
1629         - half-baken ly-gulp-file in scm
1630         - resurrected scm output through guile
1631
1632 pl 5.mb1
1633         - bf: version of init.sly, init.fly
1634         - Clarify necessary version of texinfo
1635         - bf: texi files, minor errors and syntax compatible with 
1636           older makeinfo
1637
1638 pl 6.jcn1
1639         - bf: scm output
1640
1641 *******
1642
1643 pl 5.hwn2
1644         - Bach preludes: mutopification
1645         - dots are Directional_element too; use \property dotDirection
1646         - moved some stuff out of Lookup
1647         - bf: dots
1648         - font selection mechanics changed.
1649
1650 pl 5.uu1
1651         - bf: smob allocation (thanks David!)
1652
1653 pl 5.hwn1
1654         - junked \shape. Now use #'margin-shape 
1655         - timing: one_beat -> \property beatLength
1656         - bf convert-mudela
1657
1658 ************
1659
1660 pl 4.uu1
1661         - input/test/ \property fixes.
1662         - gcc 2.95 fix
1663
1664 pl 4.hwn1
1665         - Break_align_engraver,
1666         break align order from  \property breakAlignOrder
1667         - junked Score_priority_engraver
1668         - moved Time_description into Timing_translator
1669         - use properties for timing, see input/test/timing.fly
1670         * removed \cadenza ; now use \property Score.timing
1671         * \property measurePosition
1672         * \property measureLength
1673         * \property currentBarNumber
1674         - Note_name_engraver , \context NoteNames
1675
1676
1677 pl 4.jcn1
1678         - junked some chord guessing code
1679         - bf: lookup size (-1) for chord-name accidentals
1680         - bf: ly2dvi's MFINPUTS setting
1681
1682 *************
1683 pl 2.jcn3
1684         - chords:
1685           * Chord is item
1686           * junked TeX hacking
1687           * configurable with styled strings from scm
1688           * fixes: dim, /no X, tonic != C
1689
1690 pl 2.jcn2
1691         - chords from  scm 
1692
1693
1694 pl 3.hwn2
1695         - visibility-lambdas into default elt properties SCM.
1696         - clef types in SCM
1697         - verticalDirection properties now in SCM.
1698
1699 pl 3.hwn1
1700         - move position_i_ into Staff_symbol_referencer
1701         - move dir_ into Directional_element baseclass
1702
1703 ****************
1704
1705 pl 2.hwn1
1706         - bf: dynamic style.
1707         - prepare to move dir_ into SCM. 
1708
1709 pl 2.jcn2
1710         - chord fixes: 
1711            * inversion request: no inversion guessing for chord entry
1712            * bass request: c/+b to add bass note not part of chord
1713            * -dim modifier works on all thirds
1714            * colon iso dash as tonic/modifier-additions separator
1715            * C:m5- displays as "Cdim"
1716            * C:m5-7- displays as "Co"
1717
1718 pl 2.jcn1
1719         - moved bracket vars to params
1720         - reverted broken lilypond-devel
1721
1722 *************
1723 pl 1.uu1
1724         - David's patches:
1725         * mfplain.mp detection
1726         * Graphical_element::common_refpoint() robuster.
1727         * fixes for mudela-mode.el
1728         - Dirk's patches:
1729         * key signature placement,
1730         * tied accidentals.
1731
1732 pl 1.hwn2
1733         - extra-offset elt property.
1734         - junked Chord_tremolo
1735
1736 pl 1.hwn1
1737         - changed calling convention for {get,set,remove}_elt_property()
1738         - rm'd some mutopia examples.
1739
1740 *******
1741 pl 0.hwn2,1
1742       - Generic properties and Property_engraver. Moved most of the
1743 properties.
1744
1745 0.lu1
1746         - resurrected midi2ly
1747
1748 0.jcn1
1749         - bf: lyrics lexer
1750         - reverted mup2ly revert
1751
1752 pl 3.uu1:
1753         - frontport of 1.2.17 patches.
1754
1755 **********
1756
1757 1.3.0:
1758
1759 pl 15.hwn2
1760         - loads of bfs.
1761
1762 pl x.jcn3
1763         - another workaround: reset buffer state for scm_ftell ()
1764         - workaround for broken scm_ftell ()
1765
1766 pl 15.hwn1
1767         - \properties are now SCM s, junk Scalar type
1768         - use SCM for strings in parser.
1769         - Moment derived from Rational. Moment may be smobified.
1770
1771 pl 15.jcn4
1772         - direct #... to scm parser  (Thanks to Gary Houston)