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