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