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