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