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