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