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