]> git.donarmstrong.com Git - lilypond.git/blob - CHANGES
patch::: 1.3.32.jcn1
[lilypond.git] / CHANGES
1 1.3.32.jcn1
2 ===========
3
4 * Removed duplicate lily/output-property-engraver.hh.
5
6 * Removed optional use of vanilla spanner in Dynamic_engraver.
7
8 * Fixed (measured) tremolo for Stem and Beam. Merged declarations
9   stem-engraver.hh and chord-tremolo-engraver.hh into their .cc
10   implementation file.  Also fixed looks of Chord tremolo, input and
11   implementation is still ugly.
12
13 * Added *.yy and *.ll to TAGS, to that tags-find-replace doesn't omit
14   parser and lexer.
15
16 1.3.31.jcn5
17 ===========
18
19 * Fixed and cleaned-up Dynamic_engraver.  Optionionally uses vanilla
20   spanner instead of Dynamic_line_spanner.
21
22 * Made gcc-2.95 compile fix in libc-extension.
23
24 * Various fixes to Coriolan, score starts to look acceptable.
25
26 1.3.31.jcn3
27 ===========
28
29 * Moved optional text of crescendo into Crescendo spanner.  Fixed horizontal
30   and vertical alignment of dynamics.
31
32 * Added new text crescendo spanners to Coriolan and made some fixes.
33   If you're using timidity, use the -EO option to prevent notes get
34   stuck.  I'm not sure whose fault this is, Lily's MIDI output may be
35   stretching the standard a bit.
36
37 1.3.30.jcn4
38 ===========
39
40 * Adjacent dynamic markings are now grouped on a horizontal line, but it's
41   not perfect yet: they're always below the staff and no horizontal spacing
42   is done.  Also, character metrics of dynamics are still not used.
43   See: input/test/crescendi.ly and input/test/dyn-line.ly
44
45 * Cleaned up Span_dynamic_performer.
46
47 1.3.31
48 ======
49 1.3.30.mb1
50 =========
51
52 * Fixed the page layout, reintroducing space for the header and
53   trying to keep piece titles on the same page as the piece.
54   The header and footer can now contain several lines.
55
56 1.3.30.jcn3
57 ===========
58
59 * Lily now also performs crescendi and decrescendi in MIDI output:
60   Span_dynamic_performer (bit scrappy).
61
62 * Added preliminary support for crescendi/decrescendi other than `hairpins',
63   eg: `cresc. poco `a poco -- -- --'
64
65 * Made MIDI tie performance fix.
66
67 1.3.30.jcn2
68 ===========
69
70 * Lily now performs absolute dynamics in MIDI output.
71
72 * Included David's comments on opus47 in TODO.
73
74 1.3.30.jcn1
75 ===========
76
77 * More Coriolan: flute-1,2; oboe-1,2; clarinet-1,2; 
78   fixes and remainder french horn-1,2; trombone-1,2;
79   fagotto-1,2; timpani; and several fixes.
80   
81 1.3.30.uu1
82 ==========
83
84 * Remove some old doco from programmer/ and put on personal homepage.
85
86 * Removed union-find from flower library.
87
88 * Only quantise tie horizontal part inside the staff.
89
90 1.3.30
91 ======
92 1.3.29.hwn1
93 ===========
94
95 * Report type errors for \property. Helps with converting 1.2 input
96
97 * Use Scheme for Align_element; fixed graceAlignPosition 
98 and removed \property alignmentReference in the process.
99
100 * Use generic properties for lyrics too.  This fixes \property
101 Lyrics.textStyle
102
103
104 * Add relative distance for constraints between non-column items.
105
106 * Automatic \marks: use "\mark ; ". The mark numbers or letters are
107 increased automatically.
108
109 * Translators now only change properties of their own context. This
110 removes the 2nd argument to Translator::get_property()
111
112 * Bugfix for Metapost mode
113
114 1.3.29.uu1
115 ==========
116
117 * Updates of glossary  (Christian Mondrup)
118
119 * Bugfix with bar number placement
120
121 * Moved links to bibliography/ and misc/ to main index.
122
123 1.3.29
124 ======
125
126 * Moved Slur-specific code from Bezier_bow to Slur and Slur_bezier_bow.
127   Slurs are now calculated just once.
128
129 * Bezier_bow gets constants from paper.  Still no sensible solution for
130   magic asymmetry gradient step constants.
131
132 * Reinstantiated tangent-controls, more flexible than ever.  You can choose
133   between area asymmetry and tangent-controls.  My guess is, tangent controls
134   will be junked in 1.3.30.
135
136 * Slur area: only look at x-gradient.
137
138 * Added credits for some symbols of as5/9 fonts.
139
140 * Bugfix: don't make almost flat slurs, change in de-uglyfy slur.  
141
142 * Bugfix: midi2ly put out recent version (ugh).
143
144 1.3.28.hwn2
145 ===========
146
147 * Bugfix: don't forget to process staffSpace and numberOfStaffLines
148 properties.
149
150 * Removed Gade score. To appear (shortly?) on Mutopia. 
151
152 * Make Bar_script_engraver look for typeVisibilityFunction (eg
153 property barNumberVisibilityFunction). Changed the names of the Scheme
154 functions to be understandable. See input/test/bar-script-visibility.ly
155
156 * rewrite of class Molecule. It has now reached the ultimate quality
157 plateau. All molecule data is now shared.
158
159 1.3.28
160 ======
161
162 * Update of the glossary by Christian Mondrup 
163
164 * Moved horn-concerto-3 out of tarball to private website, removed
165 W.A.Mozart subdirectory.
166
167 1.3.27.hwn1
168 ===========
169
170 * Bugfix: don't make giant ties if the horizontal part of tie is near
171 the center.
172
173 * Small optimizations to be a little more careful with mem usage. 
174
175 * Website change: put all examples in one directory.
176
177 * Removed Atom as a separate type.  Now use SCM, and since we use
178 function composition, Atoms are immutable, so they don't have to be
179 copied. This makes life easier, hopefully this is quicker and uses
180 less memory.
181
182 1.3.27.jcn1
183 ===========
184
185 * Bezier_bow: minimise_enclosed_area
186
187 1.3.27
188 ======
189
190 1.3.26.hwn4
191 ===========
192
193 * Tuplet-spanner slope calculation now looks better on tupletted rests
194 (patch courtesy Laurent Martelli)
195
196 * Bugfix (Staff_performer::new_instrument_str ()) check type of
197 \property "instrument"
198
199 * New mechanism for breaking lines: do not copy & prune the element
200 property list separately, but combine these steps. Dramatically
201 reduces memory usage for large scores.
202
203 1.3.27
204 ======
205 1.3.26.jcn2
206 ===========
207
208 * Bugfix: font used in volta-spanner calculation.
209
210 * Added simple selection list to webpage, inspired by sawmill.
211  
212 * Devised kludge for ascii 5 character font pitches.
213  
214 * Substitutions: interline, 1997,1998, @stack.nl and small typo fixes.
215
216 1.3.26.hwn1
217 ===========
218
219 * Plug memory leaks related to Moment:
220   - Spacing_engraver::do_pre_move_processing ()
221   - make_rational ()/make-rational
222   - Paper_column::Paper_column ()
223
224 * Plug memory leak in Paper_outputter::output_{String,Real,int}_def()
225
226 * Plug memory leak in Score_engraver::set_columns ()
227
228 * Plug memory leak in Scheme_hash_table::set()
229
230 * Plug memory leak in Score_element::molecule_extent ()
231
232 * Bugfix: don't crash if a slur doesn't span anything.
233
234 * Bugfix: don't crash if doing beams without a staff symbol.
235
236 * Generic element property setting:
237
238         \outputproperty #predicate #'symbol = #value
239
240 Will set the element property symbol to value, for any elements that
241 return true for PREDICATE.  This allows you to virtually tweak *ANY*
242 property of the output. Example in input/test/generic-output-property.ly
243
244 1.3.26
245 ======
246
247 * lilypond as as2ly: --help and --version to stdout.  Regular identify 
248   to stderr.  This fixes help2man's manpage generation.
249
250 * configure: substitute full path for perl and guile in scripts.
251
252 * Added ascii slur and volta.  There seems to be a Lily bug in volta placement.
253
254 * Bugfix: default font now user settable
255
256 * as2text: handle plain ascii font, read from stdin, you can now do:
257
258   echo "\time 4/4; g''1 g2 g4. g8" | lilypond -f as -i init-as.fly - | as2text
259
260 1.3.25.hwn1
261 ===========
262
263 * Bugfix: second half of broken ties now are displayed again.
264
265 * Bugfix: add clef to the support of 8 text in the G_8 clefs. Center
266 it horizontally on the clef.
267
268 * Added Tie_column spanner. Ties in tied chords now get proper directionsa.
269
270 * Bugfix: unbroken repeat barlines now work, eg. |:
271
272 * Added Request_iterator to make more flexible constructions possible.
273
274 1.3.25
275 ======
276 * as2text: catch missing font/character errors, added default font, set text.
277
278 * New ascii fonts and glyphs: as5 as-numeral4 as-braces9
279
280 * Ascii output, minimal support:
281   - AsciiScript Fonts: mf/*.af
282   - Init files: ly/*-as.*ly 
283   - AsciiScript translation to text: scripts/as2text.scm
284   - input/test/as.fly input/test/as1.fly
285   - Output support: lily/lily.scm
286   - Try:
287       lilypond -f as -i init-as.fly input/test/as.fly
288       as2text as.as
289
290 1.3.24.hwn1
291 ===========
292
293 * The horizontal part of ties will avoid collision with staff lines.
294
295 * Plugged memory leak: don't protect Atom function.
296
297 * Lookup cleanups. Made lots of functions static. Moved some code out
298 of Lookup.
299
300
301
302 1.3.24.hwn1
303 ===========
304
305 * Bugfix: ly2dvi.py exits succesfully when encountering --help and
306 does not delete any of the file_ly*.tex.
307
308 * Added header and footer support in ly2dvi.py
309
310 1.3.24
311 ======
312
313 * Added a ROADMAP file explaining the source directory layout.
314
315 * Minor tweak in the feta 6 and 9 numeral
316  
317 * Moved files from lib/ to flower/
318
319 * Removed Note_head_side class.
320
321 * Updated the webpage to be a little more chatty. 
322
323 * Small Local_key_engraver optimization: only lookup timing engraver once.
324
325 * Fixed dashed slurs
326
327 * Rewrite of Slur code.  Be much more picky about slur shapes. We try
328 to offset the slur instead of bending it too much
329
330 * Look at stem directions for tie direction.
331
332 * Compound multimeasure rests. Put measures_i_ variable in an element
333 property.  Made the symbol a lot wider.
334
335 * Time signature small cleanups.
336
337 1.3.22.hwn2
338 ===========
339
340 * Symbols opposite to stem (eg marcato) now get the proper glyph in up
341 version.
342
343 * Breathing marks now have a direction by default.
344
345 * Do set generic script properties.
346
347 * Also put tuplet brackets under notes.
348
349 * Score_element_info: only store origin of element, but not the path
350 to parent translators. Saves a little memory, and removes some complexity.
351
352
353 1.3.22.hwn1
354 ===========
355
356 * Autobeaming in time sigs that don't have 1/4 beats fixed.
357
358 * (De)crescendi should now work. (Thanks Michael)
359
360 * Better error reporting for conflicting time signatures.
361
362 * Line_number_engraver: output locations of note head
363 definitions. Very handy when entering complicated scores.
364
365 * Rewrote multi measure rest support: now they are entered as spanners
366 (\commandspanrequest \start "rest"). RXXXX is an abbreviation for
367
368   { \commandspanrequest \start "rest"
369     SXXXX
370     \commandspanrequest \stop "rest"
371   }
372
373 * Removed support of percent style repetitions. 
374
375 * Put texts outside the staff.
376
377 1.3.21.mb1
378 ==========
379 * Getopt bugfix: don't assert on certain errors.
380
381 * ly2dvi: Remove unnecessary space for the page headers.
382
383 * Bugfix convert-mudela
384
385 1.3.21.hwn1
386 ===========
387
388 * Bugfix in lilypond-mode.el: eval-buffering now uses file name and
389 not buffer name.
390
391 * Scrapped tupletVisibility property. Now use tupletNumberVisibility,
392 tupletBracketVisibility, with Scheme value #t, #f or 'if-no-beam.
393 \property tupletInvisible will stop all tuplet spanner creation.
394
395 * Don't go berserk if tuplet spanner is on only one column.
396
397 * Use SCMs & Smobs for Molecules & atoms.  This uses less
398 scm_(un)protect_object () calls, so the output stage should be faster.
399
400 * Added \property tupletSpannerDuration, to make multiple tuplet signs
401 with one \times.
402
403 * Some programming Errors in spacing are now caught. Lily does not
404 hang when encountering degenerate springs.
405
406 * Allow beams to start and end over rests
407
408 1.3.19.hwn2
409 ===========
410 * Fix disappearing clefs when clefs are not printed with a barline.
411
412 1.3.20.jcn2
413 ==========
414
415 * SCM properties beamHeight and beamVerticalposition now use half-spaces:
416   input/test/beam-control.fly
417 * Added \context Voice to .fly and .sly; the default \context Staff is almost
418   never what you expect
419 * Fixed decision for .sly/.fly in lilypond-mode.
420
421 1.3.19.hwn1
422 ==========
423
424 * Clean up font-metric hierarchy, use Adobe AFM code to parse AFM files.
425 Cleanup mf-to-table.py
426
427 * Fixed embarassing slur bug.
428
429 1.3.19.jcn1
430 ==========
431
432 * lilypond-mode.el: guess init file for lily-*-region, lily-mode-map bindings
433
434 1.3.18.uu2
435 ==========
436
437 * lilypond-mode.el for emacs supersedes mudela-mode.el 
438
439 * Tuplet spanners don't collide with encompassing notes. 
440
441 * Gobbled Adobe parseAFM* code, for future use.
442
443 * Big 1999 to 2000 search/replace.
444
445 * Big interline to staff_space search/replace for mf files.
446
447 * Removed Bow class, and split code into Tie and Slur
448
449 * Don't put scripts on grace notes.
450
451 * Font_metric uses SCM for name field.
452
453 * Various compilation fixes.
454
455 1.3.17.jcn2
456 ===========
457
458 * Bugfix: beams with less than one (visible) stem
459
460 * small fixes to pa.ly
461
462 1.3.17.jcn1
463 ===========
464
465 * Fixed bug that made multi-measure rest barnumber counts go wild.
466 (even more scm2int/int2scm mixups!)
467
468 * mutopia/J.S.Bach/pa.ly: organ score (for my father)
469
470 * small fix to mutopia/J.S.Bach/Duette/violino-ii.ly
471
472 1.3.17.hwn2
473 ===========
474
475 * Remove Paper_def calls in bezier-bow.cc
476
477 * Remove data members of Tuplet_spanner,  Volta_spanner
478
479 * hang_on_clef, property hangOnClef removed
480
481 * Bar::type_str_ mode into element property `glyph'. Use a Scheme
482 function to determine breaking behavior.
483
484 * More Scheme typechecking.
485
486 * Be strict about the difference between strings and symbols for conversion.
487
488 * Fixed bug that made 1st line offset to right fixed. Bugfix courtesy
489 Laurent Martelli.
490
491 * Partial French translation, courtesy Laurent Martelli.
492
493 * Small corrections in NL translation. 
494
495 1.3.17.hwn1
496 ===========
497
498 * Added mensural note heads (noteHeadStyle = "mensural") Additionally,
499 we have a longa note head.  noteHeadStyle = "harmonic" is not
500 supported anymore. (for now, that is)  
501
502 * Reference manual update. Document \properties with examples
503
504 * fix mudela-book --help
505
506 * Use element properties for Text_item::text_str_, Clef_item::symbol_,
507 Key_item::c0_position_
508
509 * Clef_engraver general cleanup. Use alists (\property
510 supportedClefTypes, clefPitches) for clef types.
511
512 * Use progress_indication () for progress. Don't include <iostream.h> directly 
513 Don't include <string.h>, <math.h> from headers.
514
515
516 1.3.16.hwn1
517 ===========
518
519 * \property stemCentered (boolean): centers stem on note head. See
520 input/test/stem-centered.ly
521
522 * input/trip.ly, small test of lots of features.
523
524 * \property Staff.collisionMergeDotted: merge equal noteheads
525 with different dot count. See input/test/collision-merge-dotted.fly
526
527 * Dotted rest bugfix 
528
529 * Don't crash if a slur does not span any notes.
530
531 * Volta repeats fixed.
532
533 * cleanup of Note_heads_engraver
534
535 * removed dots_i_ member of Dots
536
537 1.3.16.jcn1
538 ===========
539 * Fixed cross staff slurs.  It seems that cross-staff sign
540   was swapped.
541
542 1.3.15.hwn1
543 ===========
544
545 * Fixed bug in stem code.  Stem in chords works again.  Small
546 stem cleanups.
547
548 * Use element properties for Staff_symbol.
549
550 * \property sparseTies (boolean).  Only make one tie in the
551 middle for tied chords.
552
553 * Junked Directional_spanner, Column_info.
554 Directional_element now is element interface `Directional_element_interface'
555
556 * cleanup: use to_boolean () iso. gh_boolean_p && gh_bool2scm
557
558 pl 15.jcn4
559         - removed old notename2scm conversion
560         - beam-dir-algorithm through scm
561         - bfs paper-scm
562         - bf: knee-stemlengths
563
564 pl 15.jcn3
565         - moved poor man's stem arrays to scm
566         
567 pl 15.jcn2
568         - beam quanting using scm lists
569
570 pl 14.hwn1jcn1
571         - chord-name uses scm members
572         - bfs: knee with different mults, interstaff knee, auto-knee
573
574 **********
575 pl 14.hwn1
576         - specialize duration.cc for lily, move out of lib/
577         - stem cleanup
578         - more SCM typechecking
579         - stafflineleading -> staff_space
580         - bf: rod distances.
581         - junk some unused code.
582         
583 pl 13.hwn2
584         - paper/score column cleanups. Junk Score_column type
585
586 pl 13.hwn1
587         - Bezier_bow/Bezier cleanups
588         - bf: rest under beam.
589         
590 pl 13.jcn2
591         - untangled Chord_name (item) and Chord (list-of-pitches)
592         
593 pl 13.jcn1
594         - bezier-bow fix
595
596 **********
597 pl 12.hwn1
598         - polynomial.hh
599         - bf: generic properties
600         - quantise_iv () fix.
601         - bezier cleanup
602         - class Polynomial 
603         - use smobs for font metric tables/hashes.
604         - nl.po bf
605
606 **********
607 pl 11.jcn3
608         - small beam fixes (interstaff knees still broken)
609
610 pl 11.hwn1
611         - bf: dots
612         - bf: harmonic note heads
613         - revise stem, notehead, rest
614
615 pl 11.jcn2
616         - included missing scm,ly updates
617         - bf: urg to_dir () takes scm..
618         - bf's: if (Foo b = bar != 1)
619         - beam cleanup
620
621 *********
622 pl 10.uu1
623         - various small bfs
624         - bf: alignment reversed
625         - Staff_symbol_referencer -> Staff_symbol_referencer_interface
626         - bf: staccato pos
627         - Knee fixes (thanks, Jan)
628
629 pl 10.jcn2
630         - fixes for invisible beamed stems
631         - removed steminfo from properties, don't cache Stem_info
632
633 pl 10.jcn1
634         - steminfo to properties
635         - dropped internote dim for stem-beams
636
637 *********
638 pl 9.hwn1
639         - abstracting Staff_symbol_referencer to an interface.
640         - quantised_position for staccato dots.
641         - standchen fixes
642         - junk Score_element::do_{width,height}: set callbacks directly.
643         - merge Score_element, Graphical_element
644         - merge Axis_group_element, Graphical_axis_group
645         - junk pointer fields from Score_element derived classes
646         - junk obsolete do_substitute_dependency code.
647
648 **********
649
650 pl 8.hwn2
651         - staff-support for Crescendi.
652         - padding for accidentals.
653         - cascading offset callbacks
654
655 pl 8.hwn1
656         - note-head-side 
657         - naming Staff_sidify -> Side_position_interface
658
659 ***********
660
661 pl 7.mb1
662         - bf: timeSignatureStyle works again
663
664 pl 7.hwn1
665         - Dirk Latterman key/mmrest patches
666         - Offset callbacks in Dimension_cache
667         - Junked Staff_side_*
668         - Staff_sidify: interface class.
669         - prelude-{1,2} fixes.
670
671 ***********
672 pl 6.uu2
673         - bf: PS font selecting.
674
675 pl 6.uu1
676         - bf: ls-latex
677         - mudela-book --no-pictures
678         - bf: ly2dvi
679         - convert-mudela: beamAuto moment syntax. 
680
681 pl 6.jcn3
682         - fixed scm output
683
684 pl 6.jcn2
685         - half-baken ly-gulp-file in scm
686         - resurrected scm output through guile
687
688 pl 5.mb1
689         - bf: version of init.sly, init.fly
690         - Clarify necessary version of texinfo
691         - bf: texi files, minor errors and syntax compatible with 
692           older makeinfo
693
694 pl 6.jcn1
695         - bf: scm output
696
697 *******
698
699 pl 5.hwn2
700         - Bach preludes: mutopification
701         - dots are Directional_element too; use \property dotDirection
702         - moved some stuff out of Lookup
703         - bf: dots
704         - font selection mechanics changed.
705
706 pl 5.uu1
707         - bf: smob allocation (thanks David!)
708
709 pl 5.hwn1
710         - junked \shape. Now use #'margin-shape 
711         - timing: one_beat -> \property beatLength
712         - bf convert-mudela
713
714 ************
715
716 pl 4.uu1
717         - input/test/ \property fixes.
718         - gcc 2.95 fix
719
720 pl 4.hwn1
721         - Break_align_engraver,
722         break align order from  \property breakAlignOrder
723         - junked Score_priority_engraver
724         - moved Time_description into Timing_translator
725         - use properties for timing, see input/test/timing.fly
726         * removed \cadenza ; now use \property Score.timing
727         * \property measurePosition
728         * \property measureLength
729         * \property currentBarNumber
730         - Note_name_engraver , \context NoteNames
731
732
733 pl 4.jcn1
734         - junked some chord guessing code
735         - bf: lookup size (-1) for chord-name accidentals
736         - bf: ly2dvi's MFINPUTS setting
737
738 *************
739 pl 2.jcn3
740         - chords:
741           * Chord is item
742           * junked TeX hacking
743           * configurable with styled strings from scm
744           * fixes: dim, /no X, tonic != C
745
746 pl 2.jcn2
747         - chords from  scm 
748
749
750 pl 3.hwn2
751         - visibility-lambdas into default elt properties SCM.
752         - clef types in SCM
753         - verticalDirection properties now in SCM.
754
755 pl 3.hwn1
756         - move position_i_ into Staff_symbol_referencer
757         - move dir_ into Directional_element baseclass
758
759 ****************
760
761 pl 2.hwn1
762         - bf: dynamic style.
763         - prepare to move dir_ into SCM. 
764
765 pl 2.jcn2
766         - chord fixes: 
767            * inversion request: no inversion guessing for chord entry
768            * bass request: c/+b to add bass note not part of chord
769            * -dim modifier works on all thirds
770            * colon iso dash as tonic/modifier-additions separator
771            * C:m5- displays as "Cdim"
772            * C:m5-7- displays as "Co"
773
774 pl 2.jcn1
775         - moved bracket vars to params
776         - reverted broken lilypond-devel
777
778 *************
779 pl 1.uu1
780         - David's patches:
781         * mfplain.mp detection
782         * Graphical_element::common_refpoint() robuster.
783         * fixes for mudela-mode.el
784         - Dirk's patches:
785         * key signature placement,
786         * tied accidentals.
787
788 pl 1.hwn2
789         - extra-offset elt property.
790         - junked Chord_tremolo
791
792 pl 1.hwn1
793         - changed calling convention for {get,set,remove}_elt_property()
794         - rm'd some mutopia examples.
795
796 *******
797 pl 0.hwn2,1
798       - Generic properties and Property_engraver. Moved most of the
799 properties.
800
801 0.lu1
802         - resurrected midi2ly
803
804 0.jcn1
805         - bf: lyrics lexer
806         - reverted mup2ly revert
807
808 pl 3.uu1:
809         - frontport of 1.2.17 patches.
810
811 **********
812
813 1.3.0:
814
815 pl 15.hwn2
816         - loads of bfs.
817
818 pl x.jcn3
819         - another workaround: reset buffer state for scm_ftell ()
820         - workaround for broken scm_ftell ()
821
822 pl 15.hwn1
823         - \properties are now SCM s, junk Scalar type
824         - use SCM for strings in parser.
825         - Moment derived from Rational. Moment may be smobified.
826
827 pl 15.jcn4
828         - direct #... to scm parser  (Thanks to Gary Houston)