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