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