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