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