]> git.donarmstrong.com Git - lilypond.git/blob - CHANGES
patch::: 1.3.87.jcn2
[lilypond.git] / CHANGES
1 1.3.87.jcn2
2 ===========
3
4 * Added skip (M) to music-iterator which fixes ugly non-const hack 
5   of get-music (M).
6
7 1.3.87.jcn1
8 ===========
9
10 * Made bugfix in Simple-music-iterator copy constructor.
11
12 * Fixed get_music for sequential-music-iterator and request-chord-iterator.
13
14
15 1.3.87
16 ======
17
18 1.3.86.jcn2
19 ================
20
21 * Made fixes to part-combine examples and Coriolan.
22
23 * Bugfix: don't dump core on unterminated (de)crescendo.
24
25 * Rolled next (M) also into get_music (M), similar to process (M), so that
26   sequential-music-iterator::get_music (M) returns something useful.
27
28 * Bugfix: part-combiner still expected Music_sequence, where get_music ()
29   now returns plain list of events.
30
31 1.3.86.hwn3
32 ===========
33
34 * Fixed problem with disappearing crescendi across line break.
35
36 * Bugfix: dynamic texts should not be set by text-engraver. 
37
38 * Rewrote and cleaned up music-iterator.
39
40 * etf2ly robustness fixes.
41
42 1.3.85.hwn2
43 ===========
44
45 * Added side-position-interface as an interface identifier, in stead
46 of checking side-support-elements. This fixes a problem with stacked
47 text scripts.
48
49 * Removed spurious set_elt_property ("XX", SCM_EOL) calls.
50
51 * Added \property squashedPosition for Pitch_squash_engraver: the
52 staff-position number to squash noteheads to.
53
54 * Added FAQ entry for script on bar, updated description of mailing
55 lists.
56
57 * Fixed bug with \translator { basicXXXProperties \push ... }
58
59 * Updated and revised call for help in hacking.texi.
60
61 * Bugfix: don't remember accidental if it is tied from the previous note.
62
63 1.3.85
64 ======
65
66 * Separated definition and implementation of contexts (moved
67 definition out of Translator_group into Translator_def)
68  
69
70 * pmx2ly.py fixes: now handles text at beginning of block correctly.
71
72 * update .spec to include scripts. 
73
74 * Changed syntax of \pushproperty:
75
76         \property Voice.basicXXXProperties \push #'foo = #bar
77         \property basicXXXProperties \pop #'foo
78
79         \translator {
80                 basicXXXProperties \push #'foo = #bar
81                 basicXXXProperties \pop #'foo
82         }
83
84 1.3.84.jcn1
85 ===========
86
87 * Updated INSTALL.texi
88
89 1.3.80.tca1
90 ===========
91 * Added Documentation/user/mb-latex.tex, mudela-book+latex example
92   file and test case. Some work on Documentation/user/mudela-book.tely
93
94 * mudela-book.py: any combination of \verb, \begin{verbatim}
95   @code and @example and mudela should work as expected. 
96
97 * dropped [].extend that depend on python 1.5.2
98
99 1.3.84
100 ======
101
102 * pmx2ly, PMX to LilyPond conversion. Succesfully converts barsant.pmx.
103
104 * musedata2ly, a Musedata to LilyPond convertor. Succesfully converts
105 wtk1-fugue2
106
107 * bugfixes for dynamics: make sure that dynamic alignments encompass
108 the dynamics they support, and that any columns they attach to aren't
109 prematurely killed.
110
111 * bugfix: make sure \time gets noticed early enough.
112
113 1.3.83
114 ======
115
116 * small doc updates.
117
118 * Cleanups related to barline handling:
119
120   - Removed Translator_group::get_simple_translator (), and -
121
122   - use properties to communicate about barlines and time sigs. (NOTE:
123     by default a time-signature of 4/4 is printed.)
124
125   - fix repeat bar behavior.
126
127
128 * cleaned up Directional_element_interface
129
130 * add name field to score-elements.
131
132 * comment in some unprotects for Music in parser. Should bring down
133   cpu time and plug some leaks.
134
135 * robustness fixes for etf2ly, tuplets, grace notes. 
136
137 1.3.82
138 ======
139
140 * engraver.ly: cleanups.
141
142 * etf2ly: robustness fixes, handle mac files as well.
143
144 * Smobified Translator and Translator_group, junked
145 Translator_group_identifier.
146
147 * \pushproperty and \popproperty withing \translator, similar to
148 predefining \property, ie.
149
150         \translator { [...] \pushproperty [..] }
151         \translator { [...] \popproperty [..] }
152
153 (these \pushes and \pops are delayed until instantiation, so if you do
154
155
156         \score {
157                 \pushproperty #'basicFooProperties #'bla #VALUE1
158                 \context Voice { \pushproperty #'basicFooProperties #'bar #VALUE2
159                         [..]
160                 }
161         }
162
163 then the setting for basicFooProperties contains both (bla . VALUE1)
164 and (bar . VALUE2).
165
166 * allow \pushproperty #'symbol [..] as well as \pushproperty #'(symbol1 symbol2 ... )
167
168 1.3.81.jcn1
169 ===========
170
171 * Activated regex for windows.
172
173 * New guile-1.4 patch for cross windows build.
174
175 * Added configure messages for metapost checking.
176
177 1.3.81
178 ======
179 1.3.80.gp1
180 ==========
181
182 * Added property LyricVoice.associatedVoice to enable switching associated
183   voice mid-stream. Association still defaults to context name.
184
185 1.3.80.hwn1
186 ===========
187
188 * \pushproperty, \popproperty: property settings with less memory
189 cost. See input/test/pushproperty.ly and Documentation/hacking. Note:
190 syntax is most likely only temporary.
191
192 1.3.80.jcn1
193 ===========
194
195 * (Line-)broken slurs now have vertical trend.
196
197 * Better length for broken ties: no invisibly short ties.  Now ties may
198   collide with time signatures, though.
199
200 * Don't typeset unfinished spanners, but kill them.
201
202 * Added two FAQs (Mats)
203
204 * Made workaround guile-1.4.1 backward incompatible (scm_)eval change.
205   Note that we must use (scm_)eval2 to remain backwards compatible with
206   guile < 1.4.1 snapshot.
207
208 * Reincluded 79.jcn2 fix
209
210 1.3.80
211 ======
212
213 1.3.79.jcn5
214 ===========
215
216 * Created Thread_devnull_engraver and Voice_devnull_engraver iso
217   single A2_devnull_engraver in Thread context.  It seems however
218   that the hack in A2_devnull_engraver works better.
219
220 * Coriolan fixes.
221
222 * Slur attachment fix for chords where case slurdir != stemdir.
223
224 * Made various fixes for (line-)broken slurs.
225
226 * Fixed slur_height (), which fixes most ugly slurs (Yeah!).
227
228 * Fixed some silly url reversals in FAQ.
229
230 * Finished Coriolan music entry (again); entered second viola part.
231
232 * Updated Coriolan to use part combiner on Voice level for wind parts
233   and on Staff level for violi and bassi.
234
235 * Part-combiner now uses duration inquiry, which fixes rhythm-related
236   bugs in determining solo/a2.  Also, rests are taken into account.
237
238 * Another crude fix for almost unexplainable (with a gdb that dumps
239   core on ly_display_scm) all-zero control points slurs.
240
241 * Fixed slurs that crossed through stems and note heads.  Note
242   that beautifying of ugly slurs is still broken.
243
244 * Made crude fixes slurs don't crash, bezier still crashes on
245   infinitely steep slurs (eg flauti-part *with* slur_engraver).
246
247 1.3.79.gp1
248 ==========
249
250 * Replaced empty melisma score element with a property
251
252 * Renamed Voice_alist_entry -> Syllable_group in lyric-phrasing-engraver
253
254 1.3.79.uu1
255 ==========
256
257 * fixed y-position of whole rest
258
259 * fixed sustainPedalPadding
260
261 * etf2ly: articulation, lyrics.
262
263 1.3.79
264 ======
265
266 * etf2ly.py: Finale to LilyPond conversion.
267
268 1.3.78.jcn4
269 ===========
270
271 * Made simple fix to get part-combiner to recognise different rhythms
272
273 * Unhardcoded part combiner and a2-engraver; introduced properties
274   splitInterval, soloADue, soloText, soloIIText, aDueText.
275
276 * Fixed part combiner's too-late problem (Dankje!)
277
278 * Fixed a2-devnull-engraver, a2-engraver.
279
280 * Renamed part combiner music names to "one", "two".
281
282 * Cleaned up decision making in part combiner, renamed to "solo"/"unison"
283
284 1.3.77.mb1
285 ==========
286
287 * Minor documentation updates
288
289 * Mark_engraver: has been broken since .73, fixed!
290
291 1.3.78
292 ======
293
294 * Added a devnull engraver, that junks (notehead) requests of the second
295   stem when combined parts are in unison (a2).
296
297 * Part-combine iterator identifies Soli and A2 parts in threads by 
298   looking at rhythm and pitches.  It switches Voice context automagically,
299   and communicates current state using a2/solo/solo2 properties.
300
301 * Simple A2_engraver (`a due) prints `a2/Solo/Solo II.  Soli seem to
302   arrive one request late.
303
304 * First try at combining parts: part-combine*
305
306 * fixed problem with HaraKiri
307
308 * fixed problem with dynamicDirection
309
310 * fixed problem with nonEmptyText 
311
312 * `Fixed' chord notation, as per request of David Arnold, ie, 
313    Added a chord-name-mode, that only displays chord names
314    when there's a change in the chord-name-scheme, Also, a chord
315    name should always be displayed after a line break.  See
316
317        input/test/drarn-chords.ly
318
319 * Reverted duration-iter change in midi2ly, moved printing of options.
320
321 * warning bugfix in lexer.ll (Mats Bengtsson)
322
323 1.3.77
324 ======
325
326 * Midi2ly bugfix: handle durations longer than longa.  These can occur
327   because of lengthened notes when using --no-rests.
328
329 * Midi2ly: output `new' \key syntax, and updated version number.
330
331 * Midi2ly bugfix: don't correct quantised durations, don't use tuplets, 
332   double dots etc. when user doesn't want them.  It probably used to
333   work like this, a long time ago.  For some unknown reason, all
334   corrections made by Duration_convert were junked if the corrected
335   duration != exact duration.  Duh.
336
337 * Midi2ly: added a new option: --no-rests.
338
339 * Update of mudela-book (Tom Cato Amundsen)
340  - --read-lys option, now you can do:
341         mudela-book file.texi
342         convert-mudela
343         mudela-book --read-lys
344  - --outdir=DIR will put ALL output into DIR
345  - @mudela[filename="myfilename"]{c d e f g}
346  - --force-mudela-fontsize
347  - ignore mudela inside @ignore @end ignore
348
349 1.3.76.gp1
350 ==========
351
352 * Lyric_phrasing_engraver now catches lyric extenders and correctly
353   terminates them under the last note of a melisma.
354
355 * Lyric word spacing code changed to fix hyphen alignment.
356
357 * Other minor tidying up of Lyric_phrasing_engraver and related code.
358
359 1.3.76
360 ======
361
362 * Lyric_phrasing_engraver now adjusts for melisma.  (Glen Prideaux).
363
364 * Mudela-book fix for Windows95 (Mark Hindley)
365
366 * Debian update (Anthony Fok)
367
368 * Added beam melisma for when automaticMelismata and noAutoBeaming are both
369   #t (primarily for hymns).  Courtesy Glen Prideaux.
370
371 * Bugfix: .pfa dependency on $(outdir)/mfplain.mem
372
373 1.3.75.mb1
374 ==========
375
376 * stepmake/stepmake/metapost-rules.make: Put all generated files
377   in mf/out/.
378
379 * Added paper variable interscoreline to determine the score line
380   spacing, see input/test/vertical-extent.ly.
381   Cleaned up the lilyponddefs.tex inclusion scheme.
382
383 1.3.75
384 ======
385
386 1.3.74.gp1
387 ==========
388
389 * Improved default handling of Lyric_phrasing_engraver and made it on by 
390 default.
391
392 * Beginnings of a stanza number engraver (\property LyricVoice.stanza = 
393 #"1:" etc.)
394
395 * fixed bug in script.cc so fermata (and other scripts) get flipped 
396 correctly when they are above the staff.
397
398 1.3.74.jcn2
399 ===========
400
401 * Reincluded simple code for including tfm.[1-5] into search path.
402   Configure with --disable-kpathsea to enable this kludge.
403
404 1.3.74.jcn1
405 ===========
406
407 * Updated input/test/banter-chords.ly German H/B example.
408
409 * Updated nl.po.
410
411 * Have configure check for kpathsea library and functions.  Made kpathsea
412   support optional for now.
413
414 * Bugfix: halved width of tremolo-beams.
415  
416 * Included compilation fix for guile-1.3.4 (Anthony).
417
418 * Added: chord inversion and base to regtest.
419
420 * Fixed: Chord names that were broken by pl73.
421
422 * Fixed: Chord inversions that were broken by pl72.
423
424 * Resurrected ascii-script output, for debugging purposes.
425
426 * Included compilation fix for scm-hash.cc (Han-Wen).
427
428
429 1.3.74
430 ======
431
432 * Small bugfix: also do a deep copy on  submusices
433
434 * Fixed:  \autochange doesn't crash anymore.
435
436 * Cleanup, documentation and enforcement of smob interfaces in
437 LilyPond.  We distinguish between SIMPLE_SMOBS and SMOBS (objects that
438 have self_scm_)
439
440 * Glen Prideaux lyric phrasing engraver. See
441 input/test/lyric-phrasing.ly
442
443 1.3.73
444 ======
445 * Removed \interscoreline after the last line, prevents some
446 empty pages. (patch by Mats Bengtsson)
447
448 * Smobified Music, junked associated identifiers. Use Scheme list to
449 store Music_sequence.  Removed const declarations from
450 Music_iterators.  Added a mutable and immutable property list to
451 Music.  Use music property for all Scheme values in Music.  Created
452 and fixed a load of Garbage Collection bugs.
453
454 * Changed number font to allow automatic .mf creation.
455
456 * Output place of definition as \special{src:LOCATION}. See FAQ for
457 explanation how to use.
458
459 * Schemified Local_key_item and fixed minor bug with accidentals.
460
461 * new Japanese .po file.
462
463 * Bugfix for broken tie direction
464
465 * Bugfix for bar at beginning of line break
466
467 1.3.72
468 ======
469
470 * Robustness fix for minimise_least_squares ()
471
472 * cleanups of Slur_bezier_bow, removed Bezier_bow.
473
474 * cleanup of Tie. Changed Tie into interface. Made ties flatter by default.
475
476 * changed SCM_UNDEFINED to SCM_UNSPECIFIED for return values that go
477 back into Scheme.
478
479 * changed SCM_UNSPECIFIED to SCM_EOL for undefined element
480 properties. This makes initializing list properties redundant.
481
482 * removed idiotic code for including tfm.[1-5] into search path.
483
484 * fixed problem with tuplet placement for cross staff tuplets.
485
486 1.3.71
487 ======
488 * Small cleanups to bring down  compile time and binary ensmallment.
489
490 * Made Lookup into a smob, and use guile alist iso. an STL map.
491
492 * Changed repeated music semantics for relative octave: each
493 alternative takes its inital octave from the body.
494
495 * Fixed: parser accepts booleans for property values as well.
496
497 * Added Scarlatti sonata test file to input/
498
499 * kpathsea support, courtesy Carsten Block <carsten.block@gmx.de> 
500
501 1.3.70
502 ======
503 * Fixed: long standing problem in optical-illusion code.
504
505 * Fixed: stop beam if stem *has* a beam in auto-beam-engraver. 
506
507 * Made interface of Multi_measure_rest, System_start_delimiter,
508 Spacing_spanner, Separating_group_spanner, Beam, Slur and
509 Rhythmic_head.
510
511 * Use properties for minimum distances and spring parameters.  Move
512 spacing related functions from Paper_column into Spaceable_element.
513
514 * Removed most Paper_column typecasts.
515
516 1.3.69
517 ======
518
519 * Cleanup auto-beam-engraver: use properties for retrieving timing
520 information.
521
522 * Fixed: Multi measure rests don't cause crashes.
523
524 * Fixed: don't invoke Hara_kiri::consider_suicide too early.
525
526 * Fixed: property engraver.  
527
528 * Fixed: don't crash on multiple ties.
529
530 * Cleanups of Beam, should also be a little faster.  
531
532 * Reunite properties and pointers. In implementation we make a
533 distinction between mutable and immutable properties
534
535 * Add {has|set}_interface () static methods to interface classes.
536
537 * Made Side_position_interface and Staff_symbol_interface an all
538 statics class, and stripped _interface suffix.
539
540 * Make Align_interface and Axis_group_interface an all-statics class 
541
542 * Rhythmic_head, Staff_symbol, Grace_align_item, Break_align_item,
543 Bar, Span_bar are now interfaces, Staff_bar was removed. Use a
544 callback for determining barsize.
545
546 * Removed all GLUE_SCORE_ELEMENT callbacks. 
547
548 * Added test for repeats to trip.ly
549
550 1.3.68
551 ======
552
553 * ly2dvi: changed back to original semantics of latexheaders.
554
555 * Stem_tremolo, Crescendo, Hara_kiri_group_spanner, Tuplet_spanner,
556 Volta_spanner changed into interface.
557
558 * Related cleanups for Tie, Tie_column cleanups.
559
560 * Made Time_signature, Single_malt_grouping_item, Script_column,
561 Chord_name, Dot_column, Breathing_sign, Key_item type into interface.
562
563 * Removed const declaration from callback arguments.
564
565 * Pagebreak support. See input/test/between-systems.ly
566
567 * Fixed a problem with accidentals in combination with
568 non-nil key signatures.
569
570 1.3.67
571 ======
572
573 * Use callbacks for augmentation dot positioning.
574
575 * Removed types Note_head and Rest
576
577 * Cleanup of slur.cc: use common reference points in a sane manner.
578
579 1.3.66
580 ======
581
582 * Corrected text sizes in paper*.ly (Mats Bengtsson)
583
584 1.3.65.uu1
585 ==========
586
587 * Dots, Collision, Rest_collision removed as separate Score_element type.
588
589 * Stem and Note_column accept only one rest.
590
591 * Use offset callback in Stem to resolve rest/beam collisions.
592
593 * Put the value of new  local key signature (accidentals) back into a property.
594
595 * Set molecule-callback for notename item.
596
597 1.3.65.jcn2
598 ===========
599
600 * Added some comments to new slur code.
601
602 * Removed some ugly interstaff slur code, interstaff slurs at line-break
603   are still broken.
604
605 * Slur bugfix: 16th beams are also beams.
606
607
608 1.3.65
609 ======
610
611 * Bugfix: translate volta spanner at start of line.
612
613 * Changed directional_element() calls to instantiations
614 of Directional_element_interface.
615
616 * Removed Dynamic_line_spanner, and cleaned up Dynamic_engraver.
617
618 * Removed Staff_info type. Information about columns is now transferred
619 via currentMusicalColumn and currentCommandColumn.
620
621
622 1.3.64.jcn2
623 ============
624
625 * Made slur attachment position user settable; properties:
626 slurBeginAttachment slurEndAttachment, values: 'head 'stem
627 'along-side-stem.  See input/test/slur-attachment.ly and ophee-slurs.ly.
628
629 * Fixed slur attachment positions, added missing rule and use simple
630 default starting positions for attachments.
631
632 * Started rewrite of slur ending code, interstaff slurs are broken for
633 now.
634
635 * Fixed download URL of the webpage.
636
637 * Moved direction.cc to flower/.
638
639 1.3.64
640 ======
641
642 * Lyrics centered on notehead.
643
644 * Various bugfixes hyphen-spanner.
645
646 * Bugfix: set appropriate callbacks for Note_head. This fixes 
647 problems with dots.
648
649 * Removed Clef_item as score-element derived type.
650
651 * Updated config.sub and config.guess
652
653 * Bugfix: allow linebreaks on beamed grace notes.
654
655 1.3.61.jcn2
656 ===========
657
658 * Included dutch po-update based on submitted 1.3.57 nl.po
659
660 * Added "Development" link to website, now that "Home" is a relative link.
661
662 * Bugfix: use deep copies for resetting keys.
663
664 * Assorted typing erors in procedure names in ly/engraver.ly
665
666 1.3.62
667 ======
668
669 * Made callbacks from Score_element::before_line_breaking() and
670 Score_element::after_line_breaking()
671
672 * Fixed website; backlinks should work again.
673
674 * Removed --ignore-version option. Added --verbose option.
675
676 1.3.61
677 ======
678
679 * Webpage hacking
680
681 1.3.60.hwn1
682 ===========
683
684 * Junk int_identifier, real_identifier. Merged Midi_def_identifier and
685 Paper_def_identifier.
686
687 * Fixed bug with spanning barlines in combination with Hara-Kiri staffs.
688
689 * Cleaned up Text_item, Hyphen_spanner, Lyric_extender and
690 Sustain_pedal and reduced them to an Score_element interface (they are
691 no longer Score_element derived types).
692
693 * Some instances of brew_molecule routines have moved out of
694 Score_element, and are now called scheme_molecule.
695
696 * Moved lots of parameters from ly/params.ly to ly/engraver.ly
697
698 1.3.59.hwn1
699 ===========
700
701 * Removed String_identifier, and use the type system of GUILE instead.
702
703 * Fixed \key PITCH MODALITY syntax. The modality argument is now
704 mandatory, a rule in convert-mudela has been added.
705
706 * Cleaned up  buildscripts/ directory: removed obsolete scripts.
707
708 * Use Scheme_hash_table for identifier Scopes.  Scheme_hash_table is
709 based on STL and should be faster than hash_table.
710
711
712 1.3.59.jcn1
713 ===========
714
715 * Fixed scm_un/protect_object for guile-1.3.4 and 1.3.5 snapshots,
716   in the process reduced number of protect/unprotect calls.  With
717   guile-1.3.5 snapshot, memory usage has decreased by 1/5th, now
718   just 10% above the 1.2 level.  Also, Lily's a bit faster.
719
720 * Fixed make diff bug in stepmake to be able to make this diff :-)
721
722 1.3.58.hwn1
723 ===========
724
725 * Rewrote key sig support.  Now key signature can also be controlled
726 by setting keySignature and localKeySignature properties, eg.
727
728         \property keySignature = #'((2 . -1) ( 4 . -1) (6 . -1))
729
730 sets a key signature of `es ges bes' (an unusual key signature).
731
732 Keys are internally represented as transpositions of the c-major
733 scale. Printing the key signature for a scale is done by filtering out
734 all non-natural accidentals.
735
736 * Removed support for \keysignature, and \key something \minor; Newkey
737 is now obsolete.
738
739 1.3.58.jcn3
740 ===========
741
742 * Fixed pedal items (hw)
743
744 * Changed configure option tex-tmfdir to tmf-path now accepting multiple
745   tfm directories.  Automated links to cmr and amstex tfm font directories.
746
747 * Replaced one scm_assoc () u-turn slipped through jcn1
748
749 * various GUILE 1.3.5 compile fixes
750
751 * Added `Ped' as a compound symbol font and removed silly scheme kerning.
752
753 * Replaced some scheme assoc u-turns with scm_assoc ()
754
755 * Ran po-update (mostly because of new ja contribution).
756
757 1.3.57.jcn2
758 ===========
759
760 * Cleaned-up scheme list to text conversion for Chord_name and 
761 fixed horizontal kerning.
762
763 * Added examples for american (slashed o) and jazz (black triangle),
764   see input/test/{american-chords.ly,jazz-chords.ly}
765
766 * Made guile-1.3.5 compile fixes
767
768 1.3.57.uu1
769 ==========
770
771 * Fixed typo in Dots::do_brew_molecule (); this fixes the disappearing
772 dots problem.
773
774 * Rewrote key signature administration; now Scheme is used; Octave and
775 Key have been junked in favor of Newkey.
776
777 * japanese .po file included (thanks, Japanese team!)
778
779 1.3.57
780 ======
781
782 * Fixed several forgotten molecule-callbacks 
783
784 * Fixed first clef in score; now F clefs are also possible.
785
786 1.3.56.mb1
787 =========
788  
789 * Updated FAQ with two useful GDB macros.
790
791 * Several fixes in the documentation.
792
793 1.3.55.jcn1
794 ===========
795
796 * Made (dutch) po-update
797
798 1.3.56
799 ===========
800
801 * Molecules are now generated via callbacks exclusively; most calls to
802 set_elt_property ("transparent", SCM_BOOL_T) have been replaced by suicide().
803
804 1.3.55
805 ======
806
807 * Experimental property collapse for most score-elements.  (notable
808 exceptions: Scripts, pedals). Change all Score_element constructors to
809 take a basic-property list. The suffix of a property list may be
810 shared by several score-elements, for instance all default G-clefs in
811 a score share the following settings
812   
813            (breakable . #t)
814            (break-align-symbol . Clef_item)
815            (visibility-lambda . ,begin-of-line-visible) 
816
817 This should reduce memory usage further. 
818
819 * Magically fixed the disappearing Lyrics problem.
820
821 * Removed used_b_ field from Score_element.  
822
823 * Massive search-replace patch: store pointers and properties
824 separately, in preparation of property collapse.
825
826
827 1.3.54
828 ======
829
830 * Bugfix: don't crash on tuplet spanners that don't contain any notes.
831
832 * Cleanup of Dimension_cache: removed a few redundant
833 fields. Slightly lower memory usage (32 bytes per
834 score-element). Dimension_cache is now a `dumb' struct again.
835
836 * Add array index to priority field of text scripts to ensure that
837 order is unique, and sensible.
838
839 * Added an element count statistic.
840
841 1.3.53
842 ======
843
844 * russian.po (thank you, August.)
845
846 * Small cleanups in Molecule interface 
847
848 * Spacing related elements perform suicide after calculating
849 distances.  This saves a some memory, approximately 2 to 5 % ?
850
851 * Small cleanups in line breaking: Paper_column stores springs and
852 rods in only one place now.  All fields relating to energy have been
853 removed
854
855 * Don't generate all output Scheme in memory, but evaluate to output
856 file immediately.  This will reduce memory usage a little.
857
858 * Use STL's map  for Dictionary template
859
860 * Substitute pointers on element properties of the root Line_of_score
861 as well.
862
863 * Added toplevel doc target, to support building doc with --srcdir
864
865 * Removed cygwin build stuff; updated versions at:
866
867      http://appel.dyndns.org/lilypond/gnu-windows/cross
868
869 * Fixed lily.scm to handle incipits (thanks, Mats)
870
871
872 1.3.52
873 ======
874
875 * Made bugfix in smob handling: delete the C-part of freed smobs and
876 be honest about amount of allocation and deletion, so that GUILE
877 doesn't overestimate the amount of memory available.
878
879 * Faq update: nicer blank note paper, courtesy Mats Bengtsson.
880
881 * Bugfix: don't crash on durations that are not a power of 2.
882
883 * Build manpages during `make all' 
884  
885 * Bugfix: don't do absolute comparisons in Polynomial::clean ().
886
887 * Bugfix: set visibility-lambda for key signature created by
888 createKeyOnClefChange. Fixes disappearing key signatures. 
889
890 * Bugfix: make System_start_delimiter of bar-line type invisible when
891 it spans only one staff.
892
893 1.3.51
894 ======
895
896 * Item cleanups.  Copying items and rearranging pointers are done in
897 separate passes, which makes the code cleaner. This fixes a problem
898 with some items not disappearing from hara-kiri staffs.
899
900 * Use Scheme for Key_item data members. 
901
902 * Don't use regex in chord-names.scm under windows; hybrid chordnames
903 user+calculated will be partly broken.
904
905 1.3.50
906 ======
907
908 * Junked Shift_tuple from collision; Now it uses SCM.
909
910 * Bugfix of documentation and test-file of tuplet.
911
912 * Bugfix type string of repeated music is copied. This fixes declared
913 tremolos.
914
915 * Junked various cruft from lily.scm
916
917 * Use interfaces symbols instead of C++ class-name for assigning generic
918 element properties.
919
920 * Junked Dictionary from Piano_pedal_engraver and
921 Piano_pedal_performer.
922
923 * Introduced boolean element property no-spacing-rods: ignore this
924 item for hard constraints.
925
926 * Bugfix: added sanitised TeX fragment in faq.texi
927
928 * Bugfix: merge equal Bar_reqs
929
930 1.3.48.uu1
931 ==========
932
933 * Small fixes for \cresc and \endcresc
934
935 * Release properties of unbroken spanners & items after doing
936 handle_broken_smobs (); should conserve a little memory.
937
938 * Fixed handling of orphaned score-elements. Any element that does
939 not have its Line_of_score as a ancestor in both directions, is silently
940 removed from the output.  This guarantees that programming errors
941 don't result in coredumps from Dimension_cache::common_refpoint ():
942 element->line_l () is always a common reference point.
943
944 * Bugfix: set visibility-lambda of clef and octavation-8 explicitly
945 for default case.  Now the octavation 8 is not printed at every
946 barline.
947
948 1.3.48.mb1
949 ===========
950
951 * Changed noteHeadStyle properties to symbols, for example
952   \property Voice.noteHeadStyle = #'cross
953
954 1.3.47.jcn3
955 ===========
956
957 * Rewrite of chord-name production in scheme.  There are two major styles
958   now, banter and american.  To get american style, use
959
960       \property ChordNames.chordNameStyle = "american"
961  
962   Most anything should be possible now.  See input/test/american-chords.ly
963
964 * Added isinf check to configure.in, and isinf macro from guile to
965   bezier.cc; solaris has no isinf ().
966
967 * Fixed star-spangled-banner with not-so-nice \bar "|." fix.  Almost
968   perfect now.
969
970 * Added output property to regression test.
971
972 * Fixed warning of creating existing outdir.
973
974 * Added `Mark' interface to text-items that are marks (thanks, HW).
975
976 1.3.48
977 ======
978 1.3.47.mb2
979 ===========
980
981 * Corrected glossary.tely
982
983 * Corrected \mark font handling. feta-nummer font only of the 
984   string is all numeric.
985
986 * Implemented noteHeadStyle lookup in Guile. Reintroduced the style
987   "harmonic" and added "baroque" (normal note shapes except for 
988   brevis and longa which are square).
989
990 * Simplified ly2dvi using the power of the geometry package.
991
992 * Improved heuristic size calculation of TeX macros. Handles e.g.
993   "\\u{a}", "\\"{o}" and "\\^{u}" correctly.
994
995 1.3.47.hwn1
996 ===========
997
998 * Bugfix: don't hang on zero-duration.
999
1000 * Various glossary updates (thanks, Christian)
1001
1002 1.3.47
1003 ======
1004
1005 1.3.46.jcn2
1006 ===========
1007
1008 * Drastically reduced vertical space used by headers/footers, when using
1009   ly2dvi.  See input/test/fill-a4.ly.
1010
1011 * Fixed bug with colons appearing on repeat span-bars.
1012
1013 * Added Bar_number_engraver to standard Score context
1014
1015 * Construct octavation scripts in the clef-engraver; this fixes the
1016 hara-kiri + clef8 problem
1017
1018 1.3.46
1019 ======
1020
1021 1.3.45.jcn2
1022 ===========
1023
1024 * Fixed chord-name customisation and made small chord-name build fixes.
1025
1026 * Accidentals with chord-names smaller and as superscript.
1027
1028 * Do some extra footify (works only once) while making html docs.  
1029
1030 1.3.45.hwn1
1031 ===========
1032
1033 * Debian patch (Thanks Anthony)
1034
1035 * Rewrote Bar_number_engraver and Mark_engraver and removed
1036 Bar_script_engraver as baseclass. Both Bar_number_engraver and
1037 Mark_engraver are simpler and more robust.
1038
1039 * Fixed precedence of \property verticalDirection and dynamicDirection
1040
1041 * Fixed keys without barlines 
1042
1043 * Fixed StaffGroups: removing `\consistsend "Axis_group_engraver"'
1044 puts alignment in function again
1045
1046 * Fixed StaffGroup + GrandStaff combination.
1047
1048 * Music is now mandatory as the first thing in a \score{} block
1049
1050 1.3.45
1051 ======
1052 1.3.44.jcn2
1053 ===========
1054
1055 * Implemented una-chorda and sostenuto piano pedals in performer and engraver.
1056
1057 * Added Properties textScriptWordSpace and chordNameWordSpace.
1058
1059 * Junked old lyrics in star-spangled-banner.
1060
1061 * Added a Piano_pedal_engraver.
1062
1063 * Removed some empty files.
1064
1065 * Created piano pedal symbols: * - . P e d.
1066
1067 * Fixed ps-to-pfa.py to handle multiple unfills.
1068
1069 * Moved accordion symbols out of feta-script to end of font.
1070
1071 * Bugfix: don't create tfm's, pfa's etc of feta-test fonts.
1072
1073 * Fixed blot_diameter for small resolutions.
1074
1075 1.3.43
1076 ======
1077
1078 * Put global element list into Line_of_score, instead of
1079 Paper_score. post processing (the stage after line breaking) is now
1080 truly done per-system, and we got rid of an ugly hack to get font
1081 handling OK.
1082
1083 * Bugfix: set the group-interface of System_start_delimiter.
1084
1085 * Cleanups of Break_algorithm and derived classes, Move
1086 broken_col_range () to Line_of_score, remove Paper_score::col_l_arr_
1087
1088 * Bugfix for accordion symbols.
1089
1090 * Various patches to prevent crashing when do_brew_molecule gets
1091 called before after_line_breaking (). This was a problem in Spanner
1092 classes mostly.
1093
1094 1.3.43
1095 ======
1096
1097 1.3.42.jcn3
1098 ===========
1099
1100 * Made a quick try at piano pedal performer, damper pedal only.
1101
1102 * mf/feta-accordion.mf: Fixed strange turning paths.
1103
1104 * mf/feta-beugel.mf: Fixed infinity errors.
1105
1106 * Use a more discriptive name for windows setup.zip.
1107
1108 * mf/GNUmakefile: Have logs as last target, so that normally, they're 
1109 not made twice.
1110
1111 * stepmake/stepmake/metafont-rules.make: Don't remove the .log files.
1112 The logs are a target, removing them retriggers make.
1113
1114 * stepmake/stepmake/metapost-rules.make: Remove the correct log and tfm
1115 files, ie the ones that clutter the source directory, not the target logs.
1116
1117 * Windows distribution: faked symlink for cmtfm.  Setup.zip should now be
1118 standalone; ie, no need for Cygnus' usertools anymore.
1119
1120 1.3.42.jbr1
1121 ===========
1122   
1123 * Documentation/ntweb: Updated angels.ly to match current syntax.
1124 Also updated index.texi.
1125
1126 1.3.42.uu1
1127 ==========
1128
1129 * Change all occurances of Staff_margin_engraver to
1130 Instrument_name_engraver, add a convert-mudela rule
1131
1132 * Change status == busy assert into programming error
1133
1134 1.3.42
1135 ======
1136
1137 1.3.41.jcn3
1138 ===========
1139
1140 * Lots of fixes to windows distribution scripts.
1141
1142 * Added configuration features --program-prefix, --program suffix.
1143
1144 * lily/my-lily-parser.cc (get_chord): Bugfix, don't use deleted pitch.
1145 This fixes inversions c/g and bass additions d/+c on chords.
1146
1147 1.3.41.mb1
1148 ==========
1149
1150 * Avoid that xxxXXXVerticalExtent is used for empty HaraKiriStaff
1151   lines.
1152
1153 1.3.41.hwn1
1154 ===========
1155
1156 * Debian patches (thanks Anthony!)
1157
1158 * Use symbols for prefatory matter spacing. Do not use the typename
1159 for looking up item pairs in the table, but read element property
1160 break-align-symbol
1161
1162 * Instrument_name_engraver, uses break alignment instead of
1163 side-position.
1164
1165 * System_start_delimiter_engraver, System_start_delimiter, uses a
1166 spanner for the braces/brackets at the left of the system. Remove all
1167 old Span_score_bar engravers.
1168
1169 * Removed Base_span_bar_engraver::use_prority_b_, and moved
1170 Base_span_bar_engraver into Span_bar_engraver.
1171
1172 1.3.40.jcn3
1173 ===========
1174
1175 * mutopia/Coriolan/violino-2.ly: Bugfix: wrong pitch.
1176
1177 * input/test: Removed stale AutoStaffSwitch examples.
1178
1179 * mutopia/E.Satie: Fixed gnossiene-4, doing \autochange.  Removed
1180 stale copy of gnossiene-4.
1181
1182 * buildscripts/make-cygwin-cross.sh: Made some small .zip package fixes.
1183
1184 * make/lilypond.spec.in: Made some bugfixes for _prefix, preparations
1185 for cross-building to Cygwin.
1186
1187 * buildscripts/make-cygwin-cross.sh: Now using rpm packages.
1188
1189 1.3.40.hwn2
1190 ===========
1191
1192 * added \property XXXMinimumVerticalExtent, \property XXXExtraVerticalExtent
1193
1194 * New_chord_tremolo_engraver: make tremolo beams from
1195
1196         \repeat "tremolo" NUMBER <Music-expression>
1197
1198 Removed support for "old-style" tremolos.
1199
1200 * Add a convert-mudela function for the conversion "\key A;" to "\key a; 
1201
1202 * Read \property measurePosition within the engraver code, instead of
1203 looking up the Timing_translator.
1204
1205 * star-spangled-banner.ly: add Bar_engraver to LyricsVoice 
1206
1207 * Changed all .fly and .sly files to .ly files.  Propose to dump .fly
1208 and .sly.
1209
1210 1.3.40
1211 ======
1212
1213 1.3.39.jbr1
1214 ===========
1215
1216 * buildscripts/mf-to-table.py: feta dep files are now opened with write
1217   binary option.  This avoids carriage return linefeed problems and
1218   windows while not affecting unix.
1219
1220 * Documentation/hacking.texi: Fixed a texinfo syntax error
1221
1222 * stepmake/bin/package-zip32.sh: Fixed or Removed some legacy, 1.2.x,
1223   directory paths.
1224
1225 * Documentation/ntweb/index.texi: Fixed broken links, added 1.3.39 links.
1226
1227 1.3.39.hwn1
1228 ===========
1229
1230 * Glossary updates by Christian Mondrup.
1231
1232 * Bugfix: use generic properties in lyrics too. This fixes the
1233 \property textStyle for lyrics.
1234
1235 * Score_element::preset_extent(), used by \property
1236 XXXVerticalExtent, so hard code the size of a vertical group. 
1237
1238 * Don't fix up reference points for originals of broken
1239 spanners. Fixes spurious "orphaned score-element" warnings.
1240
1241 * buildscripts/make-cygwin-cross.sh: Use rx-1.5 instead of regex (Jeffrey).
1242
1243 * scm/lily.scm: Fixed check for Windows: by default don't use scm regex.
1244
1245 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: Significantly smaller
1246 patch for guile.
1247
1248 * buildscripts/make-cygwin-cross.sh: Compile native package GNU regex,
1249 which should fix Windows problems with guile.  Also added input directory
1250 to zip file.
1251
1252 * stepmake/aclocal.m4: Added decent checking for version of guile, and 
1253 fixed warning message.
1254
1255 * lily/lexer.ll (My_lily_lexer): Bugfix: lookup chordmodifiers in the
1256 chord-modifier table (not in the pitch list).
1257
1258 1.3.39
1259 ======
1260
1261 1.3.38.hwn2
1262 ===========
1263
1264 * General cleanups of My_lily_parser. 
1265
1266 * Start of a Chord_tremolo_iterator for the `\repeat 4 "tremolo"'
1267 syntax.
1268
1269 * Moved Score_element::do_space_processing out of the dependency
1270 mechanism.
1271
1272 * Use Scheme for notename tables.  Removed uppercase letters for low
1273 octave notes. Removed Notename_table.
1274
1275 * Fixed core dump with declared "\key  ; "
1276
1277 * Extra robustness warning for Side_position_interface::aligned_on_self ()
1278
1279 * Extra robustness: make sure that first and last columns are breakable.
1280         
1281 1.3.38.jcn4
1282 ===========
1283
1284 * stepmake/aclocal.m4: Added support for cross-compiling with guile.
1285
1286 * buildscripts/make-cygwin-cross.sh: A try at dropping cygwin1.dll
1287  dependency by using mingw.  Compiling guile is too much to ask
1288  for mingw, though.  Also:
1289  - rename python scripts .py (request from Alain)
1290  - install native packages under their own, separate root. (Alain)
1291
1292 * lily.scm: Don't use regex module when running on
1293 Windows. (Shamus)
1294
1295 * lily/staff-margin-engraver.cc (acknowledge_element): If
1296 possible, hang y-axis of margin script to span-bar.  This fixes
1297 vertical placement of margin scripts attached to staff groups.
1298
1299 * help2man-rules.make: Fixes for generating manpages by copying
1300 and for building using --scrdir.
1301
1302 * stepmake/stepmake/generic-targets.make: Preserve date stamp of
1303 config.h, version.hh files file when copying.
1304
1305 * buildscripts/make-cygwin-cross.sh: made number of fixes:
1306         - add `Cygnus/' prefix to directories in .zip-file too.
1307         - package guile too.
1308         - don't link to cygwin1.dll
1309
1310 * stepmake/stepmake/install-targets.make: bugfix, don't fail if directory
1311   is not emty when uninstalling.
1312         
1313 * stepmake/stepmake/generic-targets.make: added man target.
1314
1315 * buildscripts/make-cygwin-cross.sh: new script for cross-building cygwin
1316   development tools and lilypond executable.
1317
1318 * Documentation/ntweb/lilypond-manpages.patch: provide pre-built
1319   manpages, so that make doesn't fail on help2man trying to execute
1320   a GNU/windows executable.     
1321
1322 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: new patch for
1323   guile-1.3.4.  
1324
1325 * flower/libc-extension.cc (memmem): cygwin compile fix.
1326
1327 1.3.38
1328 ======
1329
1330 1.3.37.hwn1
1331 ===========
1332
1333 * (generic-property.scm) added \property tieDash to set dashing on
1334 ties.
1335
1336 * Removed  ly_eval_str(), we should use scm_eval (Scm_object).
1337
1338 * Removed scm_to_array (), array_to_scm (), associated junk. Reverted
1339 undocumented .29 patch that made Bezier::control_ into an
1340 Array<Offset>.  Added some comments documenting the reasons for the
1341 changes.
1342
1343 * Revert generic-property.scm of .37 fix, fix the real problem in
1344 property-engraver.cc: use the right symbol to check if element
1345 property is already set.
1346
1347 1.3.37.jcn2
1348 ===========
1349
1350 * Fixed srcdir build, so that you can do:
1351
1352       tar xzf releases/lilypond-x.y.z
1353       mkdir <build>
1354       cd <build>
1355       ../lilypond-x.y.z/configure
1356       make
1357
1358   as with any other gnu package.  All build output goes to <build>/out.
1359
1360 * Changed and fixed use of different configurations, and different output
1361   directories.  Finally, you can use different configurations alongside
1362   eachother.  From make/stepmake.make:
1363
1364       # Use alternate configurations alongside eachother:
1365       #
1366       #     ./configure --enable-config=debug
1367       #     make conf=debug
1368       #
1369       # uses config-debug.make and config-debug.h; output goes to out-debug.
1370       #
1371
1372       # Use same configuration, but different output directory:
1373       #
1374       #     make out=www
1375       #
1376       # uses config.make and config.h; output goes to out-www.
1377       #
1378
1379
1380 * Fixed performance of (de)crescendi.
1381
1382 * Better documentation for arithmetic_multiplier and arithmetic_basicspace
1383   in params.ly.
1384
1385 * Added instrument-equaliser for MIDI output, see scm/midi.scm, and
1386   properties midiMinimumVolume, midiMaximumVolume, ranges [0,1].
1387
1388 * Changed absolute midi volume settings into factor of full scale.
1389
1390 * Fixed another dynamic-line-spanner bug, it gets hairy.
1391
1392 * Added warning for spanners that are not fully contained in parent spanner.
1393
1394
1395 1.3.37
1396 ======
1397 1.3.36.hwn1
1398 ===========
1399
1400 * Abstract Align_element into Align_interface. Removed
1401 Axis_align_{item,spanner}, Align_element, Super_element, all multiple
1402 inheritance in the backend.
1403
1404 * new Gade score, INSTALL.texi fixes (thanks, Mats)
1405
1406 * Removed Item::hpos_f (), Score_element::{get,set}_real ()
1407
1408 * comments detailing properties for Axis_group_interface,
1409 Side_position_interface, Score_element, Item and Spanner
1410
1411 1.3.36.jcn3
1412 ===========
1413
1414 * Fixed vertical dimensions of elements in dynamic line spanner by adding
1415   axis-group to dynamic line spanner.
1416
1417 * Bugfix: line-spanner lasts always full duration of (de)crescendi.
1418
1419 * Bugfix: broken (de)crescendi on a dynamic-line-spanner.
1420
1421 * Bugfix: compilation dynamic-engraver.
1422
1423 * Added and updated a faq about postscript and ghostscript.
1424
1425 * Fixed order of slurVerticalDirection verticalDirection in
1426   generic-property.scm.  Similar fixes for Stem, Tie, etc.
1427
1428 * Added a Text_engraver to GraceContext.  Maybe it was removed on
1429   purpose: scripts on grace notes seem broken, they appear on the
1430   main note.
1431
1432 * Bugfix: volume effect of (de)crescendi was sometimes wrong way round.
1433
1434 1.3.36
1435 ======
1436 1.3.35.hwn1
1437 ===========
1438
1439 * textEmptyDimension changed into textNonEmpty, default: off,
1440 ie. texts don't occupy space.
1441
1442 * Use STL map for Lookup::lookup_p_tab_p_
1443
1444 * Abstracted Axis_group_element into Axis_group_interface, and removed
1445 Axis_group_element. This eliminates some multiple inheritance in the
1446 backend
1447
1448 1.3.35.jcn1
1449 ===========
1450
1451 * Added minimum-space property to Side_position_interface.  Used in
1452   positioning of Volta_spanner: voltaMinimumSpace.
1453
1454 * Fixed and cleaned-up volta-spanner.
1455
1456 * Moved directional-element.cc -> directional-element-interface.cc
1457
1458 * Renamed all `process_requests' to `process_music', which fixes
1459   midi performance.
1460
1461 * Fixed dimensions (more x-y interchanges) of brace, bracket and
1462   volta-spanner.
1463
1464 * Half-assed fix to get similar vertical placement of orphaned vs.
1465   line-spanned dynamic elements.
1466
1467 * Added property bracketCollapseHeight: the minimal size of a staff bracket
1468   that will be typeset.  Smaller brackets will not be displayed.  This
1469   fixes the (in 1.3.x reintroduced) funny duck-beak-bracket-bug (sorry).
1470
1471 * Removed some dissonant chords from Coriolan
1472
1473 1.3.35
1474 ======
1475
1476 * Removed Documentation/programmer directory 
1477
1478 1.3.34.jcn3
1479 ===========
1480
1481 * Small enhancements to Staff_margin_engraver:
1482    - by default, the marginScript left aligns the text
1483    - to set the text style, use property marginScriptTextStyle
1484    - to change the alignment, use property marginScriptHorizontalAlignment
1485      (centred and right alignment require manual padding settings).
1486
1487 * Print a friendly message if the manual pages failed to build.
1488
1489 * Bugfix: dynamicDirection now overrides verticalDirection setting.
1490
1491 * Warning messages and nl.po
1492
1493 * Fixed vertical alignment for all dynamic items and (reluctantly)
1494   reinstated old directional behaviour for orphaned dynamics.
1495
1496 * Finished maximumRestCount property.
1497
1498 1.3.34
1499 ======
1500 1.3.33.hwn2
1501 ===========
1502
1503 * Print key without setting key, syntax "\key ;". General cleanups of
1504 key-item.
1505
1506 * Add paragraph tags in HTML output of mudela-book.  Music fragment
1507 don't run into the text anymore.
1508
1509 * Bugfix: don't align the first line of text. (Lookup::text ()).
1510
1511 * Abstract away data members of Axis_group_element, Align_element
1512
1513
1514 1.3.33.jcn3
1515 ===========
1516
1517 * Added helpful properties instrumentScriptPadding/instrScriptPadding for
1518   Staff_margin_engraver.
1519
1520 * Removed some empty files, substituted (c) 1999 occurrences.
1521
1522 * Added \property maximumRestCount.  It will prevent showing (or actually:
1523   moving in case of a collision) more than maximumRestCount similar rests.
1524   WIP!
1525
1526 * Rewrote Staff_margin_engraver.  Staff margin texts now hang on a new
1527   breakable item: Left_edge_item.
1528
1529 * Fixed vertical alignment for dynamic elements.  Orphaned dynamic items
1530   (not supported by a Dynamic_line_spanner) still collide with Staff,
1531   although they now have staff support, which was supposed to fix this.
1532
1533 * Fixed Staff_margin_engraver for "instrument", "instr" is still broken.
1534
1535 * Dynamic elements are only put in a Dynamic_line_spanner if there
1536   actually is more than one adjacent note-column with a dynamic.
1537   This breaks the fine looks of all dynamics, again :-)
1538
1539
1540
1541
1542 1.3.33
1543 ======
1544
1545 1.3.32.hwn3
1546 ===========
1547
1548 * Experiment: use STL map for Scheme_hash_table; Is there a speedup?
1549
1550 * Bugfix: print brace iso. bracket for Piano / GrandStaff
1551
1552 * Change naming: change do_post_processsing into after_line_breaking,
1553 do_pre_processsing into before_line_breaking and do_process_requests
1554 into do_process_music.
1555
1556 * Bugfix in hash-table.hh: do quadratic probing, and not cubic probing.
1557
1558 * Display property name for type error.
1559
1560 * Cleanups for Dynamic_engraver and Dynamic_line_spanner.
1561
1562 * Warn if last column in score is musical. Helps catch programming errors.
1563
1564 * Spanner::spanned_drul_ now is private. 
1565
1566 * Rewrote some bar code: moved molecule functions out of Lookup.
1567
1568 1.3.32.jcn3
1569 ===========
1570
1571 * Embedded newlines in text items are now allowed.  This helps avoiding
1572   TeX-hacking in some cases.  See input/test/coriolan-margin.ly
1573
1574 * Fixed stupid x-y interchange bug for staff-bracket.  This fixes
1575   placement of staff-brackets.
1576
1577 * Fixed bracket/arch-thickness interchange bug, and made bracket a bit
1578   thinner.
1579
1580 * Fixed slur/bezier-beautiful name mismatch.  This should fix the steep
1581   slurs that were apparently reintroduced in 1.3.29.
1582
1583 * Made some small fixes to Coriolan.
1584
1585 * Removed duplicate lily/output-property-engraver.hh.
1586
1587 * Removed optional use of vanilla spanner in Dynamic_engraver.
1588
1589 * Fixed (measured) tremolo for Stem and Beam. Merged declarations
1590   stem-engraver.hh and chord-tremolo-engraver.hh into their .cc
1591   implementation file.  Also fixed looks of Chord tremolo, input and
1592   implementation is still ugly.
1593
1594 * Added *.yy and *.ll to TAGS, to that tags-find-replace doesn't omit
1595   parser and lexer.
1596
1597 1.3.31.mb1
1598 =========
1599
1600 * Fixed \specialkey and \normalkey. Updated documentation.
1601
1602 1.3.32
1603 ======
1604 1.3.31.jcn5
1605 ===========
1606
1607 * Fixed and cleaned-up Dynamic_engraver.  Optionionally uses vanilla
1608   spanner instead of Dynamic_line_spanner.
1609
1610 * Made gcc-2.95 compile fix in libc-extension.
1611
1612 * Various fixes to Coriolan, score starts to look acceptable.
1613
1614 * Moved optional text of crescendo into Crescendo spanner.  Fixed horizontal
1615   and vertical alignment of dynamics.
1616
1617 * Added new text crescendo spanners to Coriolan and made some fixes.
1618   If you're using timidity, use the -EO option to prevent notes get
1619   stuck.  I'm not sure whose fault this is, Lily's MIDI output may be
1620   stretching the standard a bit.
1621
1622 * Adjacent dynamic markings are now grouped on a horizontal line, but it's
1623   not perfect yet: they're always below the staff and no horizontal spacing
1624   is done.  Also, character metrics of dynamics are still not used.
1625   See: input/test/crescendi.ly and input/test/dyn-line.ly
1626
1627 * Cleaned up Span_dynamic_performer.
1628
1629 1.3.31
1630 ======
1631 1.3.30.mb1
1632 =========
1633
1634 * Fixed the page layout, reintroducing space for the header and
1635   trying to keep piece titles on the same page as the piece.
1636   The header and footer can now contain several lines.
1637
1638 1.3.30.jcn3
1639 ===========
1640
1641 * Lily now also performs crescendi and decrescendi in MIDI output:
1642   Span_dynamic_performer in a slightly crappy way.
1643
1644 * Added preliminary support for crescendi/decrescendi other than `hairpins',
1645   eg: `cresc. poco `a poco -- -- --'
1646
1647 * Made MIDI tie performance fix.
1648
1649 1.3.30.jcn2
1650 ===========
1651
1652 * Lily now performs absolute dynamics in MIDI output.
1653
1654 * Included David's comments on opus47 in TODO.
1655
1656 1.3.30.jcn1
1657 ===========
1658
1659 * More Coriolan: flute-1,2; oboe-1,2; clarinet-1,2; 
1660   fixes and remainder french horn-1,2; trombone-1,2;
1661   fagotto-1,2; timpani; and several fixes.
1662   
1663 1.3.30.uu1
1664 ==========
1665
1666 * Remove some old doco from programmer/ and put on personal homepage.
1667
1668 * Removed union-find from flower library.
1669
1670 * Only quantise tie horizontal part inside the staff.
1671
1672 1.3.30
1673 ======
1674 1.3.29.hwn1
1675 ===========
1676
1677 * Report type errors for \property. Helps with converting 1.2 input
1678
1679 * Use Scheme for Align_element; fixed graceAlignPosition 
1680 and removed \property alignmentReference in the process.
1681
1682 * Use generic properties for lyrics too.  This fixes \property
1683 Lyrics.textStyle
1684
1685
1686 * Add relative distance for constraints between non-column items.
1687
1688 * Automatic \marks: use "\mark ; ". The mark numbers or letters are
1689 increased automatically.
1690
1691 * Translators now only change properties of their own context. This
1692 removes the 2nd argument to Translator::get_property()
1693
1694 * Bugfix for Metapost mode
1695
1696 1.3.29.uu1
1697 ==========
1698
1699 * Updates of glossary  (Christian Mondrup)
1700
1701 * Bugfix with bar number placement
1702
1703 * Moved links to bibliography/ and misc/ to main index.
1704
1705 1.3.29
1706 ======
1707
1708 * Moved Slur-specific code from Bezier_bow to Slur and Slur_bezier_bow.
1709   Slurs are now calculated just once.
1710
1711 * Bezier_bow gets constants from paper.  Still no sensible solution for
1712   magic asymmetry gradient step constants.
1713
1714 * Reinstantiated tangent-controls, more flexible than ever.  You can choose
1715   between area asymmetry and tangent-controls.  My guess is, tangent controls
1716   will be junked in 1.3.30.
1717
1718 * Slur area: only look at x-gradient.
1719
1720 * Added credits for some symbols of as5/9 fonts.
1721
1722 * Bugfix: don't make almost flat slurs, change in de-uglyfy slur.  
1723
1724 * Bugfix: midi2ly put out recent version (ugh).
1725
1726 1.3.28.hwn2
1727 ===========
1728
1729 * Bugfix: don't forget to process staffSpace and numberOfStaffLines
1730 properties.
1731
1732 * Removed Gade score. To appear (shortly?) on Mutopia. 
1733
1734 * Make Bar_script_engraver look for typeVisibilityFunction (eg
1735 property barNumberVisibilityFunction). Changed the names of the Scheme
1736 functions to be understandable. See input/test/bar-script-visibility.ly
1737
1738 * rewrite of class Molecule. It has now reached the ultimate quality
1739 plateau. All molecule data is now shared.
1740
1741 1.3.28
1742 ======
1743
1744 * Update of the glossary by Christian Mondrup 
1745
1746 * Moved horn-concerto-3 out of tarball to private website, removed
1747 W.A.Mozart subdirectory.
1748
1749 1.3.27.hwn1
1750 ===========
1751
1752 * Bugfix: don't make giant ties if the horizontal part of tie is near
1753 the center.
1754
1755 * Small optimizations to be a little more careful with mem usage. 
1756
1757 * Website change: put all examples in one directory.
1758
1759 * Removed Atom as a separate type.  Now use SCM, and since we use
1760 function composition, Atoms are immutable, so they don't have to be
1761 copied. This makes life easier, hopefully this is quicker and uses
1762 less memory.
1763
1764 1.3.27.jcn1
1765 ===========
1766
1767 * Bezier_bow: minimise_enclosed_area
1768
1769 1.3.27
1770 ======
1771
1772 1.3.26.hwn4
1773 ===========
1774
1775 * Tuplet-spanner slope calculation now looks better on tupletted rests
1776 (patch courtesy Laurent Martelli)
1777
1778 * Bugfix (Staff_performer::new_instrument_str ()) check type of
1779 \property "instrument"
1780
1781 * New mechanism for breaking lines: do not copy & prune the element
1782 property list separately, but combine these steps. Dramatically
1783 reduces memory usage for large scores.
1784
1785 1.3.27
1786 ======
1787 1.3.26.jcn2
1788 ===========
1789
1790 * Bugfix: font used in volta-spanner calculation.
1791
1792 * Added simple selection list to webpage, inspired by sawmill.
1793  
1794 * Devised kludge for ascii 5 character font pitches.
1795  
1796 * Substitutions: interline, 1997,1998, @stack.nl and small typo fixes.
1797
1798 1.3.26.hwn1
1799 ===========
1800
1801 * Plug memory leaks related to Moment:
1802   - Spacing_engraver::do_pre_move_processing ()
1803   - make_rational ()/make-rational
1804   - Paper_column::Paper_column ()
1805
1806 * Plug memory leak in Paper_outputter::output_{String,Real,int}_def()
1807
1808 * Plug memory leak in Score_engraver::set_columns ()
1809
1810 * Plug memory leak in Scheme_hash_table::set()
1811
1812 * Plug memory leak in Score_element::molecule_extent ()
1813
1814 * Bugfix: don't crash if a slur doesn't span anything.
1815
1816 * Bugfix: don't crash if doing beams without a staff symbol.
1817
1818 * Generic element property setting:
1819
1820         \outputproperty #predicate #'symbol = #value
1821
1822 Will set the element property symbol to value, for any elements that
1823 return true for PREDICATE.  This allows you to virtually tweak *ANY*
1824 property of the output. Example in input/test/generic-output-property.ly
1825
1826 1.3.26
1827 ======
1828
1829 * lilypond as as2ly: --help and --version to stdout.  Regular identify 
1830   to stderr.  This fixes help2man's manpage generation.
1831
1832 * configure: substitute full path for perl and guile in scripts.
1833
1834 * Added ascii slur and volta.  There seems to be a Lily bug in volta placement.
1835
1836 * Bugfix: default font now user settable
1837
1838 * as2text: handle plain ascii font, read from stdin, you can now do:
1839
1840   echo "\time 4/4; g''1 g2 g4. g8" | lilypond -f as -i init-as.fly - | as2text
1841
1842 1.3.25.hwn1
1843 ===========
1844
1845 * Bugfix: second half of broken ties now are displayed again.
1846
1847 * Bugfix: add clef to the support of 8 text in the G_8 clefs. Center
1848 it horizontally on the clef.
1849
1850 * Added Tie_column spanner. Ties in tied chords now get proper directionsa.
1851
1852 * Bugfix: unbroken repeat barlines now work, eg. |:
1853
1854 * Added Request_iterator to make more flexible constructions possible.
1855
1856 1.3.25
1857 ======
1858 * as2text: catch missing font/character errors, added default font, set text.
1859
1860 * New ascii fonts and glyphs: as5 as-numeral4 as-braces9
1861
1862 * Ascii output, minimal support:
1863   - AsciiScript Fonts: mf/*.af
1864   - Init files: ly/*-as.*ly 
1865   - AsciiScript translation to text: scripts/as2text.scm
1866   - input/test/as.fly input/test/as1.fly
1867   - Output support: lily/lily.scm
1868   - Try:
1869       lilypond -f as -i init-as.fly input/test/as.fly
1870       as2text as.as
1871
1872 1.3.24.hwn1
1873 ===========
1874
1875 * The horizontal part of ties will avoid collision with staff lines.
1876
1877 * Plugged memory leak: don't protect Atom function.
1878
1879 * Lookup cleanups. Made lots of functions static. Moved some code out
1880 of Lookup.
1881
1882
1883
1884 1.3.24.hwn1
1885 ===========
1886
1887 * Bugfix: ly2dvi.py exits succesfully when encountering --help and
1888 does not delete any of the file_ly*.tex.
1889
1890 * Added header and footer support in ly2dvi.py
1891
1892 1.3.24
1893 ======
1894
1895 * Added a ROADMAP file explaining the source directory layout.
1896
1897 * Minor tweak in the feta 6 and 9 numeral
1898  
1899 * Moved files from lib/ to flower/
1900
1901 * Removed Note_head_side class.
1902
1903 * Updated the webpage to be a little more chatty. 
1904
1905 * Small Local_key_engraver optimization: only lookup timing engraver once.
1906
1907 * Fixed dashed slurs
1908
1909 * Rewrite of Slur code.  Be much more picky about slur shapes. We try
1910 to offset the slur instead of bending it too much
1911
1912 * Look at stem directions for tie direction.
1913
1914 * Compound multimeasure rests. Put measures_i_ variable in an element
1915 property.  Made the symbol a lot wider.
1916
1917 * Time signature small cleanups.
1918
1919 1.3.22.hwn2
1920 ===========
1921
1922 * Symbols opposite to stem (eg marcato) now get the proper glyph in up
1923 version.
1924
1925 * Breathing marks now have a direction by default.
1926
1927 * Do set generic script properties.
1928
1929 * Also put tuplet brackets under notes.
1930
1931 * Score_element_info: only store origin of element, but not the path
1932 to parent translators. Saves a little memory, and removes some complexity.
1933
1934
1935 1.3.22.hwn1
1936 ===========
1937
1938 * Autobeaming in time sigs that don't have 1/4 beats fixed.
1939
1940 * (De)crescendi should now work. (Thanks Michael)
1941
1942 * Better error reporting for conflicting time signatures.
1943
1944 * Line_number_engraver: output locations of note head
1945 definitions. Very handy when entering complicated scores.
1946
1947 * Rewrote multi measure rest support: now they are entered as spanners
1948 (\commandspanrequest \start "rest"). RXXXX is an abbreviation for
1949
1950   { \commandspanrequest \start "rest"
1951     SXXXX
1952     \commandspanrequest \stop "rest"
1953   }
1954
1955 * Removed support of percent style repetitions. 
1956
1957 * Put texts outside the staff.
1958
1959 1.3.21.mb1
1960 ==========
1961 * Getopt bugfix: don't assert on certain errors.
1962
1963 * ly2dvi: Remove unnecessary space for the page headers.
1964
1965 * Bugfix convert-mudela
1966
1967 1.3.21.hwn1
1968 ===========
1969
1970 * Bugfix in lilypond-mode.el: eval-buffering now uses file name and
1971 not buffer name.
1972
1973 * Scrapped tupletVisibility property. Now use tupletNumberVisibility,
1974 tupletBracketVisibility, with Scheme value #t, #f or 'if-no-beam.
1975 \property tupletInvisible will stop all tuplet spanner creation.
1976
1977 * Don't go berserk if tuplet spanner is on only one column.
1978
1979 * Use SCMs & Smobs for Molecules & atoms.  This uses less
1980 scm_(un)protect_object () calls, so the output stage should be faster.
1981
1982 * Added \property tupletSpannerDuration, to make multiple tuplet signs
1983 with one \times.
1984
1985 * Some programming Errors in spacing are now caught. Lily does not
1986 hang when encountering degenerate springs.
1987
1988 * Allow beams to start and end over rests
1989
1990 1.3.19.hwn2
1991 ===========
1992 * Fix disappearing clefs when clefs are not printed with a barline.
1993
1994 1.3.20.jcn2
1995 ==========
1996
1997 * SCM properties beamHeight and beamVerticalposition now use half-spaces:
1998   input/test/beam-control.fly
1999 * Added \context Voice to .fly and .sly; the default \context Staff is almost
2000   never what you expect
2001 * Fixed decision for .sly/.fly in lilypond-mode.
2002
2003 1.3.19.hwn1
2004 ==========
2005
2006 * Clean up font-metric hierarchy, use Adobe AFM code to parse AFM files.
2007 Cleanup mf-to-table.py
2008
2009 * Fixed embarassing slur bug.
2010
2011 1.3.19.jcn1
2012 ==========
2013
2014 * lilypond-mode.el: guess init file for lily-*-region, lily-mode-map bindings
2015
2016 1.3.18.uu2
2017 ==========
2018
2019 * lilypond-mode.el for emacs supersedes mudela-mode.el 
2020
2021 * Tuplet spanners don't collide with encompassing notes. 
2022
2023 * Gobbled Adobe parseAFM* code, for future use.
2024
2025 * Big 1999 to 2000 search/replace.
2026
2027 * Big interline to staff_space search/replace for mf files.
2028
2029 * Removed Bow class, and split code into Tie and Slur
2030
2031 * Don't put scripts on grace notes.
2032
2033 * Font_metric uses SCM for name field.
2034
2035 * Various compilation fixes.
2036
2037 1.3.17.jcn2
2038 ===========
2039
2040 * Bugfix: beams with less than one (visible) stem
2041
2042 * small fixes to pa.ly
2043
2044 1.3.17.jcn1
2045 ===========
2046
2047 * Fixed bug that made multi-measure rest barnumber counts go wild.
2048 (even more scm2int/int2scm mixups!)
2049
2050 * mutopia/J.S.Bach/pa.ly: organ score (for my father)
2051
2052 * small fix to mutopia/J.S.Bach/Duette/violino-ii.ly
2053
2054 1.3.17.hwn2
2055 ===========
2056
2057 * Remove Paper_def calls in bezier-bow.cc
2058
2059 * Remove data members of Tuplet_spanner,  Volta_spanner
2060
2061 * hang_on_clef, property hangOnClef removed
2062
2063 * Bar::type_str_ mode into element property `glyph'. Use a Scheme
2064 function to determine breaking behavior.
2065
2066 * More Scheme typechecking.
2067
2068 * Be strict about the difference between strings and symbols for conversion.
2069
2070 * Fixed bug that made 1st line offset to right fixed. Bugfix courtesy
2071 Laurent Martelli.
2072
2073 * Partial French translation, courtesy Laurent Martelli.
2074
2075 * Small corrections in NL translation. 
2076
2077 1.3.17.hwn1
2078 ===========
2079
2080 * Added mensural note heads (noteHeadStyle = "mensural") Additionally,
2081 we have a longa note head.  noteHeadStyle = "harmonic" is not
2082 supported anymore. (for now, that is)  
2083
2084 * Reference manual update. Document \properties with examples
2085
2086 * fix mudela-book --help
2087
2088 * Use element properties for Text_item::text_str_, Clef_item::symbol_,
2089 Key_item::c0_position_
2090
2091 * Clef_engraver general cleanup. Use alists (\property
2092 supportedClefTypes, clefPitches) for clef types.
2093
2094 * Use progress_indication () for progress. Don't include <iostream.h> directly 
2095 Don't include <string.h>, <math.h> from headers.
2096
2097
2098 1.3.16.hwn1
2099 ===========
2100
2101 * \property stemCentered (boolean): centers stem on note head. See
2102 input/test/stem-centered.ly
2103
2104 * input/trip.ly, small test of lots of features.
2105
2106 * \property Staff.collisionMergeDotted: merge equal noteheads
2107 with different dot count. See input/test/collision-merge-dotted.fly
2108
2109 * Dotted rest bugfix 
2110
2111 * Don't crash if a slur does not span any notes.
2112
2113 * Volta repeats fixed.
2114
2115 * cleanup of Note_heads_engraver
2116
2117 * removed dots_i_ member of Dots
2118
2119 1.3.16.jcn1
2120 ===========
2121 * Fixed cross staff slurs.  It seems that cross-staff sign
2122   was swapped.
2123
2124 1.3.15.hwn1
2125 ===========
2126
2127 * Fixed bug in stem code.  Stem in chords works again.  Small
2128 stem cleanups.
2129
2130 * Use element properties for Staff_symbol.
2131
2132 * \property sparseTies (boolean).  Only make one tie in the
2133 middle for tied chords.
2134
2135 * Junked Directional_spanner, Column_info.
2136 Directional_element now is element interface `Directional_element_interface'
2137
2138 * cleanup: use to_boolean () iso. gh_boolean_p && gh_bool2scm
2139
2140 pl 15.jcn4
2141         - removed old notename2scm conversion
2142         - beam-dir-algorithm through scm
2143         - bfs paper-scm
2144 gv      - bf: knee-stemlengths
2145
2146 pl 15.jcn3
2147         - moved poor man's stem arrays to scm
2148         
2149 pl 15.jcn2
2150         - beam quanting using scm lists
2151
2152 pl 14.hwn1jcn1
2153         - chord-name uses scm members
2154         - bfs: knee with different mults, interstaff knee, auto-knee
2155
2156 **********
2157 pl 14.hwn1
2158         - specialize duration.cc for lily, move out of lib/
2159         - stem cleanup
2160         - more SCM typechecking
2161         - stafflineleading -> staff_space
2162         - bf: rod distances.
2163         - junk some unused code.
2164         
2165 pl 13.hwn2
2166         - paper/score column cleanups. Junk Score_column type
2167
2168 pl 13.hwn1
2169         - Bezier_bow/Bezier cleanups
2170         - bf: rest under beam.
2171         
2172 pl 13.jcn2
2173         - untangled Chord_name (item) and Chord (list-of-pitches)
2174         
2175 pl 13.jcn1
2176         - bezier-bow fix
2177
2178 **********
2179 pl 12.hwn1
2180         - polynomial.hh
2181         - bf: generic properties
2182         - quantise_iv () fix.
2183         - bezier cleanup
2184         - class Polynomial 
2185         - use smobs for font metric tables/hashes.
2186         - nl.po bf
2187
2188 **********
2189 pl 11.jcn3
2190         - small beam fixes (interstaff knees still broken)
2191
2192 pl 11.hwn1
2193         - bf: dots
2194         - bf: harmonic note heads
2195         - revise stem, notehead, rest
2196
2197 pl 11.jcn2
2198         - included missing scm,ly updates
2199         - bf: urg to_dir () takes scm..
2200         - bf's: if (Foo b = bar != 1)
2201         - beam cleanup
2202
2203 *********
2204 pl 10.uu1
2205         - various small bfs
2206         - bf: alignment reversed
2207         - Staff_symbol_referencer -> Staff_symbol_referencer_interface
2208         - bf: staccato pos
2209         - Knee fixes (thanks, Jan)
2210
2211 pl 10.jcn2
2212         - fixes for invisible beamed stems
2213         - removed steminfo from properties, don't cache Stem_info
2214
2215 pl 10.jcn1
2216         - steminfo to properties
2217         - dropped internote dim for stem-beams
2218
2219 *********
2220 pl 9.hwn1
2221         - abstracting Staff_symbol_referencer to an interface.
2222         - quantised_position for staccato dots.
2223         - standchen fixes
2224         - junk Score_element::do_{width,height}: set callbacks directly.
2225         - merge Score_element, Graphical_element
2226         - merge Axis_group_element, Graphical_axis_group
2227         - junk pointer fields from Score_element derived classes
2228         - junk obsolete do_substitute_dependency code.
2229
2230 **********
2231
2232 pl 8.hwn2
2233         - staff-support for Crescendi.
2234         - padding for accidentals.
2235         - cascading offset callbacks
2236
2237 pl 8.hwn1
2238         - note-head-side 
2239         - naming Staff_sidify -> Side_position_interface
2240
2241 ***********
2242
2243 pl 7.mb1
2244         - bf: timeSignatureStyle works again
2245
2246 pl 7.hwn1
2247         - Dirk Latterman key/mmrest patches
2248         - Offset callbacks in Dimension_cache
2249         - Junked Staff_side_*
2250         - Staff_sidify: interface class.
2251         - prelude-{1,2} fixes.
2252
2253 ***********
2254 pl 6.uu2
2255         - bf: PS font selecting.
2256
2257 pl 6.uu1
2258         - bf: ls-latex
2259         - mudela-book --no-pictures
2260         - bf: ly2dvi
2261         - convert-mudela: beamAuto moment syntax. 
2262
2263 pl 6.jcn3
2264         - fixed scm output
2265
2266 pl 6.jcn2
2267         - half-baken ly-gulp-file in scm
2268         - resurrected scm output through guile
2269
2270 pl 5.mb1
2271         - bf: version of init.sly, init.fly
2272         - Clarify necessary version of texinfo
2273         - bf: texi files, minor errors and syntax compatible with 
2274           older makeinfo
2275
2276 pl 6.jcn1
2277         - bf: scm output
2278
2279 *******
2280
2281 pl 5.hwn2
2282         - Bach preludes: mutopification
2283         - dots are Directional_element too; use \property dotDirection
2284         - moved some stuff out of Lookup
2285         - bf: dots
2286         - font selection mechanics changed.
2287
2288 pl 5.uu1
2289         - bf: smob allocation (thanks David!)
2290
2291 pl 5.hwn1
2292         - junked \shape. Now use #'margin-shape 
2293         - timing: one_beat -> \property beatLength
2294         - bf convert-mudela
2295
2296 ************
2297
2298 pl 4.uu1
2299         - input/test/ \property fixes.
2300         - gcc 2.95 fix
2301
2302 pl 4.hwn1
2303         - Break_align_engraver,
2304         break align order from  \property breakAlignOrder
2305         - junked Score_priority_engraver
2306         - moved Time_description into Timing_translator
2307         - use properties for timing, see input/test/timing.fly
2308         * removed \cadenza ; now use \property Score.timing
2309         * \property measurePosition
2310         * \property measureLength
2311         * \property currentBarNumber
2312         - Note_name_engraver , \context NoteNames
2313
2314
2315 pl 4.jcn1
2316         - junked some chord guessing code
2317         - bf: lookup size (-1) for chord-name accidentals
2318         - bf: ly2dvi's MFINPUTS setting
2319
2320 *************
2321 pl 2.jcn3
2322         - chords:
2323           * Chord is item
2324           * junked TeX hacking
2325           * configurable with styled strings from scm
2326           * fixes: dim, /no X, tonic != C
2327
2328 pl 2.jcn2
2329         - chords from  scm 
2330
2331
2332 pl 3.hwn2
2333         - visibility-lambdas into default elt properties SCM.
2334         - clef types in SCM
2335         - verticalDirection properties now in SCM.
2336
2337 pl 3.hwn1
2338         - move position_i_ into Staff_symbol_referencer
2339         - move dir_ into Directional_element baseclass
2340
2341 ****************
2342
2343 pl 2.hwn1
2344         - bf: dynamic style.
2345         - prepare to move dir_ into SCM. 
2346
2347 pl 2.jcn2
2348         - chord fixes: 
2349            * inversion request: no inversion guessing for chord entry
2350            * bass request: c/+b to add bass note not part of chord
2351            * -dim modifier works on all thirds
2352            * colon iso dash as tonic/modifier-additions separator
2353            * C:m5- displays as "Cdim"
2354            * C:m5-7- displays as "Co"
2355
2356 pl 2.jcn1
2357         - moved bracket vars to params
2358         - reverted broken lilypond-devel
2359
2360 *************
2361 pl 1.uu1
2362         - David's patches:
2363         * mfplain.mp detection
2364         * Graphical_element::common_refpoint() robuster.
2365         * fixes for mudela-mode.el
2366         - Dirk's patches:
2367         * key signature placement,
2368         * tied accidentals.
2369
2370 pl 1.hwn2
2371         - extra-offset elt property.
2372         - junked Chord_tremolo
2373
2374 pl 1.hwn1
2375         - changed calling convention for {get,set,remove}_elt_property()
2376         - rm'd some mutopia examples.
2377
2378 *******
2379 pl 0.hwn2,1
2380       - Generic properties and Property_engraver. Moved most of the
2381 properties.
2382
2383 0.lu1
2384         - resurrected midi2ly
2385
2386 0.jcn1
2387         - bf: lyrics lexer
2388         - reverted mup2ly revert
2389
2390 pl 3.uu1:
2391         - frontport of 1.2.17 patches.
2392
2393 **********
2394
2395 1.3.0:
2396
2397 pl 15.hwn2
2398         - loads of bfs.
2399
2400 pl x.jcn3
2401         - another workaround: reset buffer state for scm_ftell ()
2402         - workaround for broken scm_ftell ()
2403
2404 pl 15.hwn1
2405         - \properties are now SCM s, junk Scalar type
2406         - use SCM for strings in parser.
2407         - Moment derived from Rational. Moment may be smobified.
2408
2409 pl 15.jcn4
2410         - direct #... to scm parser  (Thanks to Gary Houston)
2411