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