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