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