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