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