[icon]

GNU LilyPond

Welcome to the home of the GNU Music Typesetter

Documentation
General information
For new users
For users
For developers
Background information
Download
Source
Binary
Music
Short examples
Longer examples
Mutopia Project
Other URLs

Mailing Lists
About the lists
Discussion
Help
Bugs
Announcements

Sites
Website
WikiWiki
FTP site


This file documents changes in version 0.0

august 1

VERSION 0.1.0
	
	- bf: output tempo to track 0 too
	- bf: don't forget to copy id_str_, so moved  into Music

pl 78.jcn2
	- INFTY doze fixes

pl 78.jcn1
	- fix for multi-staff midi: wohltemperirt.ly, standchen.ly
	- doze fixes
	- bf: conflily, configure (text)
*****
july 31
pl 78
	- bf: Midi_instrument 
	- added  enable/disable defaults to help.
	- incredibly ugly NAME_MEMBERS(); bug. Immediately changed to 
DECLARE_MY_RUNTIME_TYPEINFO;
	- \stem -1 -> \stem \down in input	
	- bf: slurchar index
	- configure warnings 
	- preliminary stuff for multiarch building
	- #!/usr/bin/perl fixes (AO)
	- some Makefile cleanups: now faster.

pl 77.jcn2
	- Midi_instrument

******
july 29
pl 77	
	- some fixes for internal compiler errors 
derive from Pointer_list with default dtor gives error with -O2
	- .ini -> .ly
	- lyrics fix 
	- Performer beautification: got rid of set_track(), midi_output()
	- pseudo RTTI for midi-items
	- bf: Performer*::print() 
	- links.pod
	- Voice_element -> Request_chord
	- fixed flex problems: stdin input works again 
	- Documentation/Rules.make, make-website via make
	- spacing: now add basicspace

*******
july 28
pl 76
	- mudela version bumped to 0.1
	- mudela-book
	- doco updates, now some stuff in LaTeX
	- junked book.{ly,tex} example
	- progress indicator
	- rhythm.ly updated
	- removed mf sources from distribution due to (c) stuff
	- allowal of breaks handled cleanly
	- junked Subtle_reqs, junked Request_iterator. Request
	iteration now by Voice_element_iterator
	- Piano_bar, Piano_bar_engraver, Span_score_bar_engraver, 
	Span_score_bar
	- Swallow_performer
	- removed  Staff_engravers, grouping into Line_group_engraver
	- Head_column as base for Rest_column,Note_column
	- Score_column derived from PCol
	- regurgled Line spacing: interface and implementation
	separate. Idealspacing moved into Spring_spacer
	- Gourlay style linespacing

pl 75.jcn6
	- {lyric,meter,key}-performer
	- span-brace-* (Removed again. Such is life)
	- doze compile
	- midi output, notes only
	- working midi output -- hacked
	- doze compile, mingw32 configure (still triggers gcc int. comp err)

pl 74pre.jcn2
	- mi2mu fixes after scott snyder  [sss]
	- mi2mu update for mudela 0.0.61
	- conflily fixes

*******
july 21

pl 75
	- inbook.ly & book.tex example.
	- natural width: linewidth = -1.0\cm

pl 74pre.jcn1
	- oversimplified midi output thru performer hierarchy
	- bf: Spanner::doprint

pl 72pre.jcn1
	- naming fixes; some iter*() explicitations
        - removed acceptor.hh
	- *performer*: second draft of midi (audio/...)

*******
july 9

pl 74pre
	- Input_engraver -> Input_translator
	- bf: span start/stop is now a "used" col.
	- Rest_column/Rest_collisions bugfixes
	- bf: crescendi.
	- Spanner do_print()

******
july 7
pl 73pre
	- some refs doco.
	- move Input_engraver into Paper_def
	- junk Interpreter
	- naming: Request_engraver -> Engraver, 
	- Music_iterator::next() -> process_and_next()
	- junk Voice_engravers
	- Span_bar, Span_bar_engraver
	- Vertical_align_engraver
	
