1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
|
pl 48.hwn1
- 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 <module>/include dirs (make/Include.make)
* all output into <module>/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/<module>/.version for <module> 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
|