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