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