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