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