*******
july 2
pl 72pre
	- \paper{} syntax: var = 1.0\pt;, with an Assoc array
	- sketch of MIDI Performer classes.
	- bf: memleak in parser
	- naming: Acceptor -> Translator
	- input: bf collisions.ly, scales.ly
	- bf: [r8 c8]
	- naming: Register -> Engraver
	- force \\ on identifiers
	- doco updates
	- musixtex T73 fonts

pl 70.mb
	- bf: find syntax in Variables.make
*****
july 1
pl 71pre
	- nested \melodic and \lyric constructs
	- init id's, Input_register aliases.
	- bf: notehead x-swap 
	- bf: auto-keys.
	- bf: first clef
	- junked \init_end; construct
	- Preparatory work for MIDI output:
		* Acceptor as baseclass for Register_group_register
		* Global_acceptor as interface of Register to Score
	- bf: empty voice
	- Lyrics: partially working
	- some doco updates (junks, mostly)


******
june 30


pl 70pre
	- bf: text Script
	- bf: Script::dir_i_ checks.
	- bf: script stacking
	- bf: Text_spanner::do_subst.
	- bf: Text_spanner::Text_spanner(Text_spanner&)
	- bf: script priority read from script.ini
	- bf: Script_def::do_equal_b
	- bf: script dims.
	- mudela: ; obligatory for \paper {}.
	- some cosmetic changes involving RTTI macros

*******
june 29
pl 69pre
	- bf: whole rest position, whole/half rest dots.
	- bf: scripts
	- reg termination
	- centered bars
	- bf: init of Tie::dir_i_ 
	- bf: Staff_side depends on staff_sym_
	- bf: Script::do_substitute_dependency() now implemented
	- more print info (also in output)
	- bf: Vertical_align_element
	- stemless beams now allowed (with warning)
	- bf: Rest_column::stem_l_ init
	- merge rests.ly with collisions.ly

pl 67.jcn3
	- rests under beam [c8 r c]

pl 67.jcn2
	- first attempt at rest collisions
	- rests.ly

pl 67.jcn1
	- beam stem length: beams.ly
	- bf: mingw configure
	- re: conflily

******
june 26
pl 68pre
	- doco: other-packages.pod, lots of lilyliterature.pod
	- last duration mode now is default.
	- some OpusTeX stuff.
	- bf Y2K in convert-mudela
	- Grand rewrite of Music/Register stuff:
	  * separation of Y and X-elt-groups
	  * Registers: info up: broadcasts, info down: get_xxx_info()
	  * Registers: try_request works from bottom to top of tree.
	  * Score_elem empty_b_ and transparent_b_ flag
	  * Junk Staff_column, and find the requests while walking the
	  Voices.
	  * Score_register
	  * Staff_group, Score_request_register.
	  * align key/Meters/bar across staffs
	  * junked Staff, Staff_column, Staff_walker, Complex_walker,
	    Request_column Pulk_voice, Pulk_voices, Walker_registers,
	    Voice_element, 
	    Input_score, Input_staff, Input_music and a lot of
	    parserjunk.
	  * mudela: lots of structure changes : now much simpler
	  * generation of pre/postbreak items now in Score_elem with deps.
	
	- bf: make_patch explanation
	- bf: make install TeX stuff
	- mudela: . mandatory for REALs


pl 67
	- damped beamslope after wanske

******
june 3
pl 67
	- sketch of Music classes
	- General_script_def as baseclass for Text_def and Script_def
	- bf: clean lib/out/liblily.a
	- bf: rests shorter than 1/4

