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