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