]> git.donarmstrong.com Git - lilypond.git/blob - NEWS
802481261242cd82d023f055e4d443c0eb2352b3
[lilypond.git] / NEWS
1 pl 74pre
2         - Input_engraver -> Input_translator
3         - bf: span start/stop is now a "used" col.
4         - Rest_column/Rest_collisions bugfixes
5         - bf: crescendi.
6         - Spanner do_print()
7         
8 ******
9 july 7
10 pl 73pre
11         - some refs doco.
12         - move Input_engraver into Paper_def
13         - junk Interpreter
14         - naming: Request_engraver -> Engraver, 
15         - Music_iterator::next() -> process_and_next()
16         - junk Voice_engravers
17         - Span_bar, Span_bar_engraver
18         - Vertical_align_engraver
19         
20 *******
21 july 2
22 pl 72pre
23         - \paper{} syntax: var = 1.0\pt;, with an Assoc array
24         - sketch of MIDI Performer classes.
25         - bf: memleak in parser
26         - naming: Acceptor -> Translator
27         - input: bf collisions.ly, scales.ly
28         - bf: [r8 c8]
29         - naming: Register -> Engraver
30         - force \\ on identifiers
31         - doco updates
32         - musixtex T73 fonts
33
34 pl 70.mb
35         - bf: find syntax in Variables.make
36 *****
37 july 1
38 pl 71pre
39         - nested \melodic and \lyric constructs
40         - init id's, Input_register aliases.
41         - bf: notehead x-swap 
42         - bf: auto-keys.
43         - bf: first clef
44         - junked \init_end; construct
45         - Preparatory work for MIDI output:
46                 * Acceptor as baseclass for Register_group_register
47                 * Global_acceptor as interface of Register to Score
48         - bf: empty voice
49         - Lyrics: partially working
50         - some doco updates (junks, mostly)
51
52
53 ******
54 june 30
55
56
57 pl 70pre
58         - bf: text Script
59         - bf: Script::dir_i_ checks.
60         - bf: script stacking
61         - bf: Text_spanner::do_subst.
62         - bf: Text_spanner::Text_spanner(Text_spanner&)
63         - bf: script priority read from script.ini
64         - bf: Script_def::do_equal_b
65         - bf: script dims.
66         - mudela: ; obligatory for \paper {}.
67         - some cosmetic changes involving RTTI macros
68
69 *******
70 june 29
71 pl 69pre
72         - bf: whole rest position, whole/half rest dots.
73         - bf: scripts
74         - reg termination
75         - centered bars
76         - bf: init of Tie::dir_i_ 
77         - bf: Staff_side depends on staff_sym_
78         - bf: Script::do_substitute_dependency() now implemented
79         - more print info (also in output)
80         - bf: Vertical_align_element
81         - stemless beams now allowed (with warning)
82         - bf: Rest_column::stem_l_ init
83         - merge rests.ly with collisions.ly
84
85 pl 67.jcn3
86         - rests under beam [c8 r c]
87
88 pl 67.jcn2
89         - first attempt at rest collisions
90         - rests.ly
91
92 pl 67.jcn1
93         - beam stem length: beams.ly
94         - bf: mingw configure
95         - re: conflily
96
97 ******
98 june 26
99 pl 68pre
100         - doco: other-packages.pod, lots of lilyliterature.pod
101         - last duration mode now is default.
102         - some OpusTeX stuff.
103         - bf Y2K in convert-mudela
104         - Grand rewrite of Music/Register stuff:
105           * separation of Y and X-elt-groups
106           * Registers: info up: broadcasts, info down: get_xxx_info()
107           * Registers: try_request works from bottom to top of tree.
108           * Score_elem empty_b_ and transparent_b_ flag
109           * Junk Staff_column, and find the requests while walking the
110           Voices.
111           * Score_register
112           * Staff_group, Score_request_register.
113           * align key/Meters/bar across staffs
114           * junked Staff, Staff_column, Staff_walker, Complex_walker,
115             Request_column Pulk_voice, Pulk_voices, Walker_registers,
116             Voice_element, 
117             Input_score, Input_staff, Input_music and a lot of
118             parserjunk.
119           * mudela: lots of structure changes : now much simpler
120           * generation of pre/postbreak items now in Score_elem with deps.
121         
122         - bf: make_patch explanation
123         - bf: make install TeX stuff
124         - mudela: . mandatory for REALs
125
126
127 pl 67
128         - damped beamslope after wanske
129
130 ******
131 june 3
132 pl 67
133         - sketch of Music classes
134         - General_script_def as baseclass for Text_def and Script_def
135         - bf: clean lib/out/liblily.a
136         - bf: rests shorter than 1/4
137
138 pl 66.jcn3
139         - bf: make uninstall
140         - conflily
141         - f: some pedaling
142         - plet hack removed :-( [ c c c ]2/3 -> [2/3 c c c ]1/1
143
144 pl 66.jcn2
145         - bf: bar, Hilfslinie
146         - bf: configure for mingw32
147
148 pl 66.jcn1
149         - WIN32 -> WINDOWS32, more win32->windows32
150         - some GNU/Linux changes
151         - cygnus b18 / mingw update
152         - doze compile; bf: p-score.cc compares
153         - reincluded toccata fixes
154         - small stuff: vi tags, typos, bibl
155
156 ******
157 may 27
158 pl 66
159         - make_website --jpeg, --png and --gif
160         - win32 -> windows32
161         - bf: Score_elem::TeXstring assert fail
162         - bf: headswap with stemdown
163         - bf: broken tie
164         - bf: broken slur
165         - bf: accidental dims
166         - bf: measure bar width
167         
168
169 ******
170 may 26
171
172 pl 65
173         - bf pathfind /root/file
174         - massive Score_elem rewrite:
175           * group_element_i_ count
176           * support for removing an individual Score_elem cleanly.
177           * moved dep stuff into class Directed_graph_node
178           * Score_elems can be copied and deleted freely.
179           * junk PStaff
180           * Spanner_elem_group
181           * Line_of_{score,staff} now are Score_elems
182           * clean dep handling upon deletion
183           * delete unbroken spanners
184           * added a break_processing round.
185           * Super_elem
186         - junk Complex_staff, 
187         - clean {lily}?proto.hh
188         - Element_group
189         - Score_elem now as virtual base class everywhere
190         - naming: Staff_elem -> Score_elem
191         - bf: make in toplevel dir
192         - bf: broken tie y-pos
193         - bf: sharing 4th, 8th and 16th noteheads 
194         - bf: overlapping chords. <\multivoice c d >
195
196 pl 64.wl
197         - new stem direction code
198         - bfs: wohltemperirt.ly (thanks, Werner)
199         - bf: stem direction
200
201 pl 63.jcn2
202         - doze compile
203
204 pl 63.jcn1
205         - bf: mi2mu mudela commands
206         - bf: mi2mu tracks
207         - mi2mu quantify tuning
208         - mi2mu TODO
209
210 *********
211 may 16
212 pl 64
213         - exe's now built in out/
214         - toplevel Makefile dep from make/Toplevel.make.in
215         - make_website: add version footer
216         - make_website: bf dist *.txt
217         - bf: fix loose bars :  \meter 4/4; c1.  
218         - Staff_elem -> Score_elem
219         - bf <cis cis>
220         - vbrace lookup
221         - resync barcheck
222
223 *******
224
225 may 15
226 pl 63
227         - bf: segfault during MIDI output  with mi2mu output.
228         - kludge: parse error beyond eof
229         - don't read ini if toplevel file not found
230         - accumulate \kern in TeX output.
231         - bf: try to prevent long lines; TeX breaks on them.
232         - naming: Pointer->Link, IPointer->Pointer
233         - bf: \plet didn't work (MB)
234         - GMP manifesto.
235
236 pl 61.jcn4
237         - mi2mu -p -s16 fugua2.midi getting better!
238           plus factor 2 mi2mu speedup (fugue2.midi 5.50user)
239         - bf: Duration_convert quantify threshold down
240         - bf: (on quantify): tcols quantified; no silly voices
241
242 pl 61.jcn3
243         - lily parsing speedup: backup rules for lexer.l
244         - bf: mi2mu, using midi_voice list...
245
246 pl 61.jcn2
247         - all in all mi2mu speedup of about factor 8 since pl61
248          (fugue.midi 82.72user to 10.30user on a 586.133)
249          what about lily?
250         - binary search on track-columns
251         - mi2mu IP*list to Array (implications?!) conversion
252         - mi2mu parsing speedup: backup rules for midi-lexer.l
253         - bf: zero denominator
254
255 **********
256 may 14 
257 pl 62
258         - make clean bf: remove lex & yacc files too 
259         - added kludge in case measure too long 
260         - added kludge in case of unconnected columns.
261         - kludged columns get error marker
262         - kludged lines get error marker
263
264
265 pl 61.jcn1
266         - smarter + faster duration-convert using Array
267         - bf: mi2mu compilation/duration-conversions
268         - lots faster mi2mu, hopefully does type 1 too...
269 pl 60.jcn1
270         - mi2mu handles non-quantified rests, try mi2mu -b wtk-i/fugue2.midi
271
272
273         
274 **********
275 pl 61
276         - scales.ly bugfix: dimensions default to ((0,0), (0,0))
277         - naming: PointerList->Pointer_list
278         - tied notes don't get accidental
279         - bf: crescendo size
280         - fixes: make_patch,
281         - bf: _"text" direction
282         - mailing list into lilypond.pod
283
284 pl 60.mb
285         - set_flower_debug: Warning if -d is used when NPRINT is defined.
286         - Fixed several TeX details. vcenter renamed since it interfered
287           with LaTeX. Position of accents changed.
288         - New example; scripts.ly
289         - table_sixteen: added scriptdefinition (Lilypond breaks if a
290           script is defined without dimensions).
291         - bf: ifndef typos in p-score.cc, choleski.cc
292         - bf: Slur::do_post_processing(), whole notes caused SIGSEGV.
293
294 (ascension break :-)
295 *******
296 pl 57.jcn4
297         - mi2mu handles rests (quantified only)
298         - fixed configure buglet
299         - "!date" Fri May  2 02:18:12 MET DST 1997
300
301 pl 60
302         - Request_register::get_feature(), tie direction, Slur direction
303         - lilypond output is now directly texable. 
304         - make_website checks return status
305
306 *******
307 may 5
308 pl 59
309         - Slur now into voicegroups, and take stems into account.
310         - bf: rest size in table.
311         - split Slur in baseclass Bow
312         - Tie, Tie_req, Tie_register
313
314 ******
315 may 2
316 pl 58.jcn1
317         - bf: toccata-fuga-E.ly
318
319 pl 57.jcn4
320         - mi2mu handles rests (quantified only)
321         - fixed configure buglet
322         - "!date" Fri May  2 02:18:12 MET DST 1997
323  
324 pl 58
325         - lexer cleanup
326         - national chars in lyrics
327         - \stem 2; bf
328         - long comments: %{ %} 
329         - *.ini mode bf
330         - bf: partial may be everywhere
331         - bf: meterchange not at start of measure
332         - some doc updates
333         - bf: stem too long if stem is down.
334
335 pl 57.jcn3
336         - dank je schat, voor wtk-i
337         - mi2mu tries to handle rests
338         - "!date" Thu May  1 02:34:04 MET DST 1997
339         - maak je het niet te laat schat?
340           XXXX HWN
341
342 pl 57.jcn2
343         - small toccata-fuga-E.ly fixes
344         - \bar "||"; is now doublebar, "|." is finishbar
345         - collision hshift fix, with on-line assistance
346 ******
347 pl 57
348         - lots of TODO doco
349         - text alignment bugfix
350         - bugfix Voice_group_regs::get_register_p() now is actually called too
351         - bugfix init  of Text_item::pos_i_
352
353 pl 56.jcn1
354         - toccata-fuga-in-E.ly, excerpts with real-life collisions
355         - \{l,r}{b,f}{toe,heel} --- using cmsy fonts...
356         - pedal.ly 
357
358 pl 55.jcn1
359         - mi2mu man page
360         - make doc fixlet
361         - \[lr]heel \[lr]toe scripts (happy pedal studies, pa)
362         - lyric with width
363         - removal of some example files
364
365 pl 56.mb:
366         - last duration fix
367         - makefile fixes
368         - space rest
369         - swedish note name update
370
371 ******
372 pl 56
373         - Massive Rest/Stem/Collision/Note_column rewrite: resolve
374 notehead/rest ambiguities and bugs. eg, [c8 r8 c8] 
375
376 pl 54.jcn1
377         - standchen.ly: repeats; lyricii to end
378         - convert-mudela: help + usage
379         - fixed midi key/meter-change (triggered by martien.ly) bug
380
381 ******
382 April 23
383 pl 55
384         - staff-side robustification
385         - script-on-rest bug
386         - doc update
387         - transpose syntax
388 ******
389 pl 54
390         - bugfix Colhpos.cc::OK assert fail.
391         - Inclusion of MusixTeX MF files, 
392         - detection of MF dir
393 pl 53.hwn
394         - stacked lyrics 
395         - configure/make buglets.
396 ******
397 pl 53
398         - spurious accidental bug.
399         - simultaneity check.
400         - added AUTHORS.pod
401         - convert-mudela auto from guess
402         - include -> \include
403         - change order of opening parse/init file 
404         - Pulk_voice, Pulk_voices
405         - Request_column
406         - revised request-from-voice extraction. Now much faster
407
408 ******
409 april 17
410 pl 52
411         - Buildroot RPM
412         - tex-prefix and tex-dir sep'd (here you are jan)
413         - convert-mudela framework
414         - Collision_register, Collision
415         - \hshift 1; input
416         - Features changed
417 pl 50.jcn1
418         - LILYINCLUDE dir searched before DIR_DATADIR(?)
419         - lily reads from stdin again (but does not now when to stop)
420 ******
421 pl 51
422         - transposition bugfix + doco
423         - LilyPond -> GNU LilyPond
424         - bugfixes for Staff_side and Note_column*
425         - wohltemperirt: complete
426
427 ******
428 april 11
429
430 pl 50
431         - merge rest / notehead.
432         - Staff_side as a base class for most "staff-side" symbols.
433         - version check
434         - Note_column_register, Note_column
435         - multiple scripts
436
437 ********
438 april 8
439 pl 49.jcn1
440 Bugfix
441         - configure[.in], make/Configure_variables.make.in c++ (=doze fix)
442         - "configure; make" ok for doze, win32 target may be removed now
443         - win32/gcc 2.7.2 compile fixes -- why does this all compile 
444             (without warnings, why can-t i even trigger warnings) under 
445             linux/gcc-2.7.2.1?  it's quite a tedious job fixing this 
446             shit _on doze_ all the time.
447             * fixed #includes global-regs.cc, staff-info.cc, staff.cc
448             * key.hh:Key() -> Octave_key()
449             * added missing lily/include/input.hh: Input( Input const& )
450         
451 pl 49
452         - lsm template
453         - clef in cadenza mode.
454         - notename clear
455         - \command bla; for \meter, \clef, \octave etc.
456 *******
457 pl 48
458         - notenames init
459         - Duration order -> grouping
460         - broken key s
461         - default octave
462
463 ******
464 april 3
465 pl 47
466         - dynamic flowerlib
467         - Input mods: now use Source_file iso Sources
468         - makefile lib deps restructured
469         - make_website now produces in out/
470
471 pl 46
472         - examples.pod
473         - LILYINCLUDE env var.
474         - push/popgroup
475         - website updated
476         - Swallow_register
477         - Lyric_register.
478         - Staff_sym_register
479         - user settable register config
480         - struct Input now used iso defined_ch_C_
481         - Walker_registers and Staff_registers separated
482         - dynamic-reg -> hairpins
483
484 pl 44.jcn2
485         - doze configure/compile fixes
486         - doze make refixed
487         - faq
488         - install mudela manpage too
489         - RedHat spec lilypond.spec fixed
490         - target: rpm (make RedHat packages)
491
492 ******
493 Mar 26
494 pl 45
495         - Removing unused Voice_regs & Voice_groups
496         - -O2 bugfix
497
498 pl 44.jcn1
499         - merged 42.3 42.jcn4 code trees (see stuff below)
500         - moving towards Mudela 0.1 (again)
501             * keyword "music" dropped for horizontal music
502             * keywords "\lyric" "\melodic" introduced, e.g.:
503                 melody = \melodic { c c | g g }
504             * removed level of indirection:
505                 - staff initialisable with music identifier list: 
506                     \staff{ global melody }
507                 - \score and staffs alike
508         - gnu standard(?) help texts
509         - configure "creates" toplevel Makefile from make/Toplevel.make
510
511 Bugfix
512         - fixed mi2mu
513         - write meter to track0 too...
514         - default octave
515         - new Sources in My_midi_lexer: sourcefile_p_ = get_file_l(): oeps.
516           (ain-t hungarian grand?)
517
518 Examples
519         - updated for mudela 0.1
520
521 ******
522 pl 44
523         - naming: _c_l -> _C
524         - pure parser, My_lily_parser
525         - ''a iso ``a
526         - Includable_lexer
527         - junk Input_file
528         - Duration in parser, Duration restructuring
529         - grandiose lexer hax. Flex should be fixed, really.
530         Lexer much faster now.
531         - opps. mi2mu broken
532
533 ******
534 pl 43
535         - transposition.
536         - $variable&@name 
537         - warnings if incorrect mode
538         - missing scsii measure
539         - declaration used check.
540         -
541
542 pl 42.jcn4
543         - lily writes midi meter/key changes from requests
544         - mi2mu: 
545           + write mudela 0.1
546           + write bar change requests
547           + more tunable quantisation
548
549 Examples
550         - half-new-menuetto.ly converted to mudela -almost- 0.1
551         - new mi2mu of bach's wtk pre1/fugue1
552
553 pl 42.3 (jcn version)
554         - oeps, branched source tree
555
556 pl 42.hwn3
557         - const naming change (T const <-> const T)
558         - Mudela 0.1 (roughly the same as below..)
559
560 pl 42.3
561         - moving towards Mudela 0.1:
562             * all keywords must be preceded by backslash '\'
563             * explicit lexer switches '$' and '@' dropped
564             * keyword "music" dropped for horizontal music
565             * keywords "\lyric" " introduced, e.g.:
566                 melody = \melodic { c c | g g }
567             * staff initialisable with music identifier: 
568                 \staff{ melody }
569             * chords: < c e >
570             * octavate ''c`` 
571             * \meter{ 2/4 }
572             * \octave{ ''`` }
573          - configure sets CXX (to c++, commonly)
574 Internal
575         - renamed lexer.hh, mylexer.cc My_flex_lexer to my.lily.lexer.*
576
577 pl 42.2
578         - new lilyinput (Mudela 0.1) doc.
579 Examples
580         - new-twinkle.ly (in Mudela 0.1, hopefully)
581
582 pl 42.1
583         - further Makefile revamping.
584         - moved flowerlib
585
586 *******
587 pl 42
588
589
590 pl 41.hwn3
591         - struct Lexer_prefs
592         - parser bug
593         - make uninstall
594
595 pl 41.hwn2
596         - make file rehack
597         - spec update
598         - make install
599         - detect TeX directory
600
601 pl 41.hwn1
602         - cygnus configure,
603         - updated versioning 
604         - install.pod
605   
606 pl 41.jn1
607 Bugfix
608         - doze compile
609 *******
610 pl 41
611         - release
612 pl 40.3
613         - all of the above
614         - hw's configure.in
615         - p-name.xx fixes
616
617 pl 40.hwn1
618         - hairpin dynamics
619         - notename now as identifier. Parser/lexer cleanup
620
621 pl 40.2
622         - mi2mu --blonde-durations, --no-silly options.
623         - mi2mu starts to look promising, see examples
624 Examples
625         - pre1.midi.ly, fugue.midi.ly
626 Internal
627         - Duration handles blonde midi-durations
628         - More settings for Duration_convert
629         - lily writes meter too (ugh, howto?)
630 Bugfix
631         - mi2mu auto track number fix
632         - mi2mu / lily Midi_tempo fixed/added
633
634 pl 40.1
635 Bugfix
636         - lily midi output track 0 name
637         - mi2mu tempo fixed
638         - make out/make and out/make/Site.make in configure script!
639         - mi2mu double newline fix
640
641
642 ******
643 Mar 11
644 pl 40
645         - release
646
647 pl 39-5
648         - own versioning for mi2mu: 0.0.10
649         - some file renaming mi2mu
650 pl 39-4
651         - all of the above
652
653 pl 39-hwn2
654         - last bar bugfix
655 Internal
656         - simple dynamics
657         - experimental RPM spec.
658         - doco update.
659
660 pl 39-3
661         - all of the above
662         - m2m renamed to mi2mu
663         - better line breaking in mi2mu
664         - (somewhat broken) progress indicator for mi2mu 
665         - mi2mu output === lily input (in names and durations,
666           always assuming voices > 1 though)
667
668 Bugfix
669         - midi: note on/off only once per pitch per track 
670           (sending all note-on events introduces cool mi2mu feature)
671         - make clean removes deps too
672         - mi2mu notename/accidental/octave, and key fixed
673
674 Internal
675         - auto create of out-dirs, config headers, using tag file .GENERATE
676
677 Examples
678         - stanchen.ly debugged
679
680 pl 39-2
681         - configure script help and in topdir again, duh.
682         - auto configure upon virgin make
683         - configured makefile stuff in make/out/
684
685
686 ********
687 pl 39-1
688         - doze target (for 16 bit dos xcompiler: gcc-go32)
689 Internal
690         - make/User.make; C..FLAGS sorted out
691 Bugfix
692         - make clean...
693
694 pl 39
695         - new make structure, featuring:
696             * top-level/sub-level build
697             * auto custom-library dependencies/build
698             * top-level/sub-level dist
699             * minimal(? can even smaller) specific Makefiles
700             * which makes for simple lib/exe module split (make/Template.make)
701             * integrated flowerlib
702             * all stuff into subbirs (make/Stuff.make)
703             * all headers into <module>/include dirs (make/Include.make)
704             * all output into <module>/out (executables into bin/)
705             * more make features, like make config, make help
706             * small lily lib
707             * lilypond-x.x.x/.version for toplevel lily version
708             * lilypond-x.x.x/<module>/.version for <module> version (eg: flower)
709             * versioning using additional optional MY_PATCH_LEVEL 
710                 for easy make_patch
711
712         - bin/cptogen
713
714 Internal
715         - generic m2m header: m2m.hh
716
717 Bugfix
718         - small fixes, make, dist, configure
719
720 pl 38-5
721         - all of the below, e.g. new filenames and new makefile 
722           structure patches merged
723 ******
724 pl 38
725
726 Internal
727         - great filename renaming operation with - convention.
728         - printing methods for paper_def/lookup/symtab(s)
729         - untied all registers from complexwalker. Now registers are
730 intrinsically hierarchical. All walker communication is done via a
731 "top level" register.
732
733 pl 37-3
734         - m2m handles voices
735         - instrument, track_name, copyright/left stuff for m2m/ly
736
737 Internal
738         - Midi_voice
739
740 pl 37-1
741         - text, key, tempo event in midi output/ly input
742
743 Internal
744         - simple makefile structure, allows for multiple projects
745
746 ******
747 pl 37
748
749
750 Documentation
751         - language.pod as starting point for mudela devel.
752
753         - Jan's patches:
754 Features
755         - m2m patchy --no-triplet option;
756           lilypond accepts m2m's real midi output (hand-add red tape)
757         - m2m output only valid durations, resync option wip
758         - m2m produces .ly output
759 Internal
760         - simpler and better naming for Duration*
761         - the great String renaming / index to base=0 change
762         - Track_column, Lily_stream
763         - Duration, Plet, Duration_convert taking load off duration calc.
764 Bugfix
765         - m2m duration calc
766
767
768
769 ******
770 pl 36
771         - Jan's patches:
772         - do MIDI rests cleanly.
773         - lily/m2m: time and tempo fixed for metric timing
774 Internal
775         - Midi_tempo
776         - m2m parses more midi stuff (all of bach-wtc); timing??
777         - m2m recognises some commandline options
778 Examples
779         - fixed midi.ly
780
781 *******
782 Feb 25
783 pl 35
784         - Register_group
785 Bugfix
786         - alignment of breakable items.
787
788 *******
789 pl 34
790         - better midi syntax.
791         - --midi,-M option.
792         - preliminary midi2mudela (/mudela2midi) converter: m2m (JCN)
793 Internal
794         - m2m sources: midi-*; (JCN)
795         - new Midi_walker, fixes several MIDI bugs.
796         - junked Midi_staff, Staff_column children, Midi_walker
797         - Midi_output
798
799 pl 33-1
800         - m2m parses midi
801 Internal
802         - Binary_source_file
803         - Source_file::error_str simplified
804 *******
805 pl33
806 Examples
807         - Swedish notenames (MB)
808
809 pl pre33-2
810
811 Bugfix
812         - midi pitch
813         
814 Features
815         - Jan's patches, see below
816 Bugfix
817         - some midi bugfixes.
818
819 pl pre33-1 (JCN)
820
821
822         - midi output using pitches iso notename
823 Examples
824         - added midi output (some midi output files broken?)
825         - all melodic fixed (except for error.ly:-) 
826         - midi.ly
827 Bugfix
828         - midiwalker line break
829         - empty/nonexistent include at top of ly
830         - midi #tracks
831         - midi pitch c0
832         - midi poor man-s staff dynamics
833 Internal
834         - Midi_column, Midi_staff, Midi_walker
835
836 pl pre33 (JCN)
837         - Jan's patches, see below
838
839 Features
840         - simple plet notation (JCN)
841         - lyrics centred, but no fully suppored? (JCN)
842 Internal
843         - Midi_stream 
844         - Mididef
845         - Midi_item, Midi_pitch, Midi_duration
846         - Midi_chunk, Midi_header, Midi_track
847         - preparations for midi output 
848         - no exit upon context error (JCN)
849         - converted some "warnings" to errors; no output (JCN)
850 Bugfix:
851         - simple plet bugfix
852 Examples
853         - updated standchen, menuetto (JCN)
854         - new plet notation (JCN)
855         - plet.ly (parse and spacing tests) (JCN)
856
857 *******
858 pl 32
859 Features
860         - multiple meters, see rhythm.ly
861         - skip syntax/Skip_req
862         - score_wide_music: commands in staff now override commands in score.
863 Internal:
864         - command carnage
865         - Key_register
866         - Bar_register
867         - Meter_register
868         - meters now kept in baseclass Staff_walker
869         - Score_walker (to ease MIDI output)
870 Doc:
871         - Hungarian doco added to CodingStyle
872
873 pl 32-1
874         - music processing speedup
875         - website added to doco
876         - clef must *inside* music
877         - fixed spurious "beam too narrow" messages.
878 Internal:
879         - merge musical / non-musical staff_column
880         - musical/ non-musical requests
881         - Clef_register
882         - split up request.hh, Musical_req vs. Nonmusical_req
883 *******
884 pl 31
885
886 Examples
887         - Coriolan example (JN)
888         - standchen updated
889 Bugfix
890         - calcideal assertion bugfix
891 *******
892 Feb 12 13:55
893 pl 30
894
895 Features
896         - better multivoice spacing
897         - move rest in multivoice staff
898         - errors in TeX output now warnings
899         - progress indicator
900         - music processing speedup.
901 Internal
902         - make spanner for staffsym; scrap Line_pstaff
903         - scrap simplestaff (Rhythmic_staff temporarily disabled)
904         - docxx 3.0 format comments
905         - split register source files
906         - hardcoded dimensions compile time
907         - Lookup::tex_hairpin
908 Bugfix
909         - non G-clef clefs
910         - script junking (2x)
911         - empty files
912         - beam::center (plet position!)
913         
914 pl 29
915         - multiplatform Makefile (JN)
916         - context errors: bugfixes (JN)
917 *******
918 pl 28
919
920 Internal
921         - idealspacing slightly better for multivoice.
922 Doc
923         - Request_register
924 Bugfix
925         - Script.cc : float exception (MB)
926         - Request::Request(Request) copying of definition pointer (JN)
927         - cleaned dependencies for broken spanners
928         - stupid typo in Staff_elem::post_processing()
929         - init of hpos in PCol::PCol
930         - Word_wrap::solve() bug 
931 *******
932 pl 27
933         - preliminary WIN32 support (JN)
934 Features
935         - errors converted to warnings (JN)
936         - context errors (JN)
937         - As vs. as  notename.
938         - WARNING: "melodic" stafftype will create the new Complex_staff!
939 Examples
940         - Lohman's Viola Quartet (JN)
941         - JS Bach Solo Cello suite II menuet (JN)
942
943
944 pl pre27
945
946 Features        
947         - option --init
948         - last_duration_mode: default_duration is last duration entered
949         (\duration{\last})
950         - syntax: grouping 2*4 3*8
951         - preliminary multivoice support
952 Examples
953         - JS Bach's WTK example added.
954
955 Internal:
956         - Text_reg and Script_reg
957 *******
958 pl 26
959         - Documentation/lelie_logo.png
960         - 8-bit chars for input (see ltest.tex) (MB)
961         - quotes around string now optional
962 Bugfixes:
963         - unmatched ] (MB)
964 Internal:
965         - print/name methods of Staff_elem
966         - added Request_register
967         - Voice_group_registers, Voice_registers, *_register
968         - Complex_staff
969 *******
970  Jan 27 '97 
971 pl 25
972         - other clefs added, keys typeset properly (MB)
973
974 *******
975 pl 24:
976         - Lyrics (JCN)
977         - Commands in music-mode (an input feature) (there you are, Mats)
978
979 *******
980 pl 23:
981         - TODO file inc'd
982         - cadenza mode.
983         - default extension, search path.
984         - error.pod,faq.pod
985         - Markers
986         - configure script
987         - inputfile name in output.
988 Internal changes:
989         - scrapped VPATH
990         - Make dependencies per .o
991         - Split Input_* parsing steps to enable marking 
992 Bugfixes:
993         - unconnected columns
994
995
996 *******
997 pl 22:
998         - doco from mpp
999         - repeat signs
1000         - | checks for bar in a voice (Barcheck_req)
1001 Internal changes:
1002         - naming (Hungarian notation, svec vs. Array)
1003         - cleanup PScore, Score
1004         - removed Staff_commands, plugging commands into Staff_column directly
1005 Bugfixes:
1006         - bug noteheadswap
1007         - huge memleak fixed; unearthed lots of bugs
1008
1009 *******
1010 pl 21:
1011         - scripts
1012         - texts
1013         - nplets (triplets!)
1014 Internal changes:
1015         - Move breaking stuff into a separate class Break_algorithm
1016         - dependencies for Staff_elem's
1017
1018 *******
1019 Dec 23 
1020 pl 20: 
1021         - updated doco to .pod
1022         - include files from .ly
1023 Internal changes:
1024         - Rational for time measurement
1025         - directionalspanner/textspanner
1026
1027 *******
1028 pl 19:
1029         - grouping code: LilyPond can set advanced multibeams.
1030 Internal changes:
1031         - struct Moment
1032
1033 *******
1034
1035 pl 18:
1036         - robust Staff_commands
1037
1038 *******
1039 pl 17:
1040         - robust Input_commands
1041         - merged Vertical_/Horizontal music
1042         - PARTIALs with duration
1043         - modularized lexer: multiple runs
1044
1045 *******
1046 pl 16
1047         - notenames configurable
1048
1049 *******
1050 pl 15
1051         - grouping code
1052         - multibeams (simple)
1053
1054 *******
1055 pl 14
1056         - symtables from .ly
1057         - Input_command
1058         - Input_{score/staff}
1059
1060 *******
1061 Dec  2 
1062 pl 13
1063         - Horizontal/Vertical music
1064         - Input_commands