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