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