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