pl 66.jcn3
	- bf: make uninstall
	- conflily
	- f: some pedaling
	- plet hack removed :-( [ c c c ]2/3 -> [2/3 c c c ]1/1

pl 66.jcn2
	- bf: bar, Hilfslinie
	- bf: configure for mingw32

pl 66.jcn1
	- WIN32 -> WINDOWS32, more win32->windows32
	- some GNU/Linux changes
	- cygnus b18 / mingw update
	- doze compile; bf: p-score.cc compares
	- reincluded toccata fixes
	- small stuff: vi tags, typos, bibl

******
may 27
pl 66
	- make_website --jpeg, --png and --gif
	- win32 -> windows32
	- bf: Score_elem::TeXstring assert fail
	- bf: headswap with stemdown
	- bf: broken tie
	- bf: broken slur
	- bf: accidental dims
	- bf: measure bar width
	

******
may 26

pl 65
	- bf pathfind /root/file
	- massive Score_elem rewrite:
	  * group_element_i_ count
	  * support for removing an individual Score_elem cleanly.
	  * moved dep stuff into class Directed_graph_node
	  * Score_elems can be copied and deleted freely.
	  * junk PStaff
	  * Spanner_elem_group
	  * Line_of_{score,staff} now are Score_elems
	  * clean dep handling upon deletion
	  * delete unbroken spanners
	  * added a break_processing round.
	  * Super_elem
	- junk Complex_staff, 
	- clean {lily}?proto.hh
	- Element_group
	- Score_elem now as virtual base class everywhere
	- naming: Staff_elem -> Score_elem
	- bf: make in toplevel dir
	- bf: broken tie y-pos
	- bf: sharing 4th, 8th and 16th noteheads 
	- bf: overlapping chords. <\multivoice c d >

pl 64.wl
	- new stem direction code
	- bfs: wohltemperirt.ly (thanks, Werner)
	- bf: stem direction

pl 63.jcn2
	- doze compile

pl 63.jcn1
	- bf: mi2mu mudela commands
	- bf: mi2mu tracks
	- mi2mu quantify tuning
	- mi2mu TODO

*********
may 16
pl 64
	- exe's now built in out/
	- toplevel Makefile dep from make/Toplevel.make.in
	- make_website: add version footer
	- make_website: bf dist *.txt
	- bf: fix loose bars : 	\meter 4/4; c1.  
	- Staff_elem -> Score_elem
	- bf 
	- vbrace lookup
	- resync barcheck

*******

may 15
pl 63
	- bf: segfault during MIDI output  with mi2mu output.
	- kludge: parse error beyond eof
	- don't read ini if toplevel file not found
	- accumulate \kern in TeX output.
	- bf: try to prevent long lines; TeX breaks on them.
	- naming: Pointer->Link, IPointer->Pointer
	- bf: \plet didn't work (MB)
	- GMP manifesto.

pl 61.jcn4
	- mi2mu -p -s16 fugua2.midi getting better!
	  plus factor 2 mi2mu speedup (fugue2.midi 5.50user)
	- bf: Duration_convert quantify threshold down
	- bf: (on quantify): tcols quantified; no silly voices

pl 61.jcn3
	- lily parsing speedup: backup rules for lexer.l
	- bf: mi2mu, using midi_voice list...

pl 61.jcn2
	- all in all mi2mu speedup of about factor 8 since pl61
	 (fugue.midi 82.72user to 10.30user on a 586.133)
	 what about lily?
	- binary search on track-columns
	- mi2mu IP*list to Array (implications?!) conversion
	- mi2mu parsing speedup: backup rules for midi-lexer.l
	- bf: zero denominator

**********
may 14 
pl 62
	- make clean bf: remove lex & yacc files too 
	- added kludge in case measure too long 
	- added kludge in case of unconnected columns.
	- kludged columns get error marker
	- kludged lines get error marker


pl 61.jcn1
	- smarter + faster duration-convert using Array
	- bf: mi2mu compilation/duration-conversions
	- lots faster mi2mu, hopefully does type 1 too...
pl 60.jcn1
	- mi2mu handles non-quantified rests, try mi2mu -b wtk-i/fugue2.midi


	
**********
pl 61
	- scales.ly bugfix: dimensions default to ((0,0), (0,0))
	- naming: PointerList->Pointer_list
	- tied notes don't get accidental
	- bf: crescendo size
	- fixes: make_patch,
	- bf: _"text" direction
	- mailing list into lilypond.pod

pl 60.mb
	- set_flower_debug: Warning if -d is used when NPRINT is defined.
	- Fixed several TeX details. vcenter renamed since it interfered
	  with LaTeX. Position of accents changed.
	- New example; scripts.ly
	- table_sixteen: added scriptdefinition (Lilypond breaks if a
	  script is defined without dimensions).
	- bf: ifndef typos in p-score.cc, choleski.cc
	- bf: Slur::do_post_processing(), whole notes caused SIGSEGV.

(ascension break :-)
*******
pl 57.jcn4
	- mi2mu handles rests (quantified only)
	- fixed configure buglet
        - "!date" Fri May  2 02:18:12 MET DST 1997

pl 60
	- Request_register::get_feature(), tie direction, Slur direction
	- lilypond output is now directly texable. 
	- make_website checks return status

*******
may 5
pl 59
	- Slur now into voicegroups, and take stems into account.
	- bf: rest size in table.
	- split Slur in baseclass Bow
	- Tie, Tie_req, Tie_register

******
may 2
pl 58.jcn1
	- bf: toccata-fuga-E.ly

pl 57.jcn4
 	- mi2mu handles rests (quantified only)
 	- fixed configure buglet
        - "!date" Fri May  2 02:18:12 MET DST 1997
 
pl 58
	- lexer cleanup
	- national chars in lyrics
	- \stem 2; bf
	- long comments: %{ %} 
	- *.ini mode bf
	- bf: partial may be everywhere
	- bf: meterchange not at start of measure
	- some doc updates
	- bf: stem too long if stem is down.

pl 57.jcn3
	- dank je schat, voor wtk-i
	- mi2mu tries to handle rests
        - "!date" Thu May  1 02:34:04 MET DST 1997
	- maak je het niet te laat schat?
	  XXXX HWN

pl 57.jcn2
	- small toccata-fuga-E.ly fixes
	- \bar "||"; is now doublebar, "|." is finishbar
	- collision hshift fix, with on-line assistance
******
pl 57
	- lots of TODO doco
	- text alignment bugfix
	- bugfix Voice_group_regs::get_register_p() now is actually called too
	- bugfix init  of Text_item::pos_i_

pl 56.jcn1
 	- toccata-fuga-in-E.ly, excerpts with real-life collisions
 	- \{l,r}{b,f}{toe,heel} --- using cmsy fonts...
 	- pedal.ly 

pl 55.jcn1
	- mi2mu man page
	- make doc fixlet
	- \[lr]heel \[lr]toe scripts (happy pedal studies, pa)
	- lyric with width
	- removal of some example files

pl 56.mb:
	- last duration fix
	- makefile fixes
	- space rest
	- swedish note name update

******
pl 56
	- Massive Rest/Stem/Collision/Note_column rewrite: resolve
notehead/rest ambiguities and bugs. eg, [c8 r8 c8] 

pl 54.jcn1
	- standchen.ly: repeats; lyricii to end
	- convert-mudela: help + usage
	- fixed midi key/meter-change (triggered by martien.ly) bug

******
April 23
pl 55
	- staff-side robustification
	- script-on-rest bug
	- doc update
	- transpose syntax
******
pl 54
	- bugfix Colhpos.cc::OK assert fail.
	- Inclusion of MusixTeX MF files, 
	- detection of MF dir
pl 53.hwn
	- stacked lyrics 
	- configure/make buglets.
******
pl 53
	- spurious accidental bug.
	- simultaneity check.
	- added AUTHORS.pod
	- convert-mudela auto from guess
	- include -> \include
	- change order of opening parse/init file 
	- Pulk_voice, Pulk_voices
	- Request_column
	- revised request-from-voice extraction. Now much faster

******
april 17
pl 52
	- Buildroot RPM
	- tex-prefix and tex-dir sep'd (here you are jan)
 	- convert-mudela framework
	- Collision_register, Collision
	- \hshift 1; input
	- Features changed
pl 50.jcn1
	- LILYINCLUDE dir searched before DIR_DATADIR(?)
	- lily reads from stdin again (but does not now when to stop)
******
pl 51
	- transposition bugfix + doco
	- LilyPond -> GNU LilyPond
	- bugfixes for Staff_side and Note_column*
	- wohltemperirt: complete

******
april 11

pl 50
	- merge rest / notehead.
	- Staff_side as a base class for most "staff-side" symbols.
	- version check
	- Note_column_register, Note_column
	- multiple scripts

********
april 8
pl 49.jcn1
Bugfix
	- configure[.in], make/Configure_variables.make.in c++ (=doze fix)
	- "configure; make" ok for doze, win32 target may be removed now
	- win32/gcc 2.7.2 compile fixes -- why does this all compile 
	    (without warnings, why can-t i even trigger warnings) under 
	    linux/gcc-2.7.2.1?  it's quite a tedious job fixing this 
	    shit _on doze_ all the time.
	    * fixed #includes global-regs.cc, staff-info.cc, staff.cc
	    * key.hh:Key() -> Octave_key()
	    * added missing lily/include/input.hh: Input( Input const& )
	
pl 49
	- lsm template
	- clef in cadenza mode.
	- notename clear
	- \command bla; for \meter, \clef, \octave etc.
*******
pl 48
	- notenames init
	- Duration order -> grouping
	- broken key s
	- default octave

******
april 3
pl 47
	- dynamic flowerlib
	- Input mods: now use Source_file iso Sources
	- makefile lib deps restructured
	- make_website now produces in out/

pl 46
	- examples.pod
	- LILYINCLUDE env var.
	- push/popgroup
	- website updated
	- Swallow_register
	- Lyric_register.
	- Staff_sym_register
	- user settable register config
	- struct Input now used iso defined_ch_C_
	- Walker_registers and Staff_registers separated
	- dynamic-reg -> hairpins

pl 44.jcn2
	- doze configure/compile fixes
	- doze make refixed
	- faq
	- install mudela manpage too
	- RedHat spec lilypond.spec fixed
	- target: rpm (make RedHat packages)

******
Mar 26
pl 45
	- Removing unused Voice_regs & Voice_groups
	- -O2 bugfix

pl 44.jcn1
	- merged 42.3 42.jcn4 code trees (see stuff below)
	- moving towards Mudela 0.1 (again)
	    * keyword "music" dropped for horizontal music
	    * keywords "\lyric" "\melodic" introduced, e.g.:
		melody = \melodic { c c | g g }
	    * removed level of indirection:
	        - staff initialisable with music identifier list: 
	            \staff{ global melody }
	        - \score and staffs alike
	- gnu standard(?) help texts
	- configure "creates" toplevel Makefile from make/Toplevel.make

Bugfix
	- fixed mi2mu
	- write meter to track0 too...
	- default octave
	- new Sources in My_midi_lexer: sourcefile_p_ = get_file_l(): oeps.
	  (ain-t hungarian grand?)

Examples
	- updated for mudela 0.1

******
pl 44
	- naming: _c_l -> _C
	- pure parser, My_lily_parser
	- ''a iso ``a
	- Includable_lexer
	- junk Input_file
	- Duration in parser, Duration restructuring
	- grandiose lexer hax. Flex should be fixed, really.
	Lexer much faster now.
	- opps. mi2mu broken

******
pl 43
	- transposition.
	- $variable&@name 
	- warnings if incorrect mode
	- missing scsii measure
	- declaration used check.
	-

pl 42.jcn4
	- lily writes midi meter/key changes from requests
	- mi2mu: 
	  + write mudela 0.1
	  + write bar change requests
	  + more tunable quantisation

Examples
	- half-new-menuetto.ly converted to mudela -almost- 0.1
	- new mi2mu of bach's wtk pre1/fugue1

pl 42.3 (jcn version)
        - oeps, branched source tree

pl 42.hwn3
	- const naming change (T const <-> const T)
	- Mudela 0.1 (roughly the same as below..)

pl 42.3
	- moving towards Mudela 0.1:
	    * all keywords must be preceded by backslash '\'
	    * explicit lexer switches '$' and '@' dropped
	    * keyword "music" dropped for horizontal music
	    * keywords "\lyric" " introduced, e.g.:
		melody = \melodic { c c | g g }
	    * staff initialisable with music identifier: 
	    	\staff{ melody }
	    * chords: < c e >
	    * octavate ''c`` 
	    * \meter{ 2/4 }
	    * \octave{ ''`` }
	 - configure sets CXX (to c++, commonly)
Internal
	- renamed lexer.hh, mylexer.cc My_flex_lexer to my.lily.lexer.*

pl 42.2
	- new lilyinput (Mudela 0.1) doc.
Examples
	- new-twinkle.ly (in Mudela 0.1, hopefully)

pl 42.1
	- further Makefile revamping.
	- moved flowerlib

*******
pl 42


pl 41.hwn3
	- struct Lexer_prefs
	- parser bug
	- make uninstall

pl 41.hwn2
	- make file rehack
	- spec update
	- make install
	- detect TeX directory

pl 41.hwn1
 	- cygnus configure,
 	- updated versioning 
 	- install.pod
  
pl 41.jn1
Bugfix
	- doze compile
*******
pl 41
	- release

pl 40.3
	- all of the above
	- hw's configure.in
	- p-name.xx fixes

pl 40.hwn1
	- hairpin dynamics
	- notename now as identifier. Parser/lexer cleanup

pl 40.2
	- mi2mu --blonde-durations, --no-silly options.
	- mi2mu starts to look promising, see examples
Examples
	- pre1.midi.ly, fugue.midi.ly
Internal
	- Duration handles blonde midi-durations
	- More settings for Duration_convert
	- lily writes meter too (ugh, howto?)
Bugfix
	- mi2mu auto track number fix
	- mi2mu / lily Midi_tempo fixed/added

pl 40.1
Bugfix
	- lily midi output track 0 name
	- mi2mu tempo fixed
	- make out/make and out/make/Site.make in configure script!
	- mi2mu double newline fix


******
Mar 11
pl 40
	- release

pl 39-5
	- own versioning for mi2mu: 0.0.10
	- some file renaming mi2mu
pl 39-4
	- all of the above

pl 39-hwn2
	- last bar bugfix
Internal
	- simple dynamics
	- experimental RPM spec.
	- doco update.

pl 39-3
	- all of the above
	- m2m renamed to mi2mu
	- better line breaking in mi2mu
	- (somewhat broken) progress indicator for mi2mu 
	- mi2mu output === lily input (in names and durations,
	  always assuming voices > 1 though)

Bugfix
	- midi: note on/off only once per pitch per track 
	  (sending all note-on events introduces cool mi2mu feature)
	- make clean removes deps too
	- mi2mu notename/accidental/octave, and key fixed

Internal
	- auto create of out-dirs, config headers, using tag file .GENERATE

Examples
	- stanchen.ly debugged

pl 39-2
	- configure script help and in topdir again, duh.
	- auto configure upon virgin make
	- configured makefile stuff in make/out/


********
pl 39-1
	- doze target (for 16 bit dos xcompiler: gcc-go32)
Internal
	- make/User.make; C..FLAGS sorted out
Bugfix
	- make clean...

pl 39
	- new make structure, featuring:
	    * top-level/sub-level build
	    * auto custom-library dependencies/build
	    * top-level/sub-level dist
	    * minimal(? can even smaller) specific Makefiles
	    * which makes for simple lib/exe module split (make/Template.make)
	    * integrated flowerlib
	    * all stuff into subbirs (make/Stuff.make)
	    * all headers into /include dirs (make/Include.make)
	    * all output into /out (executables into bin/)
	    * more make features, like make config, make help
	    * small lily lib
	    * lilypond-x.x.x/.version for toplevel lily version
	    * lilypond-x.x.x//.version for  version (eg: flower)
	    * versioning using additional optional MY_PATCH_LEVEL 
		for easy make_patch

	- bin/cptogen

Internal
	- generic m2m header: m2m.hh

Bugfix
	- small fixes, make, dist, configure

pl 38-5
	- all of the below, e.g. new filenames and new makefile 
	  structure patches merged
******
pl 38

Internal
	- great filename renaming operation with - convention.
	- printing methods for paper_def/lookup/symtab(s)
	- untied all registers from complexwalker. Now registers are
intrinsically hierarchical. All walker communication is done via a
"top level" register.

pl 37-3
	- m2m handles voices
	- instrument, track_name, copyright/left stuff for m2m/ly

Internal
	- Midi_voice

pl 37-1
	- text, key, tempo event in midi output/ly input

Internal
	- simple makefile structure, allows for multiple projects

******
pl 37


Documentation
	- language.pod as starting point for mudela devel.

	- Jan's patches:
Features
	- m2m patchy --no-triplet option;
	  lilypond accepts m2m's real midi output (hand-add red tape)
	- m2m output only valid durations, resync option wip
	- m2m produces .ly output
Internal
	- simpler and better naming for Duration*
	- the great String renaming / index to base=0 change
	- Track_column, Lily_stream
	- Duration, Plet, Duration_convert taking load off duration calc.
Bugfix
	- m2m duration calc



******
pl 36
	- Jan's patches:
	- do MIDI rests cleanly.
	- lily/m2m: time and tempo fixed for metric timing
Internal
	- Midi_tempo
	- m2m parses more midi stuff (all of bach-wtc); timing??
	- m2m recognises some commandline options
Examples
	- fixed midi.ly

*******
Feb 25
pl 35
	- Register_group
Bugfix
	- alignment of breakable items.

*******
pl 34
	- better midi syntax.
	- --midi,-M option.
	- preliminary midi2mudela (/mudela2midi) converter: m2m (JCN)
Internal
	- m2m sources: midi-*; (JCN)
	- new Midi_walker, fixes several MIDI bugs.
	- junked Midi_staff, Staff_column children, Midi_walker
	- Midi_output

pl 33-1
	- m2m parses midi
Internal
	- Binary_source_file
	- Source_file::error_str simplified
*******
pl33
Examples
	- Swedish notenames (MB)

pl pre33-2

Bugfix
	- midi pitch
	
Features
	- Jan's patches, see below
Bugfix
	- some midi bugfixes.

pl pre33-1 (JCN)


	- midi output using pitches iso notename
Examples
	- added midi output (some midi output files broken?)
	- all melodic fixed (except for error.ly:-) 
	- midi.ly
Bugfix
	- midiwalker line break
	- empty/nonexistent include at top of ly
	- midi #tracks
	- midi pitch c0
	- midi poor man-s staff dynamics
Internal
	- Midi_column, Midi_staff, Midi_walker

pl pre33 (JCN)
	- Jan's patches, see below

Features
	- simple plet notation (JCN)
	- lyrics centred, but no fully suppored? (JCN)
Internal
	- Midi_stream 
	- Mididef
	- Midi_item, Midi_pitch, Midi_duration
	- Midi_chunk, Midi_header, Midi_track
	- preparations for midi output 
	- no exit upon context error (JCN)
	- converted some "warnings" to errors; no output (JCN)
Bugfix:
	- simple plet bugfix
Examples
	- updated standchen, menuetto (JCN)
	- new plet notation (JCN)
	- plet.ly (parse and spacing tests) (JCN)

*******
pl 32
Features
	- multiple meters, see rhythm.ly
	- skip syntax/Skip_req
	- score_wide_music: commands in staff now override commands in score.
Internal:
	- command carnage
	- Key_register
	- Bar_register
	- Meter_register
	- meters now kept in baseclass Staff_walker
	- Score_walker (to ease MIDI output)
Doc:
	- Hungarian doco added to CodingStyle

pl 32-1
	- music processing speedup
	- website added to doco
	- clef must *inside* music
	- fixed spurious "beam too narrow" messages.
Internal:
	- merge musical / non-musical staff_column
	- musical/ non-musical requests
	- Clef_register
	- split up request.hh, Musical_req vs. Nonmusical_req
*******
pl 31

Examples
	- Coriolan example (JN)
	- standchen updated
Bugfix
	- calcideal assertion bugfix
*******
Feb 12 13:55
pl 30

Features
	- better multivoice spacing
	- move rest in multivoice staff
	- errors in TeX output now warnings
	- progress indicator
	- music processing speedup.
Internal
	- make spanner for staffsym; scrap Line_pstaff
	- scrap simplestaff (Rhythmic_staff temporarily disabled)
	- docxx 3.0 format comments
	- split register source files
	- hardcoded dimensions compile time
	- Lookup::tex_hairpin
Bugfix
	- non G-clef clefs
	- script junking (2x)
	- empty files
	- beam::center (plet position!)
	
pl 29
	- multiplatform Makefile (JN)
	- context errors: bugfixes (JN)
*******
pl 28

Internal
	- idealspacing slightly better for multivoice.
Doc
	- Request_register
Bugfix
	- Script.cc : float exception (MB)
	- Request::Request(Request) copying of definition pointer (JN)
	- cleaned dependencies for broken spanners
	- stupid typo in Staff_elem::post_processing()
	- init of hpos in PCol::PCol
	- Word_wrap::solve() bug 
*******
pl 27
	- preliminary WIN32 support (JN)
Features
	- errors converted to warnings (JN)
	- context errors (JN)
	- As vs. as  notename.
	- WARNING: "melodic" stafftype will create the new Complex_staff!
Examples
	- Lohman's Viola Quartet (JN)
	- JS Bach Solo Cello suite II menuet (JN)


pl pre27

Features	
	- option --init
	- last_duration_mode: default_duration is last duration entered
	(\duration{\last})
	- syntax: grouping 2*4 3*8
	- preliminary multivoice support
Examples
	- JS Bach's WTK example added.

Internal:
	- Text_reg and Script_reg
*******
pl 26
	- Documentation/lelie_logo.png
	- 8-bit chars for input (see ltest.tex) (MB)
	- quotes around string now optional
Bugfixes:
	- unmatched ] (MB)
