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