]> git.donarmstrong.com Git - lilypond.git/blob - CHANGES
release: 1.3.70
[lilypond.git] / CHANGES
1 * Fixed: long standing problem in optical-illusion code.
2
3 * Fixed: stop beam if stem *has* a beam in auto-beam-engraver. 
4
5 * Made interface of Multi_measure_rest, System_start_delimiter,
6 Spacing_spanner, Separating_group_spanner, Beam, Slur and
7 Rhythmic_head.
8
9 * Use properties for minimum distances and spring parameters.  Move
10 spacing related functions from Paper_column into Spaceable_element.
11
12 * Removed most Paper_column typecasts.
13
14 1.3.69
15 ======
16
17 * Cleanup auto-beam-engraver: use properties for retrieving timing
18 information.
19
20 * Fixed: Multi measure rests don't cause crashes.
21
22 * Fixed: don't invoke Hara_kiri::consider_suicide too early.
23
24 * Fixed: property engraver.  
25
26 * Fixed: don't crash on multiple ties.
27
28 * Cleanups of Beam, should also be a little faster.  
29
30 * Reunite properties and pointers. In implementation we make a
31 distinction between mutable and immutable properties
32
33 * Add {has|set}_interface () static methods to interface classes.
34
35 * Made Side_position_interface and Staff_symbol_interface an all
36 statics class, and stripped _interface suffix.
37
38 * Make Align_interface and Axis_group_interface an all-statics class 
39
40 * Rhythmic_head, Staff_symbol, Grace_align_item, Break_align_item,
41 Bar, Span_bar are now interfaces, Staff_bar was removed. Use a
42 callback for determining barsize.
43
44 * Removed all GLUE_SCORE_ELEMENT callbacks. 
45
46 * Added test for repeats to trip.ly
47
48 1.3.68
49 ======
50
51 * ly2dvi: changed back to original semantics of latexheaders.
52
53 * Stem_tremolo, Crescendo, Hara_kiri_group_spanner, Tuplet_spanner,
54 Volta_spanner changed into interface.
55
56 * Related cleanups for Tie, Tie_column cleanups.
57
58 * Made Time_signature, Single_malt_grouping_item, Script_column,
59 Chord_name, Dot_column, Breathing_sign, Key_item type into interface.
60
61 * Removed const declaration from callback arguments.
62
63 * Pagebreak support. See input/test/between-systems.ly
64
65 * Fixed a problem with accidentals in combination with
66 non-nil key signatures.
67
68 1.3.67
69 ======
70
71 * Use callbacks for augmentation dot positioning.
72
73 * Removed types Note_head and Rest
74
75 * Cleanup of slur.cc: use common reference points in a sane manner.
76
77 1.3.66
78 ======
79
80 * Corrected text sizes in paper*.ly (Mats Bengtsson)
81
82 1.3.65.uu1
83 ==========
84
85 * Dots, Collision, Rest_collision removed as separate Score_element type.
86
87 * Stem and Note_column accept only one rest.
88
89 * Use offset callback in Stem to resolve rest/beam collisions.
90
91 * Put the value of new  local key signature (accidentals) back into a property.
92
93 * Set molecule-callback for notename item.
94
95 1.3.65.jcn2
96 ===========
97
98 * Added some comments to new slur code.
99
100 * Removed some ugly interstaff slur code, interstaff slurs at line-break
101   are still broken.
102
103 * Slur bugfix: 16th beams are also beams.
104
105
106 1.3.65
107 ======
108
109 * Bugfix: translate volta spanner at start of line.
110
111 * Changed directional_element() calls to instantiations
112 of Directional_element_interface.
113
114 * Removed Dynamic_line_spanner, and cleaned up Dynamic_engraver.
115
116 * Removed Staff_info type. Information about columns is now transferred
117 via currentMusicalColumn and currentCommandColumn.
118
119
120 1.3.64.jcn2
121 ============
122
123 * Made slur attachment position user settable; properties:
124 slurBeginAttachment slurEndAttachment, values: 'head 'stem
125 'along-side-stem.  See input/test/slur-attachment.ly and ophee-slurs.ly.
126
127 * Fixed slur attachment positions, added missing rule and use simple
128 default starting positions for attachments.
129
130 * Started rewrite of slur ending code, interstaff slurs are broken for
131 now.
132
133 * Fixed download URL of the webpage.
134
135 * Moved direction.cc to flower/.
136
137 1.3.64
138 ======
139
140 * Lyrics centered on notehead.
141
142 * Various bugfixes hyphen-spanner.
143
144 * Bugfix: set appropriate callbacks for Note_head. This fixes 
145 problems with dots.
146
147 * Removed Clef_item as score-element derived type.
148
149 * Updated config.sub and config.guess
150
151 * Bugfix: allow linebreaks on beamed grace notes.
152
153 1.3.61.jcn2
154 ===========
155
156 * Included dutch po-update based on submitted 1.3.57 nl.po
157
158 * Added "Development" link to website, now that "Home" is a relative link.
159
160 * Bugfix: use deep copies for resetting keys.
161
162 * Assorted typing erors in procedure names in ly/engraver.ly
163
164 1.3.62
165 ======
166
167 * Made callbacks from Score_element::before_line_breaking() and
168 Score_element::after_line_breaking()
169
170 * Fixed website; backlinks should work again.
171
172 * Removed --ignore-version option. Added --verbose option.
173
174 1.3.61
175 ======
176
177 * Webpage hacking
178
179 1.3.60.hwn1
180 ===========
181
182 * Junk int_identifier, real_identifier. Merged Midi_def_identifier and
183 Paper_def_identifier.
184
185 * Fixed bug with spanning barlines in combination with Hara-Kiri staffs.
186
187 * Cleaned up Text_item, Hyphen_spanner, Lyric_extender and
188 Sustain_pedal and reduced them to an Score_element interface (they are
189 no longer Score_element derived types).
190
191 * Some instances of brew_molecule routines have moved out of
192 Score_element, and are now called scheme_molecule.
193
194 * Moved lots of parameters from ly/params.ly to ly/engraver.ly
195
196 1.3.59.hwn1
197 ===========
198
199 * Removed String_identifier, and use the type system of GUILE instead.
200
201 * Fixed \key PITCH MODALITY syntax. The modality argument is now
202 mandatory, a rule in convert-mudela has been added.
203
204 * Cleaned up  buildscripts/ directory: removed obsolete scripts.
205
206 * Use Scheme_hash_table for identifier Scopes.  Scheme_hash_table is
207 based on STL and should be faster than hash_table.
208
209
210 1.3.59.jcn1
211 ===========
212
213 * Fixed scm_un/protect_object for guile-1.3.4 and 1.3.5 snapshots,
214   in the process reduced number of protect/unprotect calls.  With
215   guile-1.3.5 snapshot, memory usage has decreased by 1/5th, now
216   just 10% above the 1.2 level.  Also, Lily's a bit faster.
217
218 * Fixed make diff bug in stepmake to be able to make this diff :-)
219
220 1.3.58.hwn1
221 ===========
222
223 * Rewrote key sig support.  Now key signature can also be controlled
224 by setting keySignature and localKeySignature properties, eg.
225
226         \property keySignature = #'((2 . -1) ( 4 . -1) (6 . -1))
227
228 sets a key signature of `es ges bes' (an unusual key signature).
229
230 Keys are internally represented as transpositions of the c-major
231 scale. Printing the key signature for a scale is done by filtering out
232 all non-natural accidentals.
233
234 * Removed support for \keysignature, and \key something \minor; Newkey
235 is now obsolete.
236
237 1.3.58.jcn3
238 ===========
239
240 * Fixed pedal items (hw)
241
242 * Changed configure option tex-tmfdir to tmf-path now accepting multiple
243   tfm directories.  Automated links to cmr and amstex tfm font directories.
244
245 * Replaced one scm_assoc () u-turn slipped through jcn1
246
247 * various GUILE 1.3.5 compile fixes
248
249 * Added `Ped' as a compound symbol font and removed silly scheme kerning.
250
251 * Replaced some scheme assoc u-turns with scm_assoc ()
252
253 * Ran po-update (mostly because of new ja contribution).
254
255 1.3.57.jcn2
256 ===========
257
258 * Cleaned-up scheme list to text conversion for Chord_name and 
259 fixed horizontal kerning.
260
261 * Added examples for american (slashed o) and jazz (black triangle),
262   see input/test/{american-chords.ly,jazz-chords.ly}
263
264 * Made guile-1.3.5 compile fixes
265
266 1.3.57.uu1
267 ==========
268
269 * Fixed typo in Dots::do_brew_molecule (); this fixes the disappearing
270 dots problem.
271
272 * Rewrote key signature administration; now Scheme is used; Octave and
273 Key have been junked in favor of Newkey.
274
275 * japanese .po file included (thanks, Japanese team!)
276
277 1.3.57
278 ======
279
280 * Fixed several forgotten molecule-callbacks 
281
282 * Fixed first clef in score; now F clefs are also possible.
283
284 1.3.56.mb1
285 =========
286  
287 * Updated FAQ with two useful GDB macros.
288
289 * Several fixes in the documentation.
290
291 1.3.55.jcn1
292 ===========
293
294 * Made (dutch) po-update
295
296 1.3.56
297 ===========
298
299 * Molecules are now generated via callbacks exclusively; most calls to
300 set_elt_property ("transparent", SCM_BOOL_T) have been replaced by suicide().
301
302 1.3.55
303 ======
304
305 * Experimental property collapse for most score-elements.  (notable
306 exceptions: Scripts, pedals). Change all Score_element constructors to
307 take a basic-property list. The suffix of a property list may be
308 shared by several score-elements, for instance all default G-clefs in
309 a score share the following settings
310   
311            (breakable . #t)
312            (break-align-symbol . Clef_item)
313            (visibility-lambda . ,begin-of-line-visible) 
314
315 This should reduce memory usage further. 
316
317 * Magically fixed the disappearing Lyrics problem.
318
319 * Removed used_b_ field from Score_element.  
320
321 * Massive search-replace patch: store pointers and properties
322 separately, in preparation of property collapse.
323
324
325 1.3.54
326 ======
327
328 * Bugfix: don't crash on tuplet spanners that don't contain any notes.
329
330 * Cleanup of Dimension_cache: removed a few redundant
331 fields. Slightly lower memory usage (32 bytes per
332 score-element). Dimension_cache is now a `dumb' struct again.
333
334 * Add array index to priority field of text scripts to ensure that
335 order is unique, and sensible.
336
337 * Added an element count statistic.
338
339 1.3.53
340 ======
341
342 * russian.po (thank you, August.)
343
344 * Small cleanups in Molecule interface 
345
346 * Spacing related elements perform suicide after calculating
347 distances.  This saves a some memory, approximately 2 to 5 % ?
348
349 * Small cleanups in line breaking: Paper_column stores springs and
350 rods in only one place now.  All fields relating to energy have been
351 removed
352
353 * Don't generate all output Scheme in memory, but evaluate to output
354 file immediately.  This will reduce memory usage a little.
355
356 * Use STL's map  for Dictionary template
357
358 * Substitute pointers on element properties of the root Line_of_score
359 as well.
360
361 * Added toplevel doc target, to support building doc with --srcdir
362
363 * Removed cygwin build stuff; updated versions at:
364
365      http://appel.dyndns.org/lilypond/gnu-windows/cross
366
367 * Fixed lily.scm to handle incipits (thanks, Mats)
368
369
370 1.3.52
371 ======
372
373 * Made bugfix in smob handling: delete the C-part of freed smobs and
374 be honest about amount of allocation and deletion, so that GUILE
375 doesn't overestimate the amount of memory available.
376
377 * Faq update: nicer blank note paper, courtesy Mats Bengtsson.
378
379 * Bugfix: don't crash on durations that are not a power of 2.
380
381 * Build manpages during `make all' 
382  
383 * Bugfix: don't do absolute comparisons in Polynomial::clean ().
384
385 * Bugfix: set visibility-lambda for key signature created by
386 createKeyOnClefChange. Fixes disappearing key signatures. 
387
388 * Bugfix: make System_start_delimiter of bar-line type invisible when
389 it spans only one staff.
390
391 1.3.51
392 ======
393
394 * Item cleanups.  Copying items and rearranging pointers are done in
395 separate passes, which makes the code cleaner. This fixes a problem
396 with some items not disappearing from hara-kiri staffs.
397
398 * Use Scheme for Key_item data members. 
399
400 * Don't use regex in chord-names.scm under windows; hybrid chordnames
401 user+calculated will be partly broken.
402
403 1.3.50
404 ======
405
406 * Junked Shift_tuple from collision; Now it uses SCM.
407
408 * Bugfix of documentation and test-file of tuplet.
409
410 * Bugfix type string of repeated music is copied. This fixes declared
411 tremolos.
412
413 * Junked various cruft from lily.scm
414
415 * Use interfaces symbols instead of C++ class-name for assigning generic
416 element properties.
417
418 * Junked Dictionary from Piano_pedal_engraver and
419 Piano_pedal_performer.
420
421 * Introduced boolean element property no-spacing-rods: ignore this
422 item for hard constraints.
423
424 * Bugfix: added sanitised TeX fragment in faq.texi
425
426 * Bugfix: merge equal Bar_reqs
427
428 1.3.48.uu1
429 ==========
430
431 * Small fixes for \cresc and \endcresc
432
433 * Release properties of unbroken spanners & items after doing
434 handle_broken_smobs (); should conserve a little memory.
435
436 * Fixed handling of orphaned score-elements. Any element that does
437 not have its Line_of_score as a ancestor in both directions, is silently
438 removed from the output.  This guarantees that programming errors
439 don't result in coredumps from Dimension_cache::common_refpoint ():
440 element->line_l () is always a common reference point.
441
442 * Bugfix: set visibility-lambda of clef and octavation-8 explicitly
443 for default case.  Now the octavation 8 is not printed at every
444 barline.
445
446 1.3.48.mb1
447 ===========
448
449 * Changed noteHeadStyle properties to symbols, for example
450   \property Voice.noteHeadStyle = #'cross
451
452 1.3.47.jcn3
453 ===========
454
455 * Rewrite of chord-name production in scheme.  There are two major styles
456   now, banter and american.  To get american style, use
457
458       \property ChordNames.chordNameStyle = "american"
459  
460   Most anything should be possible now.  See input/test/american-chords.ly
461
462 * Added isinf check to configure.in, and isinf macro from guile to
463   bezier.cc; solaris has no isinf ().
464
465 * Fixed star-spangled-banner with not-so-nice \bar "|." fix.  Almost
466   perfect now.
467
468 * Added output property to regression test.
469
470 * Fixed warning of creating existing outdir.
471
472 * Added `Mark' interface to text-items that are marks (thanks, HW).
473
474 1.3.48
475 ======
476 1.3.47.mb2
477 ===========
478
479 * Corrected glossary.tely
480
481 * Corrected \mark font handling. feta-nummer font only of the 
482   string is all numeric.
483
484 * Implemented noteHeadStyle lookup in Guile. Reintroduced the style
485   "harmonic" and added "baroque" (normal note shapes except for 
486   brevis and longa which are square).
487
488 * Simplified ly2dvi using the power of the geometry package.
489
490 * Improved heuristic size calculation of TeX macros. Handles e.g.
491   "\\u{a}", "\\"{o}" and "\\^{u}" correctly.
492
493 1.3.47.hwn1
494 ===========
495
496 * Bugfix: don't hang on zero-duration.
497
498 * Various glossary updates (thanks, Christian)
499
500 1.3.47
501 ======
502
503 1.3.46.jcn2
504 ===========
505
506 * Drastically reduced vertical space used by headers/footers, when using
507   ly2dvi.  See input/test/fill-a4.ly.
508
509 * Fixed bug with colons appearing on repeat span-bars.
510
511 * Added Bar_number_engraver to standard Score context
512
513 * Construct octavation scripts in the clef-engraver; this fixes the
514 hara-kiri + clef8 problem
515
516 1.3.46
517 ======
518
519 1.3.45.jcn2
520 ===========
521
522 * Fixed chord-name customisation and made small chord-name build fixes.
523
524 * Accidentals with chord-names smaller and as superscript.
525
526 * Do some extra footify (works only once) while making html docs.  
527
528 1.3.45.hwn1
529 ===========
530
531 * Debian patch (Thanks Anthony)
532
533 * Rewrote Bar_number_engraver and Mark_engraver and removed
534 Bar_script_engraver as baseclass. Both Bar_number_engraver and
535 Mark_engraver are simpler and more robust.
536
537 * Fixed precedence of \property verticalDirection and dynamicDirection
538
539 * Fixed keys without barlines 
540
541 * Fixed StaffGroups: removing `\consistsend "Axis_group_engraver"'
542 puts alignment in function again
543
544 * Fixed StaffGroup + GrandStaff combination.
545
546 * Music is now mandatory as the first thing in a \score{} block
547
548 1.3.45
549 ======
550 1.3.44.jcn2
551 ===========
552
553 * Implemented una-chorda and sostenuto piano pedals in performer and engraver.
554
555 * Added Properties textScriptWordSpace and chordNameWordSpace.
556
557 * Junked old lyrics in star-spangled-banner.
558
559 * Added a Piano_pedal_engraver.
560
561 * Removed some empty files.
562
563 * Created piano pedal symbols: * - . P e d.
564
565 * Fixed ps-to-pfa.py to handle multiple unfills.
566
567 * Moved accordion symbols out of feta-script to end of font.
568
569 * Bugfix: don't create tfm's, pfa's etc of feta-test fonts.
570
571 * Fixed blot_diameter for small resolutions.
572
573 1.3.43
574 ======
575
576 * Put global element list into Line_of_score, instead of
577 Paper_score. post processing (the stage after line breaking) is now
578 truly done per-system, and we got rid of an ugly hack to get font
579 handling OK.
580
581 * Bugfix: set the group-interface of System_start_delimiter.
582
583 * Cleanups of Break_algorithm and derived classes, Move
584 broken_col_range () to Line_of_score, remove Paper_score::col_l_arr_
585
586 * Bugfix for accordion symbols.
587
588 * Various patches to prevent crashing when do_brew_molecule gets
589 called before after_line_breaking (). This was a problem in Spanner
590 classes mostly.
591
592 1.3.43
593 ======
594
595 1.3.42.jcn3
596 ===========
597
598 * Made a quick try at piano pedal performer, damper pedal only.
599
600 * mf/feta-accordion.mf: Fixed strange turning paths.
601
602 * mf/feta-beugel.mf: Fixed infinity errors.
603
604 * Use a more discriptive name for windows setup.zip.
605
606 * mf/GNUmakefile: Have logs as last target, so that normally, they're 
607 not made twice.
608
609 * stepmake/stepmake/metafont-rules.make: Don't remove the .log files.
610 The logs are a target, removing them retriggers make.
611
612 * stepmake/stepmake/metapost-rules.make: Remove the correct log and tfm
613 files, ie the ones that clutter the source directory, not the target logs.
614
615 * Windows distribution: faked symlink for cmtfm.  Setup.zip should now be
616 standalone; ie, no need for Cygnus' usertools anymore.
617
618 1.3.42.jbr1
619 ===========
620   
621 * Documentation/ntweb: Updated angels.ly to match current syntax.
622 Also updated index.texi.
623
624 1.3.42.uu1
625 ==========
626
627 * Change all occurances of Staff_margin_engraver to
628 Instrument_name_engraver, add a convert-mudela rule
629
630 * Change status == busy assert into programming error
631
632 1.3.42
633 ======
634
635 1.3.41.jcn3
636 ===========
637
638 * Lots of fixes to windows distribution scripts.
639
640 * Added configuration features --program-prefix, --program suffix.
641
642 * lily/my-lily-parser.cc (get_chord): Bugfix, don't use deleted pitch.
643 This fixes inversions c/g and bass additions d/+c on chords.
644
645 1.3.41.mb1
646 ==========
647
648 * Avoid that xxxXXXVerticalExtent is used for empty HaraKiriStaff
649   lines.
650
651 1.3.41.hwn1
652 ===========
653
654 * Debian patches (thanks Anthony!)
655
656 * Use symbols for prefatory matter spacing. Do not use the typename
657 for looking up item pairs in the table, but read element property
658 break-align-symbol
659
660 * Instrument_name_engraver, uses break alignment instead of
661 side-position.
662
663 * System_start_delimiter_engraver, System_start_delimiter, uses a
664 spanner for the braces/brackets at the left of the system. Remove all
665 old Span_score_bar engravers.
666
667 * Removed Base_span_bar_engraver::use_prority_b_, and moved
668 Base_span_bar_engraver into Span_bar_engraver.
669
670 1.3.40.jcn3
671 ===========
672
673 * mutopia/Coriolan/violino-2.ly: Bugfix: wrong pitch.
674
675 * input/test: Removed stale AutoStaffSwitch examples.
676
677 * mutopia/E.Satie: Fixed gnossiene-4, doing \autochange.  Removed
678 stale copy of gnossiene-4.
679
680 * buildscripts/make-cygwin-cross.sh: Made some small .zip package fixes.
681
682 * make/lilypond.spec.in: Made some bugfixes for _prefix, preparations
683 for cross-building to Cygwin.
684
685 * buildscripts/make-cygwin-cross.sh: Now using rpm packages.
686
687 1.3.40.hwn2
688 ===========
689
690 * added \property XXXMinimumVerticalExtent, \property XXXExtraVerticalExtent
691
692 * New_chord_tremolo_engraver: make tremolo beams from
693
694         \repeat "tremolo" NUMBER <Music-expression>
695
696 Removed support for "old-style" tremolos.
697
698 * Add a convert-mudela function for the conversion "\key A;" to "\key a; 
699
700 * Read \property measurePosition within the engraver code, instead of
701 looking up the Timing_translator.
702
703 * star-spangled-banner.ly: add Bar_engraver to LyricsVoice 
704
705 * Changed all .fly and .sly files to .ly files.  Propose to dump .fly
706 and .sly.
707
708 1.3.40
709 ======
710
711 1.3.39.jbr1
712 ===========
713
714 * buildscripts/mf-to-table.py: feta dep files are now opened with write
715   binary option.  This avoids carriage return linefeed problems and
716   windows while not affecting unix.
717
718 * Documentation/hacking.texi: Fixed a texinfo syntax error
719
720 * stepmake/bin/package-zip32.sh: Fixed or Removed some legacy, 1.2.x,
721   directory paths.
722
723 * Documentation/ntweb/index.texi: Fixed broken links, added 1.3.39 links.
724
725 1.3.39.hwn1
726 ===========
727
728 * Glossary updates by Christian Mondrup.
729
730 * Bugfix: use generic properties in lyrics too. This fixes the
731 \property textStyle for lyrics.
732
733 * Score_element::preset_extent(), used by \property
734 XXXVerticalExtent, so hard code the size of a vertical group. 
735
736 * Don't fix up reference points for originals of broken
737 spanners. Fixes spurious "orphaned score-element" warnings.
738
739 * buildscripts/make-cygwin-cross.sh: Use rx-1.5 instead of regex (Jeffrey).
740
741 * scm/lily.scm: Fixed check for Windows: by default don't use scm regex.
742
743 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: Significantly smaller
744 patch for guile.
745
746 * buildscripts/make-cygwin-cross.sh: Compile native package GNU regex,
747 which should fix Windows problems with guile.  Also added input directory
748 to zip file.
749
750 * stepmake/aclocal.m4: Added decent checking for version of guile, and 
751 fixed warning message.
752
753 * lily/lexer.ll (My_lily_lexer): Bugfix: lookup chordmodifiers in the
754 chord-modifier table (not in the pitch list).
755
756 1.3.39
757 ======
758
759 1.3.38.hwn2
760 ===========
761
762 * General cleanups of My_lily_parser. 
763
764 * Start of a Chord_tremolo_iterator for the `\repeat 4 "tremolo"'
765 syntax.
766
767 * Moved Score_element::do_space_processing out of the dependency
768 mechanism.
769
770 * Use Scheme for notename tables.  Removed uppercase letters for low
771 octave notes. Removed Notename_table.
772
773 * Fixed core dump with declared "\key  ; "
774
775 * Extra robustness warning for Side_position_interface::aligned_on_self ()
776
777 * Extra robustness: make sure that first and last columns are breakable.
778         
779 1.3.38.jcn4
780 ===========
781
782 * stepmake/aclocal.m4: Added support for cross-compiling with guile.
783
784 * buildscripts/make-cygwin-cross.sh: A try at dropping cygwin1.dll
785  dependency by using mingw.  Compiling guile is too much to ask
786  for mingw, though.  Also:
787  - rename python scripts .py (request from Alain)
788  - install native packages under their own, separate root. (Alain)
789
790 * lily.scm: Don't use regex module when running on
791 Windows. (Shamus)
792
793 * lily/staff-margin-engraver.cc (acknowledge_element): If
794 possible, hang y-axis of margin script to span-bar.  This fixes
795 vertical placement of margin scripts attached to staff groups.
796
797 * help2man-rules.make: Fixes for generating manpages by copying
798 and for building using --scrdir.
799
800 * stepmake/stepmake/generic-targets.make: Preserve date stamp of
801 config.h, version.hh files file when copying.
802
803 * buildscripts/make-cygwin-cross.sh: made number of fixes:
804         - add `Cygnus/' prefix to directories in .zip-file too.
805         - package guile too.
806         - don't link to cygwin1.dll
807
808 * stepmake/stepmake/install-targets.make: bugfix, don't fail if directory
809   is not emty when uninstalling.
810         
811 * stepmake/stepmake/generic-targets.make: added man target.
812
813 * buildscripts/make-cygwin-cross.sh: new script for cross-building cygwin
814   development tools and lilypond executable.
815
816 * Documentation/ntweb/lilypond-manpages.patch: provide pre-built
817   manpages, so that make doesn't fail on help2man trying to execute
818   a GNU/windows executable.     
819
820 * Documentation/ntweb/guile-1.3.4-gnu-windows.patch: new patch for
821   guile-1.3.4.  
822
823 * flower/libc-extension.cc (memmem): cygwin compile fix.
824
825 1.3.38
826 ======
827
828 1.3.37.hwn1
829 ===========
830
831 * (generic-property.scm) added \property tieDash to set dashing on
832 ties.
833
834 * Removed  ly_eval_str(), we should use scm_eval (Scm_object).
835
836 * Removed scm_to_array (), array_to_scm (), associated junk. Reverted
837 undocumented .29 patch that made Bezier::control_ into an
838 Array<Offset>.  Added some comments documenting the reasons for the
839 changes.
840
841 * Revert generic-property.scm of .37 fix, fix the real problem in
842 property-engraver.cc: use the right symbol to check if element
843 property is already set.
844
845 1.3.37.jcn2
846 ===========
847
848 * Fixed srcdir build, so that you can do:
849
850       tar xzf releases/lilypond-x.y.z
851       mkdir <build>
852       cd <build>
853       ../lilypond-x.y.z/configure
854       make
855
856   as with any other gnu package.  All build output goes to <build>/out.
857
858 * Changed and fixed use of different configurations, and different output
859   directories.  Finally, you can use different configurations alongside
860   eachother.  From make/stepmake.make:
861
862       # Use alternate configurations alongside eachother:
863       #
864       #     ./configure --enable-configsuffix=debug
865       #     make conf=debug
866       #
867       # uses config-debug.make and config-debug.h; output goes to out-debug.
868       #
869
870       # Use same configuration, but different output directory:
871       #
872       #     make out=www
873       #
874       # uses config.make and config.h; output goes to out-www.
875       #
876
877
878 * Fixed performance of (de)crescendi.
879
880 * Better documentation for arithmetic_multiplier and arithmetic_basicspace
881   in params.ly.
882
883 * Added instrument-equaliser for MIDI output, see scm/midi.scm, and
884   properties midiMinimumVolume, midiMaximumVolume, ranges [0,1].
885
886 * Changed absolute midi volume settings into factor of full scale.
887
888 * Fixed another dynamic-line-spanner bug, it gets hairy.
889
890 * Added warning for spanners that are not fully contained in parent spanner.
891
892
893 1.3.37
894 ======
895 1.3.36.hwn1
896 ===========
897
898 * Abstract Align_element into Align_interface. Removed
899 Axis_align_{item,spanner}, Align_element, Super_element, all multiple
900 inheritance in the backend.
901
902 * new Gade score, INSTALL.texi fixes (thanks, Mats)
903
904 * Removed Item::hpos_f (), Score_element::{get,set}_real ()
905
906 * comments detailing properties for Axis_group_interface,
907 Side_position_interface, Score_element, Item and Spanner
908
909 1.3.36.jcn3
910 ===========
911
912 * Fixed vertical dimensions of elements in dynamic line spanner by adding
913   axis-group to dynamic line spanner.
914
915 * Bugfix: line-spanner lasts always full duration of (de)crescendi.
916
917 * Bugfix: broken (de)crescendi on a dynamic-line-spanner.
918
919 * Bugfix: compilation dynamic-engraver.
920
921 * Added and updated a faq about postscript and ghostscript.
922
923 * Fixed order of slurVerticalDirection verticalDirection in
924   generic-property.scm.  Similar fixes for Stem, Tie, etc.
925
926 * Added a Text_engraver to GraceContext.  Maybe it was removed on
927   purpose: scripts on grace notes seem broken, they appear on the
928   main note.
929
930 * Bugfix: volume effect of (de)crescendi was sometimes wrong way round.
931
932 1.3.36
933 ======
934 1.3.35.hwn1
935 ===========
936
937 * textEmptyDimension changed into textNonEmpty, default: off,
938 ie. texts don't occupy space.
939
940 * Use STL map for Lookup::lookup_p_tab_p_
941
942 * Abstracted Axis_group_element into Axis_group_interface, and removed
943 Axis_group_element. This eliminates some multiple inheritance in the
944 backend
945
946 1.3.35.jcn1
947 ===========
948
949 * Added minimum-space property to Side_position_interface.  Used in
950   positioning of Volta_spanner: voltaMinimumSpace.
951
952 * Fixed and cleaned-up volta-spanner.
953
954 * Moved directional-element.cc -> directional-element-interface.cc
955
956 * Renamed all `process_requests' to `process_music', which fixes
957   midi performance.
958
959 * Fixed dimensions (more x-y interchanges) of brace, bracket and
960   volta-spanner.
961
962 * Half-assed fix to get similar vertical placement of orphaned vs.
963   line-spanned dynamic elements.
964
965 * Added property bracketCollapseHeight: the minimal size of a staff bracket
966   that will be typeset.  Smaller brackets will not be displayed.  This
967   fixes the (in 1.3.x reintroduced) funny duck-beak-bracket-bug (sorry).
968
969 * Removed some dissonant chords from Coriolan
970
971 1.3.35
972 ======
973
974 * Removed Documentation/programmer directory 
975
976 1.3.34.jcn3
977 ===========
978
979 * Small enhancements to Staff_margin_engraver:
980    - by default, the marginScript left aligns the text
981    - to set the text style, use property marginScriptTextStyle
982    - to change the alignment, use property marginScriptHorizontalAlignment
983      (centred and right alignment require manual padding settings).
984
985 * Print a friendly message if the manual pages failed to build.
986
987 * Bugfix: dynamicDirection now overrides verticalDirection setting.
988
989 * Warning messages and nl.po
990
991 * Fixed vertical alignment for all dynamic items and (reluctantly)
992   reinstated old directional behaviour for orphaned dynamics.
993
994 * Finished maximumRestCount property.
995
996 1.3.34
997 ======
998 1.3.33.hwn2
999 ===========
1000
1001 * Print key without setting key, syntax "\key ;". General cleanups of
1002 key-item.
1003
1004 * Add paragraph tags in HTML output of mudela-book.  Music fragment
1005 don't run into the text anymore.
1006
1007 * Bugfix: don't align the first line of text. (Lookup::text ()).
1008
1009 * Abstract away data members of Axis_group_element, Align_element
1010
1011
1012 1.3.33.jcn3
1013 ===========
1014
1015 * Added helpful properties instrumentScriptPadding/instrScriptPadding for
1016   Staff_margin_engraver.
1017
1018 * Removed some empty files, substituted (c) 1999 occurrences.
1019
1020 * Added \property maximumRestCount.  It will prevent showing (or actually:
1021   moving in case of a collision) more than maximumRestCount similar rests.
1022   WIP!
1023
1024 * Rewrote Staff_margin_engraver.  Staff margin texts now hang on a new
1025   breakable item: Left_edge_item.
1026
1027 * Fixed vertical alignment for dynamic elements.  Orphaned dynamic items
1028   (not supported by a Dynamic_line_spanner) still collide with Staff,
1029   although they now have staff support, which was supposed to fix this.
1030
1031 * Fixed Staff_margin_engraver for "instrument", "instr" is still broken.
1032
1033 * Dynamic elements are only put in a Dynamic_line_spanner if there
1034   actually is more than one adjacent note-column with a dynamic.
1035   This breaks the fine looks of all dynamics, again :-)
1036
1037
1038
1039
1040 1.3.33
1041 ======
1042
1043 1.3.32.hwn3
1044 ===========
1045
1046 * Experiment: use STL map for Scheme_hash_table; Is there a speedup?
1047
1048 * Bugfix: print brace iso. bracket for Piano / GrandStaff
1049
1050 * Change naming: change do_post_processsing into after_line_breaking,
1051 do_pre_processsing into before_line_breaking and do_process_requests
1052 into do_process_music.
1053
1054 * Bugfix in hash-table.hh: do quadratic probing, and not cubic probing.
1055
1056 * Display property name for type error.
1057
1058 * Cleanups for Dynamic_engraver and Dynamic_line_spanner.
1059
1060 * Warn if last column in score is musical. Helps catch programming errors.
1061
1062 * Spanner::spanned_drul_ now is private. 
1063
1064 * Rewrote some bar code: moved molecule functions out of Lookup.
1065
1066 1.3.32.jcn3
1067 ===========
1068
1069 * Embedded newlines in text items are now allowed.  This helps avoiding
1070   TeX-hacking in some cases.  See input/test/coriolan-margin.ly
1071
1072 * Fixed stupid x-y interchange bug for staff-bracket.  This fixes
1073   placement of staff-brackets.
1074
1075 * Fixed bracket/arch-thickness interchange bug, and made bracket a bit
1076   thinner.
1077
1078 * Fixed slur/bezier-beautiful name mismatch.  This should fix the steep
1079   slurs that were apparently reintroduced in 1.3.29.
1080
1081 * Made some small fixes to Coriolan.
1082
1083 * Removed duplicate lily/output-property-engraver.hh.
1084
1085 * Removed optional use of vanilla spanner in Dynamic_engraver.
1086
1087 * Fixed (measured) tremolo for Stem and Beam. Merged declarations
1088   stem-engraver.hh and chord-tremolo-engraver.hh into their .cc
1089   implementation file.  Also fixed looks of Chord tremolo, input and
1090   implementation is still ugly.
1091
1092 * Added *.yy and *.ll to TAGS, to that tags-find-replace doesn't omit
1093   parser and lexer.
1094
1095 1.3.31.mb1
1096 =========
1097
1098 * Fixed \specialkey and \normalkey. Updated documentation.
1099
1100 1.3.32
1101 ======
1102 1.3.31.jcn5
1103 ===========
1104
1105 * Fixed and cleaned-up Dynamic_engraver.  Optionionally uses vanilla
1106   spanner instead of Dynamic_line_spanner.
1107
1108 * Made gcc-2.95 compile fix in libc-extension.
1109
1110 * Various fixes to Coriolan, score starts to look acceptable.
1111
1112 * Moved optional text of crescendo into Crescendo spanner.  Fixed horizontal
1113   and vertical alignment of dynamics.
1114
1115 * Added new text crescendo spanners to Coriolan and made some fixes.
1116   If you're using timidity, use the -EO option to prevent notes get
1117   stuck.  I'm not sure whose fault this is, Lily's MIDI output may be
1118   stretching the standard a bit.
1119
1120 * Adjacent dynamic markings are now grouped on a horizontal line, but it's
1121   not perfect yet: they're always below the staff and no horizontal spacing
1122   is done.  Also, character metrics of dynamics are still not used.
1123   See: input/test/crescendi.ly and input/test/dyn-line.ly
1124
1125 * Cleaned up Span_dynamic_performer.
1126
1127 1.3.31
1128 ======
1129 1.3.30.mb1
1130 =========
1131
1132 * Fixed the page layout, reintroducing space for the header and
1133   trying to keep piece titles on the same page as the piece.
1134   The header and footer can now contain several lines.
1135
1136 1.3.30.jcn3
1137 ===========
1138
1139 * Lily now also performs crescendi and decrescendi in MIDI output:
1140   Span_dynamic_performer in a slightly crappy way.
1141
1142 * Added preliminary support for crescendi/decrescendi other than `hairpins',
1143   eg: `cresc. poco `a poco -- -- --'
1144
1145 * Made MIDI tie performance fix.
1146
1147 1.3.30.jcn2
1148 ===========
1149
1150 * Lily now performs absolute dynamics in MIDI output.
1151
1152 * Included David's comments on opus47 in TODO.
1153
1154 1.3.30.jcn1
1155 ===========
1156
1157 * More Coriolan: flute-1,2; oboe-1,2; clarinet-1,2; 
1158   fixes and remainder french horn-1,2; trombone-1,2;
1159   fagotto-1,2; timpani; and several fixes.
1160   
1161 1.3.30.uu1
1162 ==========
1163
1164 * Remove some old doco from programmer/ and put on personal homepage.
1165
1166 * Removed union-find from flower library.
1167
1168 * Only quantise tie horizontal part inside the staff.
1169
1170 1.3.30
1171 ======
1172 1.3.29.hwn1
1173 ===========
1174
1175 * Report type errors for \property. Helps with converting 1.2 input
1176
1177 * Use Scheme for Align_element; fixed graceAlignPosition 
1178 and removed \property alignmentReference in the process.
1179
1180 * Use generic properties for lyrics too.  This fixes \property
1181 Lyrics.textStyle
1182
1183
1184 * Add relative distance for constraints between non-column items.
1185
1186 * Automatic \marks: use "\mark ; ". The mark numbers or letters are
1187 increased automatically.
1188
1189 * Translators now only change properties of their own context. This
1190 removes the 2nd argument to Translator::get_property()
1191
1192 * Bugfix for Metapost mode
1193
1194 1.3.29.uu1
1195 ==========
1196
1197 * Updates of glossary  (Christian Mondrup)
1198
1199 * Bugfix with bar number placement
1200
1201 * Moved links to bibliography/ and misc/ to main index.
1202
1203 1.3.29
1204 ======
1205
1206 * Moved Slur-specific code from Bezier_bow to Slur and Slur_bezier_bow.
1207   Slurs are now calculated just once.
1208
1209 * Bezier_bow gets constants from paper.  Still no sensible solution for
1210   magic asymmetry gradient step constants.
1211
1212 * Reinstantiated tangent-controls, more flexible than ever.  You can choose
1213   between area asymmetry and tangent-controls.  My guess is, tangent controls
1214   will be junked in 1.3.30.
1215
1216 * Slur area: only look at x-gradient.
1217
1218 * Added credits for some symbols of as5/9 fonts.
1219
1220 * Bugfix: don't make almost flat slurs, change in de-uglyfy slur.  
1221
1222 * Bugfix: midi2ly put out recent version (ugh).
1223
1224 1.3.28.hwn2
1225 ===========
1226
1227 * Bugfix: don't forget to process staffSpace and numberOfStaffLines
1228 properties.
1229
1230 * Removed Gade score. To appear (shortly?) on Mutopia. 
1231
1232 * Make Bar_script_engraver look for typeVisibilityFunction (eg
1233 property barNumberVisibilityFunction). Changed the names of the Scheme
1234 functions to be understandable. See input/test/bar-script-visibility.ly
1235
1236 * rewrite of class Molecule. It has now reached the ultimate quality
1237 plateau. All molecule data is now shared.
1238
1239 1.3.28
1240 ======
1241
1242 * Update of the glossary by Christian Mondrup 
1243
1244 * Moved horn-concerto-3 out of tarball to private website, removed
1245 W.A.Mozart subdirectory.
1246
1247 1.3.27.hwn1
1248 ===========
1249
1250 * Bugfix: don't make giant ties if the horizontal part of tie is near
1251 the center.
1252
1253 * Small optimizations to be a little more careful with mem usage. 
1254
1255 * Website change: put all examples in one directory.
1256
1257 * Removed Atom as a separate type.  Now use SCM, and since we use
1258 function composition, Atoms are immutable, so they don't have to be
1259 copied. This makes life easier, hopefully this is quicker and uses
1260 less memory.
1261
1262 1.3.27.jcn1
1263 ===========
1264
1265 * Bezier_bow: minimise_enclosed_area
1266
1267 1.3.27
1268 ======
1269
1270 1.3.26.hwn4
1271 ===========
1272
1273 * Tuplet-spanner slope calculation now looks better on tupletted rests
1274 (patch courtesy Laurent Martelli)
1275
1276 * Bugfix (Staff_performer::new_instrument_str ()) check type of
1277 \property "instrument"
1278
1279 * New mechanism for breaking lines: do not copy & prune the element
1280 property list separately, but combine these steps. Dramatically
1281 reduces memory usage for large scores.
1282
1283 1.3.27
1284 ======
1285 1.3.26.jcn2
1286 ===========
1287
1288 * Bugfix: font used in volta-spanner calculation.
1289
1290 * Added simple selection list to webpage, inspired by sawmill.
1291  
1292 * Devised kludge for ascii 5 character font pitches.
1293  
1294 * Substitutions: interline, 1997,1998, @stack.nl and small typo fixes.
1295
1296 1.3.26.hwn1
1297 ===========
1298
1299 * Plug memory leaks related to Moment:
1300   - Spacing_engraver::do_pre_move_processing ()
1301   - make_rational ()/make-rational
1302   - Paper_column::Paper_column ()
1303
1304 * Plug memory leak in Paper_outputter::output_{String,Real,int}_def()
1305
1306 * Plug memory leak in Score_engraver::set_columns ()
1307
1308 * Plug memory leak in Scheme_hash_table::set()
1309
1310 * Plug memory leak in Score_element::molecule_extent ()
1311
1312 * Bugfix: don't crash if a slur doesn't span anything.
1313
1314 * Bugfix: don't crash if doing beams without a staff symbol.
1315
1316 * Generic element property setting:
1317
1318         \outputproperty #predicate #'symbol = #value
1319
1320 Will set the element property symbol to value, for any elements that
1321 return true for PREDICATE.  This allows you to virtually tweak *ANY*
1322 property of the output. Example in input/test/generic-output-property.ly
1323
1324 1.3.26
1325 ======
1326
1327 * lilypond as as2ly: --help and --version to stdout.  Regular identify 
1328   to stderr.  This fixes help2man's manpage generation.
1329
1330 * configure: substitute full path for perl and guile in scripts.
1331
1332 * Added ascii slur and volta.  There seems to be a Lily bug in volta placement.
1333
1334 * Bugfix: default font now user settable
1335
1336 * as2text: handle plain ascii font, read from stdin, you can now do:
1337
1338   echo "\time 4/4; g''1 g2 g4. g8" | lilypond -f as -i init-as.fly - | as2text
1339
1340 1.3.25.hwn1
1341 ===========
1342
1343 * Bugfix: second half of broken ties now are displayed again.
1344
1345 * Bugfix: add clef to the support of 8 text in the G_8 clefs. Center
1346 it horizontally on the clef.
1347
1348 * Added Tie_column spanner. Ties in tied chords now get proper directionsa.
1349
1350 * Bugfix: unbroken repeat barlines now work, eg. |:
1351
1352 * Added Request_iterator to make more flexible constructions possible.
1353
1354 1.3.25
1355 ======
1356 * as2text: catch missing font/character errors, added default font, set text.
1357
1358 * New ascii fonts and glyphs: as5 as-numeral4 as-braces9
1359
1360 * Ascii output, minimal support:
1361   - AsciiScript Fonts: mf/*.af
1362   - Init files: ly/*-as.*ly 
1363   - AsciiScript translation to text: scripts/as2text.scm
1364   - input/test/as.fly input/test/as1.fly
1365   - Output support: lily/lily.scm
1366   - Try:
1367       lilypond -f as -i init-as.fly input/test/as.fly
1368       as2text as.as
1369
1370 1.3.24.hwn1
1371 ===========
1372
1373 * The horizontal part of ties will avoid collision with staff lines.
1374
1375 * Plugged memory leak: don't protect Atom function.
1376
1377 * Lookup cleanups. Made lots of functions static. Moved some code out
1378 of Lookup.
1379
1380
1381
1382 1.3.24.hwn1
1383 ===========
1384
1385 * Bugfix: ly2dvi.py exits succesfully when encountering --help and
1386 does not delete any of the file_ly*.tex.
1387
1388 * Added header and footer support in ly2dvi.py
1389
1390 1.3.24
1391 ======
1392
1393 * Added a ROADMAP file explaining the source directory layout.
1394
1395 * Minor tweak in the feta 6 and 9 numeral
1396  
1397 * Moved files from lib/ to flower/
1398
1399 * Removed Note_head_side class.
1400
1401 * Updated the webpage to be a little more chatty. 
1402
1403 * Small Local_key_engraver optimization: only lookup timing engraver once.
1404
1405 * Fixed dashed slurs
1406
1407 * Rewrite of Slur code.  Be much more picky about slur shapes. We try
1408 to offset the slur instead of bending it too much
1409
1410 * Look at stem directions for tie direction.
1411
1412 * Compound multimeasure rests. Put measures_i_ variable in an element
1413 property.  Made the symbol a lot wider.
1414
1415 * Time signature small cleanups.
1416
1417 1.3.22.hwn2
1418 ===========
1419
1420 * Symbols opposite to stem (eg marcato) now get the proper glyph in up
1421 version.
1422
1423 * Breathing marks now have a direction by default.
1424
1425 * Do set generic script properties.
1426
1427 * Also put tuplet brackets under notes.
1428
1429 * Score_element_info: only store origin of element, but not the path
1430 to parent translators. Saves a little memory, and removes some complexity.
1431
1432
1433 1.3.22.hwn1
1434 ===========
1435
1436 * Autobeaming in time sigs that don't have 1/4 beats fixed.
1437
1438 * (De)crescendi should now work. (Thanks Michael)
1439
1440 * Better error reporting for conflicting time signatures.
1441
1442 * Line_number_engraver: output locations of note head
1443 definitions. Very handy when entering complicated scores.
1444
1445 * Rewrote multi measure rest support: now they are entered as spanners
1446 (\commandspanrequest \start "rest"). RXXXX is an abbreviation for
1447
1448   { \commandspanrequest \start "rest"
1449     SXXXX
1450     \commandspanrequest \stop "rest"
1451   }
1452
1453 * Removed support of percent style repetitions. 
1454
1455 * Put texts outside the staff.
1456
1457 1.3.21.mb1
1458 ==========
1459 * Getopt bugfix: don't assert on certain errors.
1460
1461 * ly2dvi: Remove unnecessary space for the page headers.
1462
1463 * Bugfix convert-mudela
1464
1465 1.3.21.hwn1
1466 ===========
1467
1468 * Bugfix in lilypond-mode.el: eval-buffering now uses file name and
1469 not buffer name.
1470
1471 * Scrapped tupletVisibility property. Now use tupletNumberVisibility,
1472 tupletBracketVisibility, with Scheme value #t, #f or 'if-no-beam.
1473 \property tupletInvisible will stop all tuplet spanner creation.
1474
1475 * Don't go berserk if tuplet spanner is on only one column.
1476
1477 * Use SCMs & Smobs for Molecules & atoms.  This uses less
1478 scm_(un)protect_object () calls, so the output stage should be faster.
1479
1480 * Added \property tupletSpannerDuration, to make multiple tuplet signs
1481 with one \times.
1482
1483 * Some programming Errors in spacing are now caught. Lily does not
1484 hang when encountering degenerate springs.
1485
1486 * Allow beams to start and end over rests
1487
1488 1.3.19.hwn2
1489 ===========
1490 * Fix disappearing clefs when clefs are not printed with a barline.
1491
1492 1.3.20.jcn2
1493 ==========
1494
1495 * SCM properties beamHeight and beamVerticalposition now use half-spaces:
1496   input/test/beam-control.fly
1497 * Added \context Voice to .fly and .sly; the default \context Staff is almost
1498   never what you expect
1499 * Fixed decision for .sly/.fly in lilypond-mode.
1500
1501 1.3.19.hwn1
1502 ==========
1503
1504 * Clean up font-metric hierarchy, use Adobe AFM code to parse AFM files.
1505 Cleanup mf-to-table.py
1506
1507 * Fixed embarassing slur bug.
1508
1509 1.3.19.jcn1
1510 ==========
1511
1512 * lilypond-mode.el: guess init file for lily-*-region, lily-mode-map bindings
1513
1514 1.3.18.uu2
1515 ==========
1516
1517 * lilypond-mode.el for emacs supersedes mudela-mode.el 
1518
1519 * Tuplet spanners don't collide with encompassing notes. 
1520
1521 * Gobbled Adobe parseAFM* code, for future use.
1522
1523 * Big 1999 to 2000 search/replace.
1524
1525 * Big interline to staff_space search/replace for mf files.
1526
1527 * Removed Bow class, and split code into Tie and Slur
1528
1529 * Don't put scripts on grace notes.
1530
1531 * Font_metric uses SCM for name field.
1532
1533 * Various compilation fixes.
1534
1535 1.3.17.jcn2
1536 ===========
1537
1538 * Bugfix: beams with less than one (visible) stem
1539
1540 * small fixes to pa.ly
1541
1542 1.3.17.jcn1
1543 ===========
1544
1545 * Fixed bug that made multi-measure rest barnumber counts go wild.
1546 (even more scm2int/int2scm mixups!)
1547
1548 * mutopia/J.S.Bach/pa.ly: organ score (for my father)
1549
1550 * small fix to mutopia/J.S.Bach/Duette/violino-ii.ly
1551
1552 1.3.17.hwn2
1553 ===========
1554
1555 * Remove Paper_def calls in bezier-bow.cc
1556
1557 * Remove data members of Tuplet_spanner,  Volta_spanner
1558
1559 * hang_on_clef, property hangOnClef removed
1560
1561 * Bar::type_str_ mode into element property `glyph'. Use a Scheme
1562 function to determine breaking behavior.
1563
1564 * More Scheme typechecking.
1565
1566 * Be strict about the difference between strings and symbols for conversion.
1567
1568 * Fixed bug that made 1st line offset to right fixed. Bugfix courtesy
1569 Laurent Martelli.
1570
1571 * Partial French translation, courtesy Laurent Martelli.
1572
1573 * Small corrections in NL translation. 
1574
1575 1.3.17.hwn1
1576 ===========
1577
1578 * Added mensural note heads (noteHeadStyle = "mensural") Additionally,
1579 we have a longa note head.  noteHeadStyle = "harmonic" is not
1580 supported anymore. (for now, that is)  
1581
1582 * Reference manual update. Document \properties with examples
1583
1584 * fix mudela-book --help
1585
1586 * Use element properties for Text_item::text_str_, Clef_item::symbol_,
1587 Key_item::c0_position_
1588
1589 * Clef_engraver general cleanup. Use alists (\property
1590 supportedClefTypes, clefPitches) for clef types.
1591
1592 * Use progress_indication () for progress. Don't include <iostream.h> directly 
1593 Don't include <string.h>, <math.h> from headers.
1594
1595
1596 1.3.16.hwn1
1597 ===========
1598
1599 * \property stemCentered (boolean): centers stem on note head. See
1600 input/test/stem-centered.ly
1601
1602 * input/trip.ly, small test of lots of features.
1603
1604 * \property Staff.collisionMergeDotted: merge equal noteheads
1605 with different dot count. See input/test/collision-merge-dotted.fly
1606
1607 * Dotted rest bugfix 
1608
1609 * Don't crash if a slur does not span any notes.
1610
1611 * Volta repeats fixed.
1612
1613 * cleanup of Note_heads_engraver
1614
1615 * removed dots_i_ member of Dots
1616
1617 1.3.16.jcn1
1618 ===========
1619 * Fixed cross staff slurs.  It seems that cross-staff sign
1620   was swapped.
1621
1622 1.3.15.hwn1
1623 ===========
1624
1625 * Fixed bug in stem code.  Stem in chords works again.  Small
1626 stem cleanups.
1627
1628 * Use element properties for Staff_symbol.
1629
1630 * \property sparseTies (boolean).  Only make one tie in the
1631 middle for tied chords.
1632
1633 * Junked Directional_spanner, Column_info.
1634 Directional_element now is element interface `Directional_element_interface'
1635
1636 * cleanup: use to_boolean () iso. gh_boolean_p && gh_bool2scm
1637
1638 pl 15.jcn4
1639         - removed old notename2scm conversion
1640         - beam-dir-algorithm through scm
1641         - bfs paper-scm
1642 gv      - bf: knee-stemlengths
1643
1644 pl 15.jcn3
1645         - moved poor man's stem arrays to scm
1646         
1647 pl 15.jcn2
1648         - beam quanting using scm lists
1649
1650 pl 14.hwn1jcn1
1651         - chord-name uses scm members
1652         - bfs: knee with different mults, interstaff knee, auto-knee
1653
1654 **********
1655 pl 14.hwn1
1656         - specialize duration.cc for lily, move out of lib/
1657         - stem cleanup
1658         - more SCM typechecking
1659         - stafflineleading -> staff_space
1660         - bf: rod distances.
1661         - junk some unused code.
1662         
1663 pl 13.hwn2
1664         - paper/score column cleanups. Junk Score_column type
1665
1666 pl 13.hwn1
1667         - Bezier_bow/Bezier cleanups
1668         - bf: rest under beam.
1669         
1670 pl 13.jcn2
1671         - untangled Chord_name (item) and Chord (list-of-pitches)
1672         
1673 pl 13.jcn1
1674         - bezier-bow fix
1675
1676 **********
1677 pl 12.hwn1
1678         - polynomial.hh
1679         - bf: generic properties
1680         - quantise_iv () fix.
1681         - bezier cleanup
1682         - class Polynomial 
1683         - use smobs for font metric tables/hashes.
1684         - nl.po bf
1685
1686 **********
1687 pl 11.jcn3
1688         - small beam fixes (interstaff knees still broken)
1689
1690 pl 11.hwn1
1691         - bf: dots
1692         - bf: harmonic note heads
1693         - revise stem, notehead, rest
1694
1695 pl 11.jcn2
1696         - included missing scm,ly updates
1697         - bf: urg to_dir () takes scm..
1698         - bf's: if (Foo b = bar != 1)
1699         - beam cleanup
1700
1701 *********
1702 pl 10.uu1
1703         - various small bfs
1704         - bf: alignment reversed
1705         - Staff_symbol_referencer -> Staff_symbol_referencer_interface
1706         - bf: staccato pos
1707         - Knee fixes (thanks, Jan)
1708
1709 pl 10.jcn2
1710         - fixes for invisible beamed stems
1711         - removed steminfo from properties, don't cache Stem_info
1712
1713 pl 10.jcn1
1714         - steminfo to properties
1715         - dropped internote dim for stem-beams
1716
1717 *********
1718 pl 9.hwn1
1719         - abstracting Staff_symbol_referencer to an interface.
1720         - quantised_position for staccato dots.
1721         - standchen fixes
1722         - junk Score_element::do_{width,height}: set callbacks directly.
1723         - merge Score_element, Graphical_element
1724         - merge Axis_group_element, Graphical_axis_group
1725         - junk pointer fields from Score_element derived classes
1726         - junk obsolete do_substitute_dependency code.
1727
1728 **********
1729
1730 pl 8.hwn2
1731         - staff-support for Crescendi.
1732         - padding for accidentals.
1733         - cascading offset callbacks
1734
1735 pl 8.hwn1
1736         - note-head-side 
1737         - naming Staff_sidify -> Side_position_interface
1738
1739 ***********
1740
1741 pl 7.mb1
1742         - bf: timeSignatureStyle works again
1743
1744 pl 7.hwn1
1745         - Dirk Latterman key/mmrest patches
1746         - Offset callbacks in Dimension_cache
1747         - Junked Staff_side_*
1748         - Staff_sidify: interface class.
1749         - prelude-{1,2} fixes.
1750
1751 ***********
1752 pl 6.uu2
1753         - bf: PS font selecting.
1754
1755 pl 6.uu1
1756         - bf: ls-latex
1757         - mudela-book --no-pictures
1758         - bf: ly2dvi
1759         - convert-mudela: beamAuto moment syntax. 
1760
1761 pl 6.jcn3
1762         - fixed scm output
1763
1764 pl 6.jcn2
1765         - half-baken ly-gulp-file in scm
1766         - resurrected scm output through guile
1767
1768 pl 5.mb1
1769         - bf: version of init.sly, init.fly
1770         - Clarify necessary version of texinfo
1771         - bf: texi files, minor errors and syntax compatible with 
1772           older makeinfo
1773
1774 pl 6.jcn1
1775         - bf: scm output
1776
1777 *******
1778
1779 pl 5.hwn2
1780         - Bach preludes: mutopification
1781         - dots are Directional_element too; use \property dotDirection
1782         - moved some stuff out of Lookup
1783         - bf: dots
1784         - font selection mechanics changed.
1785
1786 pl 5.uu1
1787         - bf: smob allocation (thanks David!)
1788
1789 pl 5.hwn1
1790         - junked \shape. Now use #'margin-shape 
1791         - timing: one_beat -> \property beatLength
1792         - bf convert-mudela
1793
1794 ************
1795
1796 pl 4.uu1
1797         - input/test/ \property fixes.
1798         - gcc 2.95 fix
1799
1800 pl 4.hwn1
1801         - Break_align_engraver,
1802         break align order from  \property breakAlignOrder
1803         - junked Score_priority_engraver
1804         - moved Time_description into Timing_translator
1805         - use properties for timing, see input/test/timing.fly
1806         * removed \cadenza ; now use \property Score.timing
1807         * \property measurePosition
1808         * \property measureLength
1809         * \property currentBarNumber
1810         - Note_name_engraver , \context NoteNames
1811
1812
1813 pl 4.jcn1
1814         - junked some chord guessing code
1815         - bf: lookup size (-1) for chord-name accidentals
1816         - bf: ly2dvi's MFINPUTS setting
1817
1818 *************
1819 pl 2.jcn3
1820         - chords:
1821           * Chord is item
1822           * junked TeX hacking
1823           * configurable with styled strings from scm
1824           * fixes: dim, /no X, tonic != C
1825
1826 pl 2.jcn2
1827         - chords from  scm 
1828
1829
1830 pl 3.hwn2
1831         - visibility-lambdas into default elt properties SCM.
1832         - clef types in SCM
1833         - verticalDirection properties now in SCM.
1834
1835 pl 3.hwn1
1836         - move position_i_ into Staff_symbol_referencer
1837         - move dir_ into Directional_element baseclass
1838
1839 ****************
1840
1841 pl 2.hwn1
1842         - bf: dynamic style.
1843         - prepare to move dir_ into SCM. 
1844
1845 pl 2.jcn2
1846         - chord fixes: 
1847            * inversion request: no inversion guessing for chord entry
1848            * bass request: c/+b to add bass note not part of chord
1849            * -dim modifier works on all thirds
1850            * colon iso dash as tonic/modifier-additions separator
1851            * C:m5- displays as "Cdim"
1852            * C:m5-7- displays as "Co"
1853
1854 pl 2.jcn1
1855         - moved bracket vars to params
1856         - reverted broken lilypond-devel
1857
1858 *************
1859 pl 1.uu1
1860         - David's patches:
1861         * mfplain.mp detection
1862         * Graphical_element::common_refpoint() robuster.
1863         * fixes for mudela-mode.el
1864         - Dirk's patches:
1865         * key signature placement,
1866         * tied accidentals.
1867
1868 pl 1.hwn2
1869         - extra-offset elt property.
1870         - junked Chord_tremolo
1871
1872 pl 1.hwn1
1873         - changed calling convention for {get,set,remove}_elt_property()
1874         - rm'd some mutopia examples.
1875
1876 *******
1877 pl 0.hwn2,1
1878       - Generic properties and Property_engraver. Moved most of the
1879 properties.
1880
1881 0.lu1
1882         - resurrected midi2ly
1883
1884 0.jcn1
1885         - bf: lyrics lexer
1886         - reverted mup2ly revert
1887
1888 pl 3.uu1:
1889         - frontport of 1.2.17 patches.
1890
1891 **********
1892
1893 1.3.0:
1894
1895 pl 15.hwn2
1896         - loads of bfs.
1897
1898 pl x.jcn3
1899         - another workaround: reset buffer state for scm_ftell ()
1900         - workaround for broken scm_ftell ()
1901
1902 pl 15.hwn1
1903         - \properties are now SCM s, junk Scalar type
1904         - use SCM for strings in parser.
1905         - Moment derived from Rational. Moment may be smobified.
1906
1907 pl 15.jcn4
1908         - direct #... to scm parser  (Thanks to Gary Houston)