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