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