Internal:
	- print/name methods of Staff_elem
	- added Request_register
	- Voice_group_registers, Voice_registers, *_register
	- Complex_staff
*******
 Jan 27 '97 
pl 25
	- other clefs added, keys typeset properly (MB)

*******
pl 24:
	- Lyrics (JCN)
	- Commands in music-mode (an input feature) (there you are, Mats)

*******
pl 23:
	- TODO file inc'd
	- cadenza mode.
	- default extension, search path.
	- error.pod,faq.pod
	- Markers
	- configure script
	- inputfile name in output.
Internal changes:
	- scrapped VPATH
	- Make dependencies per .o
	- Split Input_* parsing steps to enable marking	
Bugfixes:
	- unconnected columns


*******
pl 22:
	- doco from mpp
	- repeat signs
	- | checks for bar in a voice (Barcheck_req)
Internal changes:
	- naming (Hungarian notation, svec vs. Array)
	- cleanup PScore, Score
	- removed Staff_commands, plugging commands into Staff_column directly
Bugfixes:
	- bug noteheadswap
	- huge memleak fixed; unearthed lots of bugs

*******
pl 21:
	- scripts
	- texts
	- nplets (triplets!)
Internal changes:
	- Move breaking stuff into a separate class Break_algorithm
	- dependencies for Staff_elem's

*******
Dec 23 
pl 20: 
	- updated doco to .pod
	- include files from .ly
Internal changes:
	- Rational for time measurement
	- directionalspanner/textspanner

*******
pl 19:
	- grouping code: LilyPond can set advanced multibeams.
Internal changes:
	- struct Moment

*******

pl 18:
	- robust Staff_commands

*******
pl 17:
	- robust Input_commands
	- merged Vertical_/Horizontal music
	- PARTIALs with duration
	- modularized lexer: multiple runs

*******
pl 16
	- notenames configurable

*******
pl 15
	- grouping code
	- multibeams (simple)

*******
pl 14
	- symtables from .ly
	- Input_command
	- Input_{score/staff}

*******
Dec  2 
pl 13
	- Horizontal/Vertical music
	- Input_commands

Go back to index of LilyPond.

Please send GNU LilyPond questions and comments to gnu-music-discuss@gnu.org.

Please send comments on these web pages to (address unknown)

Copyright (c) 1997--2001 Han-Wen Nienhuys and Jan Nieuwenhuizen.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.


This page was built from LilyPond-1.4.2 by

<(address unknown)>, Fri Jun 1 16:16:17 2001 CEST.