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