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