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