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