lilypond-0.0.63
[lilypond.git] / NEWS
blobaafcdc5d14a7257891f2737e6a2dc32990842385
1 pl 61.jnc1
2         - smarter + faster duration-convert using Array
3         - bf: mi2mu compilation/duration-conversions
4         - lots faster mi2mu, hopefully does type 1 too...
5 pl 60.jnc1
6         - mi2mu handles non-quantified rests, try mi2mu -b wtk-i/fugue2.midi
9 pl 62
10         - make clean bf: remove lex & yacc files too 
11         - added kludge in case measure too long 
12         - added kludge in case of unconnected columns.
13         - kludged columns get error marker
14         - kludged lines get error marker
15         
16 **********
17 may 14 
18 pl 61
19         - scales.ly bugfix: dimensions default to ((0,0), (0,0))
20         - naming: PointerList->Pointer_list
21         - tied notes don't get accidental
22         - bf: crescendo size
23         - fixes: make_patch,
24         - bf: _"text" direction
25         - mailing list into lilypond.pod
27 pl 60.mb
28         - set_flower_debug: Warning if -d is used when NPRINT is defined.
29         - Fixed several TeX details. vcenter renamed since it interfered
30           with LaTeX. Position of accents changed.
31         - New example; scripts.ly
32         - table_sixteen: added scriptdefinition (Lilypond breaks if a
33           script is defined without dimensions).
34         - bf: ifndef typos in p-score.cc, choleski.cc
35         - bf: Slur::do_post_processing(), whole notes caused SIGSEGV.
37 (ascension break :-)
38 *******
39 pl 57.jcn4
40         - mi2mu handles rests (quantified only)
41         - fixed configure buglet
42         - "!date" Fri May  2 02:18:12 MET DST 1997
44 pl 60
45         - Request_register::get_feature(), tie direction, Slur direction
46         - lilypond output is now directly texable. 
47         - make_website checks return status
49 *******
50 may 5
51 pl 59
52         - Slur now into voicegroups, and take stems into account.
53         - bf: rest size in table.
54         - split Slur in baseclass Bow
55         - Tie, Tie_req, Tie_register
57 ******
58 may 2
59 pl 58.jnc1
60         - bf: toccata-fuga-E.ly
62 pl 57.jcn4
63         - mi2mu handles rests (quantified only)
64         - fixed configure buglet
65         - "!date" Fri May  2 02:18:12 MET DST 1997
67 pl 58
68         - lexer cleanup
69         - national chars in lyrics
70         - \stem 2; bf
71         - long comments: %{ %} 
72         - *.ini mode bf
73         - bf: partial may be everywhere
74         - bf: meterchange not at start of measure
75         - some doc updates
76         - bf: stem too long if stem is down.
78 pl 57.jcn3
79         - dank je schat, voor wtk-i
80         - mi2mu tries to handle rests
81         - "!date" Thu May  1 02:34:04 MET DST 1997
82         - maak je het niet te laat schat?
83           XXXX HWN
85 pl 57.jcn2
86         - small toccata-fuga-E.ly fixes
87         - \bar "||"; is now doublebar, "|." is finishbar
88         - collision hshift fix, with on-line assistance
89 ******
90 pl 57
91         - lots of TODO doco
92         - text alignment bugfix
93         - bugfix Voice_group_regs::get_register_p() now is actually called too
94         - bugfix init  of Text_item::pos_i_
96 pl 56.jnc1
97         - toccata-fuga-in-E.ly, excerpts with real-life collisions
98         - \{l,r}{b,f}{toe,heel} --- using cmsy fonts...
99         - pedal.ly 
101 pl 55.jcn1
102         - mi2mu man page
103         - make doc fixlet
104         - \[lr]heel \[lr]toe scripts (happy pedal studies, pa)
105         - lyric with width
106         - removal of some example files
108 pl 56.mb:
109         - last duration fix
110         - makefile fixes
111         - space rest
112         - swedish note name update
114 ******
115 pl 56
116         - Massive Rest/Stem/Collision/Note_column rewrite: resolve
117 notehead/rest ambiguities and bugs. eg, [c8 r8 c8] 
119 pl 54.jnc1
120         - standchen.ly: repeats; lyricii to end
121         - convert-mudela: help + usage
122         - fixed midi key/meter-change (triggered by martien.ly) bug
124 ******
125 April 23
126 pl 55
127         - staff-side robustification
128         - script-on-rest bug
129         - doc update
130         - transpose syntax
131 ******
132 pl 54
133         - bugfix Colhpos.cc::OK assert fail.
134         - Inclusion of MusixTeX MF files, 
135         - detection of MF dir
136 pl 53.hwn
137         - stacked lyrics 
138         - configure/make buglets.
139 ******
140 pl 53
141         - spurious accidental bug.
142         - simultaneity check.
143         - added AUTHORS.pod
144         - convert-mudela auto from guess
145         - include -> \include
146         - change order of opening parse/init file 
147         - Pulk_voice, Pulk_voices
148         - Request_column
149         - revised request-from-voice extraction. Now much faster
151 ******
152 april 17
153 pl 52
154         - Buildroot RPM
155         - tex-prefix and tex-dir sep'd (here you are jan)
156         - convert-mudela framework
157         - Collision_register, Collision
158         - \hshift 1; input
159         - Features changed
160 pl 50.jcn1
161         - LILYINCLUDE dir searched before DIR_DATADIR(?)
162         - lily reads from stdin again (but does not now when to stop)
163 ******
164 pl 51
165         - transposition bugfix + doco
166         - LilyPond -> GNU LilyPond
167         - bugfixes for Staff_side and Note_column*
168         - wohltemperirt: complete
170 ******
171 april 11
173 pl 50
174         - merge rest / notehead.
175         - Staff_side as a base class for most "staff-side" symbols.
176         - version check
177         - Note_column_register, Note_column
178         - multiple scripts
180 ********
181 april 8
182 pl 49.jcn1
183 Bugfix
184         - configure[.in], make/Configure_variables.make.in c++ (=doze fix)
185         - "configure; make" ok for doze, win32 target may be removed now
186         - win32/gcc 2.7.2 compile fixes -- why does this all compile 
187             (without warnings, why can-t i even trigger warnings) under 
188             linux/gcc-2.7.2.1?  it's quite a tedious job fixing this 
189             shit _on doze_ all the time.
190             * fixed #includes global-regs.cc, staff-info.cc, staff.cc
191             * key.hh:Key() -> Octave_key()
192             * added missing lily/include/input.hh: Input( Input const& )
193         
194 pl 49
195         - lsm template
196         - clef in cadenza mode.
197         - notename clear
198         - \command bla; for \meter, \clef, \octave etc.
199 *******
200 pl 48
201         - notenames init
202         - Duration order -> grouping
203         - broken key s
204         - default octave
206 ******
207 april 3
208 pl 47
209         - dynamic flowerlib
210         - Input mods: now use Source_file iso Sources
211         - makefile lib deps restructured
212         - make_website now produces in out/
214 pl 46
215         - examples.pod
216         - LILYINCLUDE env var.
217         - push/popgroup
218         - website updated
219         - Swallow_register
220         - Lyric_register.
221         - Staff_sym_register
222         - user settable register config
223         - struct Input now used iso defined_ch_C_
224         - Walker_registers and Staff_registers separated
225         - dynamic-reg -> hairpins
227 pl 44.jcn2
228         - doze configure/compile fixes
229         - doze make refixed
230         - faq
231         - install mudela manpage too
232         - RedHat spec lilypond.spec fixed
233         - target: rpm (make RedHat packages)
235 ******
236 Mar 26
237 pl 45
238         - Removing unused Voice_regs & Voice_groups
239         - -O2 bugfix
241 pl 44.jcn1
242         - merged 42.3 42.jcn4 code trees (see stuff below)
243         - moving towards Mudela 0.1 (again)
244             * keyword "music" dropped for horizontal music
245             * keywords "\lyric" "\melodic" introduced, e.g.:
246                 melody = \melodic { c c | g g }
247             * removed level of indirection:
248                 - staff initialisable with music identifier list: 
249                     \staff{ global melody }
250                 - \score and staffs alike
251         - gnu standard(?) help texts
252         - configure "creates" toplevel Makefile from make/Toplevel.make
254 Bugfix
255         - fixed mi2mu
256         - write meter to track0 too...
257         - default octave
258         - new Sources in My_midi_lexer: sourcefile_p_ = get_file_l(): oeps.
259           (ain-t hungarian grand?)
261 Examples
262         - updated for mudela 0.1
264 ******
265 pl 44
266         - naming: _c_l -> _C
267         - pure parser, My_lily_parser
268         - ''a iso ``a
269         - Includable_lexer
270         - junk Input_file
271         - Duration in parser, Duration restructuring
272         - grandiose lexer hax. Flex should be fixed, really.
273         Lexer much faster now.
274         - opps. mi2mu broken
276 ******
277 pl 43
278         - transposition.
279         - $variable&@name 
280         - warnings if incorrect mode
281         - missing scsii measure
282         - declaration used check.
283         -
285 pl 42.jcn4
286         - lily writes midi meter/key changes from requests
287         - mi2mu: 
288           + write mudela 0.1
289           + write bar change requests
290           + more tunable quantisation
292 Examples
293         - half-new-menuetto.ly converted to mudela -almost- 0.1
294         - new mi2mu of bach's wtk pre1/fugue1
296 pl 42.3 (jcn version)
297         - oeps, branched source tree
299 pl 42.hwn3
300         - const naming change (T const <-> const T)
301         - Mudela 0.1 (roughly the same as below..)
303 pl 42.3
304         - moving towards Mudela 0.1:
305             * all keywords must be preceded by backslash '\'
306             * explicit lexer switches '$' and '@' dropped
307             * keyword "music" dropped for horizontal music
308             * keywords "\lyric" " introduced, e.g.:
309                 melody = \melodic { c c | g g }
310             * staff initialisable with music identifier: 
311                 \staff{ melody }
312             * chords: < c e >
313             * octavate ''c`` 
314             * \meter{ 2/4 }
315             * \octave{ ''`` }
316          - configure sets CXX (to c++, commonly)
317 Internal
318         - renamed lexer.hh, mylexer.cc My_flex_lexer to my.lily.lexer.*
320 pl 42.2
321         - new lilyinput (Mudela 0.1) doc.
322 Examples
323         - new-twinkle.ly (in Mudela 0.1, hopefully)
325 pl 42.1
326         - further Makefile revamping.
327         - moved flowerlib
329 *******
330 pl 42
333 pl 41.hwn3
334         - struct Lexer_prefs
335         - parser bug
336         - make uninstall
338 pl 41.hwn2
339         - make file rehack
340         - spec update
341         - make install
342         - detect TeX directory
344 pl 41.hwn1
345         - cygnus configure,
346         - updated versioning 
347         - install.pod
348   
349 pl 41.jn1
350 Bugfix
351         - doze compile
352 *******
353 pl 41
354         - release
355 pl 40.3
356         - all of the above
357         - hw's configure.in
358         - p-name.xx fixes
360 pl 40.hwn1
361         - hairpin dynamics
362         - notename now as identifier. Parser/lexer cleanup
364 pl 40.2
365         - mi2mu --blonde-durations, --no-silly options.
366         - mi2mu starts to look promising, see examples
367 Examples
368         - pre1.midi.ly, fugue.midi.ly
369 Internal
370         - Duration handles blonde midi-durations
371         - More settings for Duration_convert
372         - lily writes meter too (ugh, howto?)
373 Bugfix
374         - mi2mu auto track number fix
375         - mi2mu / lily Midi_tempo fixed/added
377 pl 40.1
378 Bugfix
379         - lily midi output track 0 name
380         - mi2mu tempo fixed
381         - make out/make and out/make/Site.make in configure script!
382         - mi2mu double newline fix
385 ******
386 Mar 11
387 pl 40
388         - release
390 pl 39-5
391         - own versioning for mi2mu: 0.0.10
392         - some file renaming mi2mu
393 pl 39-4
394         - all of the above
396 pl 39-hwn2
397         - last bar bugfix
398 Internal
399         - simple dynamics
400         - experimental RPM spec.
401         - doco update.
403 pl 39-3
404         - all of the above
405         - m2m renamed to mi2mu
406         - better line breaking in mi2mu
407         - (somewhat broken) progress indicator for mi2mu 
408         - mi2mu output === lily input (in names and durations,
409           always assuming voices > 1 though)
411 Bugfix
412         - midi: note on/off only once per pitch per track 
413           (sending all note-on events introduces cool mi2mu feature)
414         - make clean removes deps too
415         - mi2mu notename/accidental/octave, and key fixed
417 Internal
418         - auto create of out-dirs, config headers, using tag file .GENERATE
420 Examples
421         - stanchen.ly debugged
423 pl 39-2
424         - configure script help and in topdir again, duh.
425         - auto configure upon virgin make
426         - configured makefile stuff in make/out/
429 ********
430 pl 39-1
431         - doze target (for 16 bit dos xcompiler: gcc-go32)
432 Internal
433         - make/User.make; C..FLAGS sorted out
434 Bugfix
435         - make clean...
437 pl 39
438         - new make structure, featuring:
439             * top-level/sub-level build
440             * auto custom-library dependencies/build
441             * top-level/sub-level dist
442             * minimal(? can even smaller) specific Makefiles
443             * which makes for simple lib/exe module split (make/Template.make)
444             * integrated flowerlib
445             * all stuff into subbirs (make/Stuff.make)
446             * all headers into <module>/include dirs (make/Include.make)
447             * all output into <module>/out (executables into bin/)
448             * more make features, like make config, make help
449             * small lily lib
450             * lilypond-x.x.x/.version for toplevel lily version
451             * lilypond-x.x.x/<module>/.version for <module> version (eg: flower)
452             * versioning using additional optional MY_PATCH_LEVEL 
453                 for easy make_patch
455         - bin/cptogen
457 Internal
458         - generic m2m header: m2m.hh
460 Bugfix
461         - small fixes, make, dist, configure
463 pl 38-5
464         - all of the below, e.g. new filenames and new makefile 
465           structure patches merged
466 ******
467 pl 38
469 Internal
470         - great filename renaming operation with - convention.
471         - printing methods for paper_def/lookup/symtab(s)
472         - untied all registers from complexwalker. Now registers are
473 intrinsically hierarchical. All walker communication is done via a
474 "top level" register.
476 pl 37-3
477         - m2m handles voices
478         - instrument, track_name, copyright/left stuff for m2m/ly
480 Internal
481         - Midi_voice
483 pl 37-1
484         - text, key, tempo event in midi output/ly input
486 Internal
487         - simple makefile structure, allows for multiple projects
489 ******
490 pl 37
493 Documentation
494         - language.pod as starting point for mudela devel.
496         - Jan's patches:
497 Features
498         - m2m patchy --no-triplet option;
499           lilypond accepts m2m's real midi output (hand-add red tape)
500         - m2m output only valid durations, resync option wip
501         - m2m produces .ly output
502 Internal
503         - simpler and better naming for Duration*
504         - the great String renaming / index to base=0 change
505         - Track_column, Lily_stream
506         - Duration, Plet, Duration_convert taking load off duration calc.
507 Bugfix
508         - m2m duration calc
512 ******
513 pl 36
514         - Jan's patches:
515         - do MIDI rests cleanly.
516         - lily/m2m: time and tempo fixed for metric timing
517 Internal
518         - Midi_tempo
519         - m2m parses more midi stuff (all of bach-wtc); timing??
520         - m2m recognises some commandline options
521 Examples
522         - fixed midi.ly
524 *******
525 Feb 25
526 pl 35
527         - Register_group
528 Bugfix
529         - alignment of breakable items.
531 *******
532 pl 34
533         - better midi syntax.
534         - --midi,-M option.
535         - preliminary midi2mudela (/mudela2midi) converter: m2m (JCN)
536 Internal
537         - m2m sources: midi-*; (JCN)
538         - new Midi_walker, fixes several MIDI bugs.
539         - junked Midi_staff, Staff_column children, Midi_walker
540         - Midi_output
542 pl 33-1
543         - m2m parses midi
544 Internal
545         - Binary_source_file
546         - Source_file::error_str simplified
547 *******
548 pl33
549 Examples
550         - Swedish notenames (MB)
552 pl pre33-2
554 Bugfix
555         - midi pitch
556         
557 Features
558         - Jan's patches, see below
559 Bugfix
560         - some midi bugfixes.
562 pl pre33-1 (JCN)
565         - midi output using pitches iso notename
566 Examples
567         - added midi output (some midi output files broken?)
568         - all melodic fixed (except for error.ly:-) 
569         - midi.ly
570 Bugfix
571         - midiwalker line break
572         - empty/nonexistent include at top of ly
573         - midi #tracks
574         - midi pitch c0
575         - midi poor man-s staff dynamics
576 Internal
577         - Midi_column, Midi_staff, Midi_walker
579 pl pre33 (JCN)
580         - Jan's patches, see below
582 Features
583         - simple plet notation (JCN)
584         - lyrics centred, but no fully suppored? (JCN)
585 Internal
586         - Midi_stream 
587         - Mididef
588         - Midi_item, Midi_pitch, Midi_duration
589         - Midi_chunk, Midi_header, Midi_track
590         - preparations for midi output 
591         - no exit upon context error (JCN)
592         - converted some "warnings" to errors; no output (JCN)
593 Bugfix:
594         - simple plet bugfix
595 Examples
596         - updated standchen, menuetto (JCN)
597         - new plet notation (JCN)
598         - plet.ly (parse and spacing tests) (JCN)
600 *******
601 pl 32
602 Features
603         - multiple meters, see rhythm.ly
604         - skip syntax/Skip_req
605         - score_wide_music: commands in staff now override commands in score.
606 Internal:
607         - command carnage
608         - Key_register
609         - Bar_register
610         - Meter_register
611         - meters now kept in baseclass Staff_walker
612         - Score_walker (to ease MIDI output)
613 Doc:
614         - Hungarian doco added to CodingStyle
616 pl 32-1
617         - music processing speedup
618         - website added to doco
619         - clef must *inside* music
620         - fixed spurious "beam too narrow" messages.
621 Internal:
622         - merge musical / non-musical staff_column
623         - musical/ non-musical requests
624         - Clef_register
625         - split up request.hh, Musical_req vs. Nonmusical_req
626 *******
627 pl 31
629 Examples
630         - Coriolan example (JN)
631         - standchen updated
632 Bugfix
633         - calcideal assertion bugfix
634 *******
635 Feb 12 13:55
636 pl 30
638 Features
639         - better multivoice spacing
640         - move rest in multivoice staff
641         - errors in TeX output now warnings
642         - progress indicator
643         - music processing speedup.
644 Internal
645         - make spanner for staffsym; scrap Line_pstaff
646         - scrap simplestaff (Rhythmic_staff temporarily disabled)
647         - docxx 3.0 format comments
648         - split register source files
649         - hardcoded dimensions compile time
650         - Lookup::tex_hairpin
651 Bugfix
652         - non G-clef clefs
653         - script junking (2x)
654         - empty files
655         - beam::center (plet position!)
656         
657 pl 29
658         - multiplatform Makefile (JN)
659         - context errors: bugfixes (JN)
660 *******
661 pl 28
663 Internal
664         - idealspacing slightly better for multivoice.
666         - Request_register
667 Bugfix
668         - Script.cc : float exception (MB)
669         - Request::Request(Request) copying of definition pointer (JN)
670         - cleaned dependencies for broken spanners
671         - stupid typo in Staff_elem::post_processing()
672         - init of hpos in PCol::PCol
673         - Word_wrap::solve() bug 
674 *******
675 pl 27
676         - preliminary WIN32 support (JN)
677 Features
678         - errors converted to warnings (JN)
679         - context errors (JN)
680         - As vs. as  notename.
681         - WARNING: "melodic" stafftype will create the new Complex_staff!
682 Examples
683         - Lohman's Viola Quartet (JN)
684         - JS Bach Solo Cello suite II menuet (JN)
687 pl pre27
689 Features        
690         - option --init
691         - last_duration_mode: default_duration is last duration entered
692         (\duration{\last})
693         - syntax: grouping 2*4 3*8
694         - preliminary multivoice support
695 Examples
696         - JS Bach's WTK example added.
698 Internal:
699         - Text_reg and Script_reg
700 *******
701 pl 26
702         - Documentation/lelie_logo.png
703         - 8-bit chars for input (see ltest.tex) (MB)
704         - quotes around string now optional
705 Bugfixes:
706         - unmatched ] (MB)
707 Internal:
708         - print/name methods of Staff_elem
709         - added Request_register
710         - Voice_group_registers, Voice_registers, *_register
711         - Complex_staff
712 *******
713  Jan 27 '97 
714 pl 25
715         - other clefs added, keys typeset properly (MB)
717 *******
718 pl 24:
719         - Lyrics (JCN)
720         - Commands in music-mode (an input feature) (there you are, Mats)
722 *******
723 pl 23:
724         - TODO file inc'd
725         - cadenza mode.
726         - default extension, search path.
727         - error.pod,faq.pod
728         - Markers
729         - configure script
730         - inputfile name in output.
731 Internal changes:
732         - scrapped VPATH
733         - Make dependencies per .o
734         - Split Input_* parsing steps to enable marking 
735 Bugfixes:
736         - unconnected columns
739 *******
740 pl 22:
741         - doco from mpp
742         - repeat signs
743         - | checks for bar in a voice (Barcheck_req)
744 Internal changes:
745         - naming (Hungarian notation, svec vs. Array)
746         - cleanup PScore, Score
747         - removed Staff_commands, plugging commands into Staff_column directly
748 Bugfixes:
749         - bug noteheadswap
750         - huge memleak fixed; unearthed lots of bugs
752 *******
753 pl 21:
754         - scripts
755         - texts
756         - nplets (triplets!)
757 Internal changes:
758         - Move breaking stuff into a separate class Break_algorithm
759         - dependencies for Staff_elem's
761 *******
762 Dec 23 
763 pl 20: 
764         - updated doco to .pod
765         - include files from .ly
766 Internal changes:
767         - Rational for time measurement
768         - directionalspanner/textspanner
770 *******
771 pl 19:
772         - grouping code: LilyPond can set advanced multibeams.
773 Internal changes:
774         - struct Moment
776 *******
778 pl 18:
779         - robust Staff_commands
781 *******
782 pl 17:
783         - robust Input_commands
784         - merged Vertical_/Horizontal music
785         - PARTIALs with duration
786         - modularized lexer: multiple runs
788 *******
789 pl 16
790         - notenames configurable
792 *******
793 pl 15
794         - grouping code
795         - multibeams (simple)
797 *******
798 pl 14
799         - symtables from .ly
800         - Input_command
801         - Input_{score/staff}
803 *******
804 Dec  2 
805 pl 13
806         - Horizontal/Vertical music
807         - Input_commands