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