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