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