]> git.donarmstrong.com Git - lilypond.git/blob - CHANGES
patch::: 1.3.42.jcn2
[lilypond.git] / CHANGES
1 1.3.42.jcn2
2 ===========
3
4 * mf/feta-accordion.mf: Fixed strange turning paths.
5
6 * mf/feta-beugel.mf: Fixed infinity errors.
7
8 * Use a more discriptive name for windows setup.zip.
9
10 * mf/GNUmakefile: Have logs as last target, so that normally, they're 
11 not made twice.
12
13 * stepmake/stepmake/metafont-rules.make: Don't remove the .log files.
14 The logs are a target, removing them retriggers make.
15
16 * stepmake/stepmake/metapost-rules.make: Remove the correct log and tfm
17 files, ie the ones that clutter the source directory, not the target logs.
18
19
20 1.3.42.jcn1
21 ===========
22
23 * Windows distribution: faked symlink for cmtfm.  Setup.zip should now be
24 standalone; ie, no need for Cygnus' usertools anymore.
25
26 * break-align-engraver.cc (acknowledge_element): Added missing axes
27 property to edge element.
28
29 1.3.41.jcn3
30 ===========
31
32 * Lots of fixes to windows distribution scripts.
33
34 * Added configuration features --program-prefix, --program suffix.
35
36 * lily/my-lily-parser.cc (get_chord): Bugfix, don't use deleted pitch.
37 This fixes inversions c/g and bass additions d/+c on chords.
38
39 1.3.41.mb1
40 ==========
41
42 * Avoid that xxxXXXVerticalExtent is used for empty HaraKiriStaff
43   lines.
44
45 1.3.41.hwn1
46 ===========
47
48 * Debian patches (thanks Anthony!)
49
50 * Use symbols for prefatory matter spacing. Do not use the typename
51 for looking up item pairs in the table, but read element property
52 break-align-symbol
53
54 * Instrument_name_engraver, uses break alignment instead of
55 side-position.
56
57 * System_start_delimiter_engraver, System_start_delimiter, uses a
58 spanner for the braces/brackets at the left of the system. Remove all
59 old Span_score_bar engravers.
60
61 * Removed Base_span_bar_engraver::use_prority_b_, and moved
62 Base_span_bar_engraver into Span_bar_engraver.
63
64 1.3.40.jcn3
65 ===========
66
67 * mutopia/Coriolan/violino-2.ly: Bugfix: wrong pitch.
68
69 * input/test: Removed stale AutoStaffSwitch examples.
70
71 * mutopia/E.Satie: Fixed gnossiene-4, doing \autochange.  Removed
72 stale copy of gnossiene-4.
73
74 * buildscripts/make-cygwin-cross.sh: Made some small .zip package fixes.
75
76 * make/lilypond.spec.in: Made some bugfixes for _prefix, preparations
77 for cross-building to Cygwin.
78
79 * buildscripts/make-cygwin-cross.sh: Now using rpm packages.
80
81 1.3.40.hwn2
82 ===========
83
84 * added \property XXXMinimumVerticalExtent, \property XXXExtraVerticalExtent
85
86 * New_chord_tremolo_engraver: make tremolo beams from
87
88         \repeat "tremolo" NUMBER <Music-expression>
89
90 Removed support for "old-style" tremolos.
91
92 * Add a convert-mudela function for the conversion "\key A;" to "\key a; 
93
94 * Read \property measurePosition within the engraver code, instead of
95 looking up the Timing_translator.
96
97 * star-spangled-banner.ly: add Bar_engraver to LyricsVoice 
98
99 * Changed all .fly and .sly files to .ly files.  Propose to dump .fly
100 and .sly.
101
102 1.3.40
103 ======
104
105 1.3.39.jbr1
106 ===========
107
108 * buildscripts/mf-to-table.py: feta dep files are now opened with write
109   binary option.  This avoids carriage return linefeed problems and
110   windows while not affecting unix.
111
112 * Documentation/hacking.texi: Fixed a texinfo syntax error
113
114 * stepmake/bin/package-zip32.sh: Fixed or Removed some legacy, 1.2.x,
115   directory paths.
116
117 * Documentation/ntweb/index.texi: Fixed broken links, added 1.3.39 links.
118
119 1.3.39.hwn1
120 ===========
121
122 * Glossary updates by Christian Mondrup.
123
124 * Bugfix: use generic properties in lyrics too. This fixes the
125 \property textStyle for lyrics.
126
127 * Score_element::preset_extent(), used by \property
128 XXXVerticalExtent, so hard code the size of a vertical group. 
129
130 * Don't fix up reference points for originals of broken
131 spanners. Fixes spurious "orphaned score-element" warnings.
132
133 * buildscripts/make-cygwin-cross.sh: Use rx-1.5 instead of regex (Jeffrey).
134
135 * scm/lily.scm: Fixed check for Windows: by default don't use scm regex.
136
137 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: Significantly smaller
138 patch for guile.
139
140 * buildscripts/make-cygwin-cross.sh: Compile native package GNU regex,
141 which should fix Windows problems with guile.  Also added input directory
142 to zip file.
143
144 * stepmake/aclocal.m4: Added decent checking for version of guile, and 
145 fixed warning message.
146
147 * lily/lexer.ll (My_lily_lexer): Bugfix: lookup chordmodifiers in the
148 chord-modifier table (not in the pitch list).
149
150 1.3.39
151 ======
152
153 1.3.38.hwn2
154 ===========
155
156 * General cleanups of My_lily_parser. 
157
158 * Start of a Chord_tremolo_iterator for the `\repeat 4 "tremolo"'
159 syntax.
160
161 * Moved Score_element::do_space_processing out of the dependency
162 mechanism.
163
164 * Use Scheme for notename tables.  Removed uppercase letters for low
165 octave notes. Removed Notename_table.
166
167 * Fixed core dump with declared "\key  ; "
168
169 * Extra robustness warning for Side_position_interface::aligned_on_self ()
170
171 * Extra robustness: make sure that first and last columns are breakable.
172         
173 1.3.38.jcn4
174 ===========
175
176 * stepmake/aclocal.m4: Added support for cross-compiling with guile.
177
178 * buildscripts/make-cygwin-cross.sh: A try at dropping cygwin1.dll
179  dependency by using mingw.  Compiling guile is too much to ask
180  for mingw, though.  Also:
181  - rename python scripts .py (request from Alain)
182  - install native packages under their own, separate root. (Alain)
183
184 * lily.scm: Don't use regex module when running on
185 Windows. (Shamus)
186
187 * lily/staff-margin-engraver.cc (acknowledge_element): If
188 possible, hang y-axis of margin script to span-bar.  This fixes
189 vertical placement of margin scripts attached to staff groups.
190
191 * help2man-rules.make: Fixes for generating manpages by copying
192 and for building using --scrdir.
193
194 * stepmake/stepmake/generic-targets.make: Preserve date stamp of
195 config.h, version.hh files file when copying.
196
197 * buildscripts/make-cygwin-cross.sh: made number of fixes:
198         - add `Cygnus/' prefix to directories in .zip-file too.
199         - package guile too.
200         - don't link to cygwin1.dll
201
202 * stepmake/stepmake/install-targets.make: bugfix, don't fail if directory
203   is not emty when uninstalling.
204         
205 * stepmake/stepmake/generic-targets.make: added man target.
206
207 * buildscripts/make-cygwin-cross.sh: new script for cross-building cygwin
208   development tools and lilypond executable.
209
210 * Documentation/ntweb/lilypond-manpages.patch: provide pre-built
211   manpages, so that make doesn't fail on help2man trying to execute
212   a GNU/windows executable.     
213
214 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: new patch for
215   guile-1.3.4.  
216
217 * flower/libc-extension.cc (memmem): cygwin compile fix.
218
219 1.3.38
220 ======
221
222 1.3.37.hwn1
223 ===========
224
225 * (generic-property.scm) added \property tieDash to set dashing on
226 ties.
227
228 * Removed  ly_eval_str(), we should use scm_eval (Scm_object).
229
230 * Removed scm_to_array (), array_to_scm (), associated junk. Reverted
231 undocumented .29 patch that made Bezier::control_ into an
232 Array<Offset>.  Added some comments documenting the reasons for the
233 changes.
234
235 * Revert generic-property.scm of .37 fix, fix the real problem in
236 property-engraver.cc: use the right symbol to check if element
237 property is already set.
238
239 1.3.37.jcn2
240 ===========
241
242 * Fixed srcdir build, so that you can do:
243
244       tar xzf releases/lilypond-x.y.z
245       mkdir <build>
246       cd <build>
247       ../lilypond-x.y.z/configure
248       make
249
250   as with any other gnu package.  All build output goes to <build>/out.
251
252 * Changed and fixed use of different configurations, and different output
253   directories.  Finally, you can use different configurations alongside
254   eachother.  From make/stepmake.make:
255
256       # Use alternate configurations alongside eachother:
257       #
258       #     ./configure --enable-configsuffix=debug
259       #     make conf=debug
260       #
261       # uses config-debug.make and config-debug.h; output goes to out-debug.
262       #
263
264       # Use same configuration, but different output directory:
265       #
266       #     make out=WWW
267       #
268       # uses config.make and config.h; output goes to out-WWW.
269       #
270
271
272 * Fixed performance of (de)crescendi.
273
274 * Better documentation for arithmetic_multiplier and arithmetic_basicspace
275   in params.ly.
276
277 * Added instrument-equaliser for MIDI output, see scm/midi.scm, and
278   properties midiMinimumVolume, midiMaximumVolume, ranges [0,1].
279
280 * Changed absolute midi volume settings into factor of full scale.
281
282 * Fixed another dynamic-line-spanner bug, it gets hairy.
283
284 * Added warning for spanners that are not fully contained in parent spanner.
285
286
287 1.3.37
288 ======
289 1.3.36.hwn1
290 ===========
291
292 * Abstract Align_element into Align_interface. Removed
293 Axis_align_{item,spanner}, Align_element, Super_element, all multiple
294 inheritance in the backend.
295
296 * new Gade score, INSTALL.texi fixes (thanks, Mats)
297
298 * Removed Item::hpos_f (), Score_element::{get,set}_real ()
299
300 * comments detailing properties for Axis_group_interface,
301 Side_position_interface, Score_element, Item and Spanner
302
303 1.3.36.jcn3
304 ===========
305
306 * Fixed vertical dimensions of elements in dynamic line spanner by adding
307   axis-group to dynamic line spanner.
308
309 * Bugfix: line-spanner lasts always full duration of (de)crescendi.
310
311 * Bugfix: broken (de)crescendi on a dynamic-line-spanner.
312
313 * Bugfix: compilation dynamic-engraver.
314
315 * Added and updated a faq about postscript and ghostscript.
316
317 * Fixed order of slurVerticalDirection verticalDirection in
318   generic-property.scm.  Similar fixes for Stem, Tie, etc.
319
320 * Added a Text_engraver to GraceContext.  Maybe it was removed on
321   purpose: scripst on grace notes seem broken, they appear on the
322   main note.
323
324 * Bugfix: volume effect of (de)crescendi was sometimes wrong way round.
325
326 1.3.36
327 ======
328 1.3.35.hwn1
329 ===========
330
331 * textEmptyDimension changed into textNonEmpty, default: off,
332 ie. texts don't occupy space.
333
334 * Use STL map for Lookup::lookup_p_tab_p_
335
336 * Abstracted Axis_group_element into Axis_group_interface, and removed
337 Axis_group_element. This eliminates some multiple inheritance in the
338 backend
339
340 1.3.35.jcn1
341 ===========
342
343 * Added minimum-space property to Side_position_interface.  Used in
344   positioning of Volta_spanner: voltaMinimumSpace.
345
346 * Fixed and cleaned-up volta-spanner.
347
348 * Moved directional-element.cc -> directional-element-interface.cc
349
350 * Renamed all `process_requests' to `process_music', which fixes
351   midi performance.
352
353 * Fixed dimensions (more x-y interchanges) of brace, bracket and
354   volta-spanner.
355
356 * Bit half-baken fix in to get similar vertical placement of orphaned vs.
357   line-spanned dynamic elements.
358
359 * Added property bracketCollapseHeight: the minimal size of a staff bracket
360   that will be typeset.  Smaller brackets will not be displayed.  This
361   fixes the (in 1.3.x reintroduced) funny duck-beak-bracket-bug (sorry).
362
363 * Removed some dissonant chords from Coriolan
364
365 1.3.35
366 ======
367
368 * Removed Documentation/programmer directory 
369
370 1.3.34.jcn3
371 ===========
372
373 * Small enhancements to Staff_margin_engraver:
374    - by default, the marginScript left aligns the text
375    - to set the text style, use property marginScriptTextStyle
376    - to change the alignment, use property marginScriptHorizontalAlignment
377      (centred and right alignment require manual padding settings).
378
379 * Print a friendly message if the manual pages failed to build.
380
381 * Bugfix: dynamicDirection now overrides verticalDirection setting.
382
383 * Warning messages and nl.po
384
385 * Fixed vertical alignment for all dynamic items and (reluctantly)
386   reinstated old directional behaviour for orphaned dynamics.
387
388 * Finished maximumRestCount property.
389
390 1.3.34
391 ======
392 1.3.33.hwn2
393 ===========
394
395 * Print key without setting key, syntax "\key ;". General cleanups of
396 key-item.
397
398 * Add paragraph tags in HTML output of mudela-book.  Music fragment
399 don't run into the text anymore.
400
401 * Bugfix: don't align the first line of text. (Lookup::text ()).
402
403 * Abstract away data members of Axis_group_element, Align_element
404
405
406 1.3.33.jcn3
407 ===========
408
409 * Added helpful properties instrumentScriptPadding/instrScriptPadding for
410   Staff_margin_engraver.
411
412 * Removed some empty files, substituted (c) 1999 occurrences.
413
414 * Added \property maximumRestCount.  It will prevent showing (or actually:
415   moving in case of a collision) more than maximumRestCount similar rests.
416   WIP!
417
418 * Rewrote Staff_margin_engraver.  Staff margin texts now hang on a new
419   breakable item: Left_edge_item.
420
421 * Fixed vertical alignment for dynamic elements.  Orphaned dynamic items
422   (not supported by a Dynamic_line_spanner) still collide with Staff,
423   although they now have staff support, which was supposed to fix this.
424
425 * Fixed Staff_margin_engraver for "instrument", "instr" is still broken.
426
427 * Dynamic elements are only put in a Dynamic_line_spanner if there
428   actually is more than one adjacent note-column with a dynamic.
429   This breaks the fine looks of all dynamics, again :-)
430
431
432
433
434 1.3.33
435 ======
436
437 1.3.32.hwn3
438 ===========
439
440 * Experiment: use STL map for Scheme_hash_table; Is there a speedup?
441
442 * Bugfix: print brace iso. bracket for Piano / GrandStaff
443
444 * Change naming: change do_post_processsing into after_line_breaking,
445 do_pre_processsing into before_line_breaking and do_process_requests
446 into do_process_music.
447
448 * Bugfix in hash-table.hh: do quadratic probing, and not cubic probing.
449
450 * Display property name for type error.
451
452 * Cleanups for Dynamic_engraver and Dynamic_line_spanner.
453
454 * Warn if last column in score is musical. Helps catch programming errors.
455
456 * Spanner::spanned_drul_ now is private. 
457
458 * Rewrote some bar code: moved molecule functions out of Lookup.
459
460 1.3.32.jcn3
461 ===========
462
463 * Embedded newlines in text items are now allowed.  This helps avoiding
464   TeX-hacking in some cases.  See input/test/coriolan-margin.ly
465
466 * Fixed stupid x-y interchange bug for staff-bracket.  This fixes
467   placement of staff-brackets.
468
469 * Fixed bracket/arch-thickness interchange bug, and made bracket a bit
470   thinner.
471
472 * Fixed slur/bezier-beautiful name mismatch.  This should fix the steep
473   slurs that were apparently reintroduced in 1.3.29.
474
475 * Made some small fixes to Coriolan.
476
477 * Removed duplicate lily/output-property-engraver.hh.
478
479 * Removed optional use of vanilla spanner in Dynamic_engraver.
480
481 * Fixed (measured) tremolo for Stem and Beam. Merged declarations
482   stem-engraver.hh and chord-tremolo-engraver.hh into their .cc
483   implementation file.  Also fixed looks of Chord tremolo, input and
484   implementation is still ugly.
485
486 * Added *.yy and *.ll to TAGS, to that tags-find-replace doesn't omit
487   parser and lexer.
488
489 1.3.31.mb1
490 =========
491
492 * Fixed \specialkey and \normalkey. Updated documentation.
493
494 1.3.32
495 ======
496 1.3.31.jcn5
497 ===========
498
499 * Fixed and cleaned-up Dynamic_engraver.  Optionionally uses vanilla
500   spanner instead of Dynamic_line_spanner.
501
502 * Made gcc-2.95 compile fix in libc-extension.
503
504 * Various fixes to Coriolan, score starts to look acceptable.
505
506 * Moved optional text of crescendo into Crescendo spanner.  Fixed horizontal
507   and vertical alignment of dynamics.
508
509 * Added new text crescendo spanners to Coriolan and made some fixes.
510   If you're using timidity, use the -EO option to prevent notes get
511   stuck.  I'm not sure whose fault this is, Lily's MIDI output may be
512   stretching the standard a bit.
513
514 * Adjacent dynamic markings are now grouped on a horizontal line, but it's
515   not perfect yet: they're always below the staff and no horizontal spacing
516   is done.  Also, character metrics of dynamics are still not used.
517   See: input/test/crescendi.ly and input/test/dyn-line.ly
518
519 * Cleaned up Span_dynamic_performer.
520
521 1.3.31
522 ======
523 1.3.30.mb1
524 =========
525
526 * Fixed the page layout, reintroducing space for the header and
527   trying to keep piece titles on the same page as the piece.
528   The header and footer can now contain several lines.
529
530 1.3.30.jcn3
531 ===========
532
533 * Lily now also performs crescendi and decrescendi in MIDI output:
534   Span_dynamic_performer (bit scrappy).
535
536 * Added preliminary support for crescendi/decrescendi other than `hairpins',
537   eg: `cresc. poco `a poco -- -- --'
538
539 * Made MIDI tie performance fix.
540
541 1.3.30.jcn2
542 ===========
543
544 * Lily now performs absolute dynamics in MIDI output.
545
546 * Included David's comments on opus47 in TODO.
547
548 1.3.30.jcn1
549 ===========
550
551 * More Coriolan: flute-1,2; oboe-1,2; clarinet-1,2; 
552   fixes and remainder french horn-1,2; trombone-1,2;
553   fagotto-1,2; timpani; and several fixes.
554   
555 1.3.30.uu1
556 ==========
557
558 * Remove some old doco from programmer/ and put on personal homepage.
559
560 * Removed union-find from flower library.
561
562 * Only quantise tie horizontal part inside the staff.
563
564 1.3.30
565 ======
566 1.3.29.hwn1
567 ===========
568
569 * Report type errors for \property. Helps with converting 1.2 input
570
571 * Use Scheme for Align_element; fixed graceAlignPosition 
572 and removed \property alignmentReference in the process.
573
574 * Use generic properties for lyrics too.  This fixes \property
575 Lyrics.textStyle
576
577
578 * Add relative distance for constraints between non-column items.
579
580 * Automatic \marks: use "\mark ; ". The mark numbers or letters are
581 increased automatically.
582
583 * Translators now only change properties of their own context. This
584 removes the 2nd argument to Translator::get_property()
585
586 * Bugfix for Metapost mode
587
588 1.3.29.uu1
589 ==========
590
591 * Updates of glossary  (Christian Mondrup)
592
593 * Bugfix with bar number placement
594
595 * Moved links to bibliography/ and misc/ to main index.
596
597 1.3.29
598 ======
599
600 * Moved Slur-specific code from Bezier_bow to Slur and Slur_bezier_bow.
601   Slurs are now calculated just once.
602
603 * Bezier_bow gets constants from paper.  Still no sensible solution for
604   magic asymmetry gradient step constants.
605
606 * Reinstantiated tangent-controls, more flexible than ever.  You can choose
607   between area asymmetry and tangent-controls.  My guess is, tangent controls
608   will be junked in 1.3.30.
609
610 * Slur area: only look at x-gradient.
611
612 * Added credits for some symbols of as5/9 fonts.
613
614 * Bugfix: don't make almost flat slurs, change in de-uglyfy slur.  
615
616 * Bugfix: midi2ly put out recent version (ugh).
617
618 1.3.28.hwn2
619 ===========
620
621 * Bugfix: don't forget to process staffSpace and numberOfStaffLines
622 properties.
623
624 * Removed Gade score. To appear (shortly?) on Mutopia. 
625
626 * Make Bar_script_engraver look for typeVisibilityFunction (eg
627 property barNumberVisibilityFunction). Changed the names of the Scheme
628 functions to be understandable. See input/test/bar-script-visibility.ly
629
630 * rewrite of class Molecule. It has now reached the ultimate quality
631 plateau. All molecule data is now shared.
632
633 1.3.28
634 ======
635
636 * Update of the glossary by Christian Mondrup 
637
638 * Moved horn-concerto-3 out of tarball to private website, removed
639 W.A.Mozart subdirectory.
640
641 1.3.27.hwn1
642 ===========
643
644 * Bugfix: don't make giant ties if the horizontal part of tie is near
645 the center.
646
647 * Small optimizations to be a little more careful with mem usage. 
648
649 * Website change: put all examples in one directory.
650
651 * Removed Atom as a separate type.  Now use SCM, and since we use
652 function composition, Atoms are immutable, so they don't have to be
653 copied. This makes life easier, hopefully this is quicker and uses
654 less memory.
655
656 1.3.27.jcn1
657 ===========
658
659 * Bezier_bow: minimise_enclosed_area
660
661 1.3.27
662 ======
663
664 1.3.26.hwn4
665 ===========
666
667 * Tuplet-spanner slope calculation now looks better on tupletted rests
668 (patch courtesy Laurent Martelli)
669
670 * Bugfix (Staff_performer::new_instrument_str ()) check type of
671 \property "instrument"
672
673 * New mechanism for breaking lines: do not copy & prune the element
674 property list separately, but combine these steps. Dramatically
675 reduces memory usage for large scores.
676
677 1.3.27
678 ======
679 1.3.26.jcn2
680 ===========
681
682 * Bugfix: font used in volta-spanner calculation.
683
684 * Added simple selection list to webpage, inspired by sawmill.
685  
686 * Devised kludge for ascii 5 character font pitches.
687  
688 * Substitutions: interline, 1997,1998, @stack.nl and small typo fixes.
689
690 1.3.26.hwn1
691 ===========
692
693 * Plug memory leaks related to Moment:
694   - Spacing_engraver::do_pre_move_processing ()
695   - make_rational ()/make-rational
696   - Paper_column::Paper_column ()
697
698 * Plug memory leak in Paper_outputter::output_{String,Real,int}_def()
699
700 * Plug memory leak in Score_engraver::set_columns ()
701
702 * Plug memory leak in Scheme_hash_table::set()
703
704 * Plug memory leak in Score_element::molecule_extent ()
705
706 * Bugfix: don't crash if a slur doesn't span anything.
707
708 * Bugfix: don't crash if doing beams without a staff symbol.
709
710 * Generic element property setting:
711
712         \outputproperty #predicate #'symbol = #value
713
714 Will set the element property symbol to value, for any elements that
715 return true for PREDICATE.  This allows you to virtually tweak *ANY*
716 property of the output. Example in input/test/generic-output-property.ly
717
718 1.3.26
719 ======
720
721 * lilypond as as2ly: --help and --version to stdout.  Regular identify 
722   to stderr.  This fixes help2man's manpage generation.
723
724 * configure: substitute full path for perl and guile in scripts.
725
726 * Added ascii slur and volta.  There seems to be a Lily bug in volta placement.
727
728 * Bugfix: default font now user settable
729
730 * as2text: handle plain ascii font, read from stdin, you can now do:
731
732   echo "\time 4/4; g''1 g2 g4. g8" | lilypond -f as -i init-as.fly - | as2text
733
734 1.3.25.hwn1
735 ===========
736
737 * Bugfix: second half of broken ties now are displayed again.
738
739 * Bugfix: add clef to the support of 8 text in the G_8 clefs. Center
740 it horizontally on the clef.
741
742 * Added Tie_column spanner. Ties in tied chords now get proper directionsa.
743
744 * Bugfix: unbroken repeat barlines now work, eg. |:
745
746 * Added Request_iterator to make more flexible constructions possible.
747
748 1.3.25
749 ======
750 * as2text: catch missing font/character errors, added default font, set text.
751
752 * New ascii fonts and glyphs: as5 as-numeral4 as-braces9
753
754 * Ascii output, minimal support:
755   - AsciiScript Fonts: mf/*.af
756   - Init files: ly/*-as.*ly 
757   - AsciiScript translation to text: scripts/as2text.scm
758   - input/test/as.fly input/test/as1.fly
759   - Output support: lily/lily.scm
760   - Try:
761       lilypond -f as -i init-as.fly input/test/as.fly
762       as2text as.as
763
764 1.3.24.hwn1
765 ===========
766
767 * The horizontal part of ties will avoid collision with staff lines.
768
769 * Plugged memory leak: don't protect Atom function.
770
771 * Lookup cleanups. Made lots of functions static. Moved some code out
772 of Lookup.
773
774
775
776 1.3.24.hwn1
777 ===========
778
779 * Bugfix: ly2dvi.py exits succesfully when encountering --help and
780 does not delete any of the file_ly*.tex.
781
782 * Added header and footer support in ly2dvi.py
783
784 1.3.24
785 ======
786
787 * Added a ROADMAP file explaining the source directory layout.
788
789 * Minor tweak in the feta 6 and 9 numeral
790  
791 * Moved files from lib/ to flower/
792
793 * Removed Note_head_side class.
794
795 * Updated the webpage to be a little more chatty. 
796
797 * Small Local_key_engraver optimization: only lookup timing engraver once.
798
799 * Fixed dashed slurs
800
801 * Rewrite of Slur code.  Be much more picky about slur shapes. We try
802 to offset the slur instead of bending it too much
803
804 * Look at stem directions for tie direction.
805
806 * Compound multimeasure rests. Put measures_i_ variable in an element
807 property.  Made the symbol a lot wider.
808
809 * Time signature small cleanups.
810
811 1.3.22.hwn2
812 ===========
813
814 * Symbols opposite to stem (eg marcato) now get the proper glyph in up
815 version.
816
817 * Breathing marks now have a direction by default.
818
819 * Do set generic script properties.
820
821 * Also put tuplet brackets under notes.
822
823 * Score_element_info: only store origin of element, but not the path
824 to parent translators. Saves a little memory, and removes some complexity.
825
826
827 1.3.22.hwn1
828 ===========
829
830 * Autobeaming in time sigs that don't have 1/4 beats fixed.
831
832 * (De)crescendi should now work. (Thanks Michael)
833
834 * Better error reporting for conflicting time signatures.
835
836 * Line_number_engraver: output locations of note head
837 definitions. Very handy when entering complicated scores.
838
839 * Rewrote multi measure rest support: now they are entered as spanners
840 (\commandspanrequest \start "rest"). RXXXX is an abbreviation for
841
842   { \commandspanrequest \start "rest"
843     SXXXX
844     \commandspanrequest \stop "rest"
845   }
846
847 * Removed support of percent style repetitions. 
848
849 * Put texts outside the staff.
850
851 1.3.21.mb1
852 ==========
853 * Getopt bugfix: don't assert on certain errors.
854
855 * ly2dvi: Remove unnecessary space for the page headers.
856
857 * Bugfix convert-mudela
858
859 1.3.21.hwn1
860 ===========
861
862 * Bugfix in lilypond-mode.el: eval-buffering now uses file name and
863 not buffer name.
864
865 * Scrapped tupletVisibility property. Now use tupletNumberVisibility,
866 tupletBracketVisibility, with Scheme value #t, #f or 'if-no-beam.
867 \property tupletInvisible will stop all tuplet spanner creation.
868
869 * Don't go berserk if tuplet spanner is on only one column.
870
871 * Use SCMs & Smobs for Molecules & atoms.  This uses less
872 scm_(un)protect_object () calls, so the output stage should be faster.
873
874 * Added \property tupletSpannerDuration, to make multiple tuplet signs
875 with one \times.
876
877 * Some programming Errors in spacing are now caught. Lily does not
878 hang when encountering degenerate springs.
879
880 * Allow beams to start and end over rests
881
882 1.3.19.hwn2
883 ===========
884 * Fix disappearing clefs when clefs are not printed with a barline.
885
886 1.3.20.jcn2
887 ==========
888
889 * SCM properties beamHeight and beamVerticalposition now use half-spaces:
890   input/test/beam-control.fly
891 * Added \context Voice to .fly and .sly; the default \context Staff is almost
892   never what you expect
893 * Fixed decision for .sly/.fly in lilypond-mode.
894
895 1.3.19.hwn1
896 ==========
897
898 * Clean up font-metric hierarchy, use Adobe AFM code to parse AFM files.
899 Cleanup mf-to-table.py
900
901 * Fixed embarassing slur bug.
902
903 1.3.19.jcn1
904 ==========
905
906 * lilypond-mode.el: guess init file for lily-*-region, lily-mode-map bindings
907
908 1.3.18.uu2
909 ==========
910
911 * lilypond-mode.el for emacs supersedes mudela-mode.el 
912
913 * Tuplet spanners don't collide with encompassing notes. 
914
915 * Gobbled Adobe parseAFM* code, for future use.
916
917 * Big 1999 to 2000 search/replace.
918
919 * Big interline to staff_space search/replace for mf files.
920
921 * Removed Bow class, and split code into Tie and Slur
922
923 * Don't put scripts on grace notes.
924
925 * Font_metric uses SCM for name field.
926
927 * Various compilation fixes.
928
929 1.3.17.jcn2
930 ===========
931
932 * Bugfix: beams with less than one (visible) stem
933
934 * small fixes to pa.ly
935
936 1.3.17.jcn1
937 ===========
938
939 * Fixed bug that made multi-measure rest barnumber counts go wild.
940 (even more scm2int/int2scm mixups!)
941
942 * mutopia/J.S.Bach/pa.ly: organ score (for my father)
943
944 * small fix to mutopia/J.S.Bach/Duette/violino-ii.ly
945
946 1.3.17.hwn2
947 ===========
948
949 * Remove Paper_def calls in bezier-bow.cc
950
951 * Remove data members of Tuplet_spanner,  Volta_spanner
952
953 * hang_on_clef, property hangOnClef removed
954
955 * Bar::type_str_ mode into element property `glyph'. Use a Scheme
956 function to determine breaking behavior.
957
958 * More Scheme typechecking.
959
960 * Be strict about the difference between strings and symbols for conversion.
961
962 * Fixed bug that made 1st line offset to right fixed. Bugfix courtesy
963 Laurent Martelli.
964
965 * Partial French translation, courtesy Laurent Martelli.
966
967 * Small corrections in NL translation. 
968
969 1.3.17.hwn1
970 ===========
971
972 * Added mensural note heads (noteHeadStyle = "mensural") Additionally,
973 we have a longa note head.  noteHeadStyle = "harmonic" is not
974 supported anymore. (for now, that is)  
975
976 * Reference manual update. Document \properties with examples
977
978 * fix mudela-book --help
979
980 * Use element properties for Text_item::text_str_, Clef_item::symbol_,
981 Key_item::c0_position_
982
983 * Clef_engraver general cleanup. Use alists (\property
984 supportedClefTypes, clefPitches) for clef types.
985
986 * Use progress_indication () for progress. Don't include <iostream.h> directly 
987 Don't include <string.h>, <math.h> from headers.
988
989
990 1.3.16.hwn1
991 ===========
992
993 * \property stemCentered (boolean): centers stem on note head. See
994 input/test/stem-centered.ly
995
996 * input/trip.ly, small test of lots of features.
997
998 * \property Staff.collisionMergeDotted: merge equal noteheads
999 with different dot count. See input/test/collision-merge-dotted.fly
1000
1001 * Dotted rest bugfix 
1002
1003 * Don't crash if a slur does not span any notes.
1004
1005 * Volta repeats fixed.
1006
1007 * cleanup of Note_heads_engraver
1008
1009 * removed dots_i_ member of Dots
1010
1011 1.3.16.jcn1
1012 ===========
1013 * Fixed cross staff slurs.  It seems that cross-staff sign
1014   was swapped.
1015
1016 1.3.15.hwn1
1017 ===========
1018
1019 * Fixed bug in stem code.  Stem in chords works again.  Small
1020 stem cleanups.
1021
1022 * Use element properties for Staff_symbol.
1023
1024 * \property sparseTies (boolean).  Only make one tie in the
1025 middle for tied chords.
1026
1027 * Junked Directional_spanner, Column_info.
1028 Directional_element now is element interface `Directional_element_interface'
1029
1030 * cleanup: use to_boolean () iso. gh_boolean_p && gh_bool2scm
1031
1032 pl 15.jcn4
1033         - removed old notename2scm conversion
1034         - beam-dir-algorithm through scm
1035         - bfs paper-scm
1036         - bf: knee-stemlengths
1037
1038 pl 15.jcn3
1039         - moved poor man's stem arrays to scm
1040         
1041 pl 15.jcn2
1042         - beam quanting using scm lists
1043
1044 pl 14.hwn1jcn1
1045         - chord-name uses scm members
1046         - bfs: knee with different mults, interstaff knee, auto-knee
1047
1048 **********
1049 pl 14.hwn1
1050         - specialize duration.cc for lily, move out of lib/
1051         - stem cleanup
1052         - more SCM typechecking
1053         - stafflineleading -> staff_space
1054         - bf: rod distances.
1055         - junk some unused code.
1056         
1057 pl 13.hwn2
1058         - paper/score column cleanups. Junk Score_column type
1059
1060 pl 13.hwn1
1061         - Bezier_bow/Bezier cleanups
1062         - bf: rest under beam.
1063         
1064 pl 13.jcn2
1065         - untangled Chord_name (item) and Chord (list-of-pitches)
1066         
1067 pl 13.jcn1
1068         - bezier-bow fix
1069
1070 **********
1071 pl 12.hwn1
1072         - polynomial.hh
1073         - bf: generic properties
1074         - quantise_iv () fix.
1075         - bezier cleanup
1076         - class Polynomial 
1077         - use smobs for font metric tables/hashes.
1078         - nl.po bf
1079
1080 **********
1081 pl 11.jcn3
1082         - small beam fixes (interstaff knees still broken)
1083
1084 pl 11.hwn1
1085         - bf: dots
1086         - bf: harmonic note heads
1087         - revise stem, notehead, rest
1088
1089 pl 11.jcn2
1090         - included missing scm,ly updates
1091         - bf: urg to_dir () takes scm..
1092         - bf's: if (Foo b = bar != 1)
1093         - beam cleanup
1094
1095 *********
1096 pl 10.uu1
1097         - various small bfs
1098         - bf: alignment reversed
1099         - Staff_symbol_referencer -> Staff_symbol_referencer_interface
1100         - bf: staccato pos
1101         - Knee fixes (thanks, Jan)
1102
1103 pl 10.jcn2
1104         - fixes for invisible beamed stems
1105         - removed steminfo from properties, don't cache Stem_info
1106
1107 pl 10.jcn1
1108         - steminfo to properties
1109         - dropped internote dim for stem-beams
1110
1111 *********
1112 pl 9.hwn1
1113         - abstracting Staff_symbol_referencer to an interface.
1114         - quantised_position for staccato dots.
1115         - standchen fixes
1116         - junk Score_element::do_{width,height}: set callbacks directly.
1117         - merge Score_element, Graphical_element
1118         - merge Axis_group_element, Graphical_axis_group
1119         - junk pointer fields from Score_element derived classes
1120         - junk obsolete do_substitute_dependency code.
1121
1122 **********
1123
1124 pl 8.hwn2
1125         - staff-support for Crescendi.
1126         - padding for accidentals.
1127         - cascading offset callbacks
1128
1129 pl 8.hwn1
1130         - note-head-side 
1131         - naming Staff_sidify -> Side_position_interface
1132
1133 ***********
1134
1135 pl 7.mb1
1136         - bf: timeSignatureStyle works again
1137
1138 pl 7.hwn1
1139         - Dirk Latterman key/mmrest patches
1140         - Offset callbacks in Dimension_cache
1141         - Junked Staff_side_*
1142         - Staff_sidify: interface class.
1143         - prelude-{1,2} fixes.
1144
1145 ***********
1146 pl 6.uu2
1147         - bf: PS font selecting.
1148
1149 pl 6.uu1
1150         - bf: ls-latex
1151         - mudela-book --no-pictures
1152         - bf: ly2dvi
1153         - convert-mudela: beamAuto moment syntax. 
1154
1155 pl 6.jcn3
1156         - fixed scm output
1157
1158 pl 6.jcn2
1159         - half-baken ly-gulp-file in scm
1160         - resurrected scm output through guile
1161
1162 pl 5.mb1
1163         - bf: version of init.sly, init.fly
1164         - Clarify necessary version of texinfo
1165         - bf: texi files, minor errors and syntax compatible with 
1166           older makeinfo
1167
1168 pl 6.jcn1
1169         - bf: scm output
1170
1171 *******
1172
1173 pl 5.hwn2
1174         - Bach preludes: mutopification
1175         - dots are Directional_element too; use \property dotDirection
1176         - moved some stuff out of Lookup
1177         - bf: dots
1178         - font selection mechanics changed.
1179
1180 pl 5.uu1
1181         - bf: smob allocation (thanks David!)
1182
1183 pl 5.hwn1
1184         - junked \shape. Now use #'margin-shape 
1185         - timing: one_beat -> \property beatLength
1186         - bf convert-mudela
1187
1188 ************
1189
1190 pl 4.uu1
1191         - input/test/ \property fixes.
1192         - gcc 2.95 fix
1193
1194 pl 4.hwn1
1195         - Break_align_engraver,
1196         break align order from  \property breakAlignOrder
1197         - junked Score_priority_engraver
1198         - moved Time_description into Timing_translator
1199         - use properties for timing, see input/test/timing.fly
1200         * removed \cadenza ; now use \property Score.timing
1201         * \property measurePosition
1202         * \property measureLength
1203         * \property currentBarNumber
1204         - Note_name_engraver , \context NoteNames
1205
1206
1207 pl 4.jcn1
1208         - junked some chord guessing code
1209         - bf: lookup size (-1) for chord-name accidentals
1210         - bf: ly2dvi's MFINPUTS setting
1211
1212 *************
1213 pl 2.jcn3
1214         - chords:
1215           * Chord is item
1216           * junked TeX hacking
1217           * configurable with styled strings from scm
1218           * fixes: dim, /no X, tonic != C
1219
1220 pl 2.jcn2
1221         - chords from  scm 
1222
1223
1224 pl 3.hwn2
1225         - visibility-lambdas into default elt properties SCM.
1226         - clef types in SCM
1227         - verticalDirection properties now in SCM.
1228
1229 pl 3.hwn1
1230         - move position_i_ into Staff_symbol_referencer
1231         - move dir_ into Directional_element baseclass
1232
1233 ****************
1234
1235 pl 2.hwn1
1236         - bf: dynamic style.
1237         - prepare to move dir_ into SCM. 
1238
1239 pl 2.jcn2
1240         - chord fixes: 
1241            * inversion request: no inversion guessing for chord entry
1242            * bass request: c/+b to add bass note not part of chord
1243            * -dim modifier works on all thirds
1244            * colon iso dash as tonic/modifier-additions separator
1245            * C:m5- displays as "Cdim"
1246            * C:m5-7- displays as "Co"
1247
1248 pl 2.jcn1
1249         - moved bracket vars to params
1250         - reverted broken lilypond-devel
1251
1252 *************
1253 pl 1.uu1
1254         - David's patches:
1255         * mfplain.mp detection
1256         * Graphical_element::common_refpoint() robuster.
1257         * fixes for mudela-mode.el
1258         - Dirk's patches:
1259         * key signature placement,
1260         * tied accidentals.
1261
1262 pl 1.hwn2
1263         - extra-offset elt property.
1264         - junked Chord_tremolo
1265
1266 pl 1.hwn1
1267         - changed calling convention for {get,set,remove}_elt_property()
1268         - rm'd some mutopia examples.
1269
1270 *******
1271 pl 0.hwn2,1
1272       - Generic properties and Property_engraver. Moved most of the
1273 properties.
1274
1275 0.lu1
1276         - resurrected midi2ly
1277
1278 0.jcn1
1279         - bf: lyrics lexer
1280         - reverted mup2ly revert
1281
1282 pl 3.uu1:
1283         - frontport of 1.2.17 patches.
1284
1285 **********
1286
1287 1.3.0:
1288
1289 pl 15.hwn2
1290         - loads of bfs.
1291
1292 pl x.jcn3
1293         - another workaround: reset buffer state for scm_ftell ()
1294         - workaround for broken scm_ftell ()
1295
1296 pl 15.hwn1
1297         - \properties are now SCM s, junk Scalar type
1298         - use SCM for strings in parser.
1299         - Moment derived from Rational. Moment may be smobified.
1300
1301 pl 15.jcn4
1302         - direct #... to scm parser  (Thanks to Gary Houston)