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