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