From e576c4270e9a78517ca288ed2f9573120573e12f Mon Sep 17 00:00:00 2001 From: fred Date: Sun, 24 Mar 2002 19:32:47 +0000 Subject: [PATCH] lilypond-0.0.33 --- NEWS | 80 +++++++++++++++++++++++++++++++++++++++++------- TODO | 20 +++++++----- configure | 31 ++++++++++++++++--- input/cadenza.ly | 8 +++-- input/midi.ly | 50 ++++++++++++++++++++++++++++++ input/pavane.ly | 27 ++++++++-------- input/rhythm.ly | 12 ++++++-- 7 files changed, 186 insertions(+), 42 deletions(-) create mode 100644 input/midi.ly diff --git a/NEWS b/NEWS index 34f241725c..ce2cca67ca 100644 --- a/NEWS +++ b/NEWS @@ -1,12 +1,58 @@ +******* +pl33 +Examples + - Swedish notenames (MB) +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 - - -pl 32-2 - skip syntax/Skip_req - - command carnage - score_wide_music: commands in staff now override commands in score. Internal: + - command carnage - Key_register - Bar_register - Meter_register @@ -20,12 +66,12 @@ pl 32-1 - website added to doco - clef must *inside* music - fixed spurious "beam too narrow" messages. -Internal +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 @@ -33,7 +79,7 @@ Examples - standchen updated Bugfix - calcideal assertion bugfix - +******* pl 30 Features @@ -58,7 +104,7 @@ Bugfix pl 29 - multiplatform Makefile (JN) - context errors: bugfixes (JN) - +******* pl 28 Internal @@ -72,7 +118,7 @@ Bugfix - stupid typo in Staff_elem::post_processing() - init of hpos in PCol::PCol - Word_wrap::solve() bug - +******* pl 27 - preliminary WIN32 support (JN) Features @@ -98,7 +144,7 @@ Examples Internal: - Text_reg and Script_reg - +******* pl 26 - Documentation/lelie_logo.png - 8-bit chars for input (see ltest.tex) (MB) @@ -110,14 +156,16 @@ Internal: - added Request_register - Voice_group_registers, Voice_registers, *_register - Complex_staff - +******* 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. @@ -134,6 +182,7 @@ Bugfixes: - unconnected columns +******* pl 22: - doco from mpp - repeat signs @@ -146,6 +195,7 @@ Bugfixes: - bug noteheadswap - huge memleak fixed; unearthed lots of bugs +******* pl 21: - scripts - texts @@ -154,6 +204,7 @@ Internal changes: - Move breaking stuff into a separate class Break_algorithm - dependencies for Staff_elem's +******* pl 20: - updated doco to .pod - include files from .ly @@ -161,33 +212,40 @@ 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} +******* pl 13 - Horizontal/Vertical music - Input_commands diff --git a/TODO b/TODO index 1803ad21c3..4eba110c2d 100644 --- a/TODO +++ b/TODO @@ -1,19 +1,19 @@ before 0.1 - * martien.ly, standchen.ly + * Register_groups as a baseclass. + + * Junk Staff/Staff_col children. * pushgroup, popgroup. * basic dynamics - * triplet notation - - * midi output + * MIDI syntax. * decent TeX page layout - * < .. > vs. { .. } + * < .. > vs. { .. } syntax? ! This is an assorted collection of stuff that will be done, might be done, or is an idea that I want to think about @@ -25,6 +25,10 @@ BUGS * $cis ( | ) cis$ + * Group_feature at start of music. + + * size of Key_item + SEVERELY LACKING: * grace notes @@ -45,7 +49,9 @@ INPUTLANGUAGE SMALLISH PROJECTS - * bar numbers + * parshape + + * bar numbers/repetition marks * read from mmap directly: study yy_scan_buffer @@ -123,7 +129,7 @@ IDEAS * enter Requests directly - * itemcolumns + * itemcolumns: Use dummy items. * use an embedded language: scheme, lisp, S-lang, Perl, ? diff --git a/configure b/configure index b1b21e0631..21ee567e83 100755 --- a/configure +++ b/configure @@ -1,12 +1,26 @@ #!/bin/sh +# script to setup library and auto generated files. + +function setversion() { + eval `sed -n 's/^\([A-Z]*\)=\([p0-9].*\)$/\1=\2/p' Variables.make` + NEWVER=$MAJVER.$MINVER.$PATCHLEVEL + echo + echo "Current version ("`pwd`") is $NEWVER" + echo +} + +MAKE=${MAKE:-make} PREFIX=${PREFIX:-.} +NEEDFLOWERVER=1.1.1 + echo using PREFIX=$PREFIX +echo I need Flower version $NEEDFLOWERVER -NEEDFLOWERVER=1.0.27 flowertar=flower-$NEEDFLOWERVER here=`pwd` cd .. + if [ -x flower ] then echo Found flowerdir @@ -19,14 +33,23 @@ else fi rm flower ln -s $flowertar flower - fi + echo Compiling Library -(cd flower;make) +{ + cd flower; + setversion + if [ $NEWVER != $NEEDFLOWERVER ]; then + echo "You seem to be having an incorrect version of the Flower library" + else + echo "You got the correct Flower version." + fi + $MAKE +} cd $here echo '#define LIBDIR "'$PREFIX'/"'> hdr/config.hh touch Site.make -make -f Initial.make +$MAKE -f Initial.make diff --git a/input/cadenza.ly b/input/cadenza.ly index 6773143fea..fb7669e3fa 100644 --- a/input/cadenza.ly +++ b/input/cadenza.ly @@ -33,7 +33,7 @@ cad = music { $ \duration{16} [d cis d e] f4()[f e d c] `b4 - \octave{} \plet{2/3} ['d8 'c8 a8] \plet{1/1} + \octave{} ['d8 'c8 a8]2/3 g2 \bar \empty [g c e g] ['c e g 'c]\octave{'} @@ -50,7 +50,9 @@ score { music { cad } } commands { - cadenza $1$ + cadenza {1} grouping{1*4} } -} + midi { tempo 4:80 } + staff { midi music { cad } } +} \ No newline at end of file diff --git a/input/midi.ly b/input/midi.ly new file mode 100644 index 0000000000..c08b1bc348 --- /dev/null +++ b/input/midi.ly @@ -0,0 +1,50 @@ +% midi.ly +% test source for lilypond-s midi output + + +% BUG: 2e noot van begeleiding bij g2 niet gespeeld. +% BUG: rust (5e maat) niet gespeeld. +melodie = music { + $\clef\violin + c c | g g | a a | g2 | r2 + f f | e e | d d8.( e16 | )c2 | % :| + $ +} + +begeleiding = music { + $ + \clef \bass + \octave{`} + c 'c | 'e 'c | 'f 'c | 'e 'c | r2 + 'd b | 'c a | f g | c2 | + $ +} + +mstaf = staff { + melodic + music { melodie } +} + +bass_staf = staff { + melodic + music { begeleiding } +} + +score { +% staff { mstaf } +% staff { bass_staf } +% paper { unitspace 2.5cm } + % in own audio { } block iso score { } ? + % allow no score { } block ? + + staff { midi music { melodie } } + staff { midi music { begeleiding } } +% staff { midi music { bla } } + midi { + tempo 4:120 + } + commands { + meter { 2 * 4 } + } +} + diff --git a/input/pavane.ly b/input/pavane.ly index 4f0b3b8812..1e2c6da688 100644 --- a/input/pavane.ly +++ b/input/pavane.ly @@ -11,9 +11,8 @@ % horn = -staff { - melodic - music{ $ +music { + $ \octave { ' } \key{ fis cis } \duration { 8 } @@ -68,13 +67,12 @@ staff { r1^"1er mouvement" \duration {8} | r2 [c-.( e-. c-. )`a-. ] - \plet {2/3}\octave{} | - | [c e a ] \plet{1/1} b4-> () [b c-- e-- a--] | + \octave{} | + | [c e a ]2/3 b4-> () [b c-- e-- a--] | b4. b8()g2 | r1 | r2 [f a f d] - \plet {2/3} - | [f a 'c] \plet{1/1} 'e4-^ () ['e f-> a-> 'c->] | + | [f a 'c]2/3 'e4-^ () ['e f-> a-> 'c->] | 'e4._"sf" 'e8()'c4 r4 | r1 | \meter {2 *4} @@ -96,11 +94,10 @@ staff { )b [fis a b ] 'cis4 b4 | fis2 r2 | r1-\fermata - $} + $ } score { - staff { - horn + staff { melodic music { horn } } paper { output "pavane.out" @@ -110,11 +107,13 @@ score { } commands { meter {4 *4} - skip 39*1 + skip {39*1} bar "|:" - skip 10*1 + skip {10*1} bar ":|" - skip 13*1 + skip {13*1} bar "||" } -} \ No newline at end of file + midi { tempo 4:70 } + staff { midi music { horn } } +} diff --git a/input/rhythm.ly b/input/rhythm.ly index c74c9d8dcd..368d04b9bf 100644 --- a/input/rhythm.ly +++ b/input/rhythm.ly @@ -29,15 +29,21 @@ ritme = staff { $ } + % + % The commands section takes the same stuff that music { } takes; + % the commands issued below could have been issued inside the above + % music block; + % + commands { % override "commands" section of Score. - partial 1*8 + partial {1*8} % doesn't have to be here. meter{ 4*4} } } another = staff { melodic music { $ - c1 c1 c1 c4 c4 c4 c4 {\meter 4*4} c1 c1 c1 + c1 c1 c1 c4 c4 c4 c4 \meter{ 4*4} c1 c1 c1 $ } } @@ -57,4 +63,4 @@ score { unitspace 2cm geometric 1.3 } -} \ No newline at end of file +} -- 2.39.5