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