From 50802c7203c8e4a3eea1d7bf23064d60cd0d3ec7 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Fri, 1 Aug 1997 00:09:49 +0200 Subject: [PATCH] release: 0.1.0 --- .dstreamrc | 2 + ANNOUNCE | 100 +++++------ AUTHORS.text | 2 +- BUGS | 9 - Documentation/CodingStyle.pod | 3 + Documentation/INSTALL.pod | 74 +++++---- Documentation/MANIFESTO.pod | 6 +- Documentation/error.pod | 17 -- Documentation/faq.pod | 14 +- Documentation/index.pod | 9 +- Documentation/lilypond.pod | 35 +++- Documentation/mi2mu.pod | 4 - INSTALL.text | 192 +++++++++++----------- NEWS | 13 ++ README | 26 +++ TODO | 28 ++-- VERSION | 9 +- bin/conflily | 2 +- bin/make-website.in | 7 +- configure | 12 +- configure.in | 12 +- input/cadenza.ly | 6 +- input/kortjakje.ly | 2 + lily/VERSION | 6 +- lily/break.cc | 2 +- lily/colhpos.cc | 2 +- lily/include/const.hh | 3 + lily/include/music-list.hh | 5 - lily/include/music.hh | 10 ++ lily/include/performer-group-performer.hh | 7 +- lily/include/performer.hh | 5 + lily/include/staff-performer.hh | 6 + lily/ineq-constrained-qp.cc | 7 +- lily/music-iterator.cc | 20 +-- lily/music-list.cc | 8 +- lily/music.cc | 5 +- lily/note-performer.cc | 2 +- lily/performer-group-performer.cc | 20 +++ lily/performer.cc | 13 ++ lily/score-performer.cc | 8 + lily/score.cc | 2 +- lily/spring-spacer.cc | 7 +- lily/staff-performer.cc | 17 +- lily/template5.cc | 5 +- lily/wordwrap.cc | 2 +- make/lilypond.lsm | 24 +-- make/lilypond.lsm.in | 16 +- make/lilypond.spec | 6 +- 48 files changed, 463 insertions(+), 329 deletions(-) delete mode 100644 Documentation/error.pod diff --git a/.dstreamrc b/.dstreamrc index 0bf620df03..bb39c57afd 100644 --- a/.dstreamrc +++ b/.dstreamrc @@ -1,3 +1,5 @@ +#This file controls which classes produce debugging output + # class name silence? Dstream 1 diff --git a/ANNOUNCE b/ANNOUNCE index a904214579..8cabfbcdef 100644 --- a/ANNOUNCE +++ b/ANNOUNCE @@ -1,5 +1,4 @@ -Subject: LilyPond 0.1 released - GNU Project music typesetter - +Subject: LilyPond 0.1 released - The GNU Project music typesetter BORN @@ -12,12 +11,12 @@ Subject: LilyPond 0.1 released - GNU Project music typesetter daughter to Jan 'Janneke' Nieuwenhuizen and Han-Wen 'Wendy' Nienhuys -Lily is a healthy, bouncing baby weighing 340 kilobytes +Lily is a healthy, bouncing baby weighing 345 kilobytes -Visiting hours: 24hrs a day at +Visiting hours: 24 hours a day at ftp://pcnov095.win.tue.nl/pub/lilypond/lilypond-0.1.0.tar.gz (Europe) - ftp://alpha.gnu.ai.mit.edu/pub/lilypond/lilypond-0.1.0.tar.gz (US) + ftp://alpha.gnu.ai.mit.edu/gnu/lilypond-0.1.0.tar.gz (US) You can see some babyfood, diapers and pictures at @@ -26,63 +25,54 @@ You can see some babyfood, diapers and pictures at You can send your congratulations to Janneke (jan@digicash.com) and Wendy (hanwen@stack.nl) -[ And now the serious part ] - Announcing - - GNU LilyPond +GNU LilyPond - The GNU Project Music Typesetter - The Music Typesetter -Do you pine for the nice days of Linux 0.95, when men were men and -wrote their own applications? Are you without a nice project and just -dying to cut your teeth into a bleeding edge application you can -modify for your needs? Do you find it frustrating that everything -works in LaTeX? No more all-nighters to get a nifty program working? -Then this post might be just for you! -I have been working very hard on a music typesetting system (called -GNU LilyPond) the past half year, and I finally think it is ready to be -used and hacked at by a larger public than me and my co-developer. +``WHAT IS GNU LilyPond?'' -Sources for this project are on: +Well Mike, GNU LilyPond is a program which converts music definition +files into visual or auditive output: it can typeset formatted sheet +music to a TeX file and (mechanical) performances to MIDI files. - ftp://pcnov095.win.tue.nl/pub/lilypond/ -detailed info and examples can be found on the webpage at: +We have been working very hard on this system for the past year, and +we finally think that it is ready to be used and hacked at by a larger +public than us. - http://www.stack.nl/~hanwen/lilypond/index.html -It isn't flashy, but then I wasn't born to be a webartist. +WHY ? +We want to create tools to produce production quality scores and parts +of public domain music. -[DETAILED DESCRIPTION] -WHAT IS GNU LilyPond? +BUT .. -GNU LilyPond is a program which converts music definition files into -visual or auditive output: it can typeset formatted sheet music to a -TeX file and and (mechanical) performances to MIDI files. +We haven't yet reached that goal: -WHY? +* The quality of the output isn't good enough yet due to some +unsophisticated algorithms -We want to create tools which can produce production quality scores -and parts of public music. We haven't quite reached that goal: +* Some features haven't been implemented, due to lack of time; most of +them can be done quite simply -* The quality of the output isn't good enough yet due to -some (still) unsophisticated algorithms +This is why we don't consider this software stable yet. It generally +does what it is supposed to, but we reserve the right to make +(incompatible) changes to the input format. We consider it +of BETA quality. -* A number of features haven't been implemented (although they can be -quite simple) -WE WANT YOU! +WE WANT YOU! -You can become a user, but we'd really appreciate it you would start +You can become a user, but we'd really appreciate it if you would start hacking at Lily, and help us advance our project more quickly. -WHAT IS NEEDED? -for compilation you need +``YES, IT IS FANTASTIC! WHAT DO I NEED?'' + +For compilation you need Unix. (windows32 is known to work, too) GNU C++ v2.7 or better, with libg++ installed. @@ -90,18 +80,19 @@ for compilation you need Flex (2.5.1 or better). Bison. (1.25 or better) -for running you need +For running you need TeX - MusiXTeX fonts + MusiXTeX fonts The MusiXTeX fonts are part of the MusiXTeX package version T.73, available at any CTAN mirror, or http://www.gmd.de/Misc/Music/ -WHAT CAN LILYPOND DO? + +``WHAT CAN LILYPOND DO?'' ASCII script input (mudela), with identifiers (for music reuse), -customizable notenames +customizable notenames. MIDI output lets you check if you have entered the correct notes. MIDI to Mudela conversion through the mi2mu program. @@ -112,11 +103,26 @@ beams optionally shared between voices. Multiple scores within one input file. Each score is output to a different file. Beams, slurs, chords, super/subscripts (accents and text), -general n-plet (triplet, quadruplets, etc.), lyrics, transposition +general n-plet (triplet, quadruplets, etc.), lyrics, transposition, dynamics (both absolute and hairpin style), clef changes, meter -changes, cadenza-mode, key changes, repeat bars +changes, cadenza-mode, key changes, repeat bars. + +Integration with LaTeX through Perl scripts. + -Integration with LaTeX through scripts. +``WHERE CAN I FIND MORE INFO?'' + +Sources for this project are on + + ftp://pcnov095.win.tue.nl/pub/lilypond/ (Europe) + ftp://alpha.gnu.ai.mit.edu/gnu/ (US) + +More detailed info and examples can be found on the webpage at + + http://www.stack.nl/~hanwen/lilypond/index.html +THANK YOU, +Thanks go out to Mats Bengtsson, Werner Lemberg and Richard Stallman +for comments and contributions. diff --git a/AUTHORS.text b/AUTHORS.text index 5670db31ae..8ebc36383a 100644 --- a/AUTHORS.text +++ b/AUTHORS.text @@ -61,6 +61,6 @@ CCCCOOOONNNNTTTTRRRRIIIIBBBBUUUUTTTTOOOORRRRSS -30/Jul/97 LilyPond 0.0.77 1 +30/Jul/97 LilyPond 0.1.0 1 diff --git a/BUGS b/BUGS index 4743ac6943..e0f534ec8e 100644 --- a/BUGS +++ b/BUGS @@ -1,20 +1,11 @@ [document reintroduced deficiencies.] -wrong instrument: - -cad = \melodic { \id "Staff" "fr horn"; c4 } - -\score { - \melodic {\cad} -} - ******************* '.' -> lilypond: lexer.l:258: int My_lily_lexer::yylex(): Assertion `cnv == 1' failed. *********************** -2nd staff takes too long. \score { < \melodic { \id "Staff" ""; c'4 g'4 } diff --git a/Documentation/CodingStyle.pod b/Documentation/CodingStyle.pod index 7fe901c186..9f87b123bc 100644 --- a/Documentation/CodingStyle.pod +++ b/Documentation/CodingStyle.pod @@ -99,7 +99,10 @@ the C is a Hungarian notation postfix for C. See below =head2 MACROS +The code should not be compilable if proper macro declarations are not +included. +Don't laugh. It took us a whole figure out one of these bugs. =head2 BROKEN CODE diff --git a/Documentation/INSTALL.pod b/Documentation/INSTALL.pod index 7d7ee4127d..60100908e8 100644 --- a/Documentation/INSTALL.pod +++ b/Documentation/INSTALL.pod @@ -4,7 +4,18 @@ INSTALL - installing GNU LilyPond =head1 DESCRIPTION -This page documents installation and compilation of GNU LilyPond +This page documents installation and compilation of GNU LilyPond + +=head1 ABSTRACT + +You do something which looks remotely like + + configure + make + make install + tar -C /usr/lib/texmf/fonts/source/ -zxf musixtex-T73.tgz 'mf/*' + +The detailed instructions follow here. =head1 PREREQUISITES @@ -18,7 +29,7 @@ A Unix system with GNU tools. GNU LilyPond is known to run on these unices: Linux, AIX, Digital Unix and Solaris. If you have the Cygnus WINDOWS32 port of the GNU utils, it will even -work in Windows NT/95, but don't promise to support it. +work in Windows NT/95, but we don't promise to support it. =item * @@ -61,7 +72,7 @@ MusixTeX (T73 or better), which can be had from any CTAN site, e.g. at =item ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin -=item ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin +=item ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin =item ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin @@ -71,6 +82,11 @@ You only need the contents of the F subdirectory of the package. The primary site of the Taupin version is ftp://hprib.lps.u-psud.fr/pub/music_zips/musixtex.zip +Andreas Egler's version of MusixTeX, now called OpusTeX, will also +work. Andreas moved some characters around in the fonts, so you have +to edit the definitions in tex/eglerdefs.tex (patch appreciated) + + =head1 RECOMMENDED Although not strictly necessary, these are recommended to have. @@ -79,12 +95,12 @@ Although not strictly necessary, these are recommended to have. =item * -Perl. Most scripts are written in Perl. The documentation was created +Perl. Most scripts are written in Perl. Most documentation was created with the perl's Plain Old Documentation. =item * -(GNU) find +GNU find =item * @@ -105,7 +121,8 @@ to install GNU LilyPond, simply type: This will install the following files: /usr/local/man/man1/mi2mu.1 - /usr/local/man/man5/mudela.5 + /usr/local/man/man1/convert-mudela.1 + /usr/local/man/man1/mudela-book.1 /usr/local/man/man1/lilypond.1 /usr/local/lib/libflower.{so,a} /usr/local/bin/lilypond @@ -115,8 +132,8 @@ This will install the following files: The TeX include directory is detected dynamically, but it can be adjusted with B<--enable-tex-prefix> and B<--enable-tex-dir>. The -above assumes that you are root and have the gnu development tools, -and your make is gnu make. If this is not the case, you can adjust +above assumes that you are root and have the GNU development tools, +and your make is GNU make. If this is not the case, you can adjust your environment variables to your taste: export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" @@ -149,29 +166,29 @@ other options include: Make a shared library (gnu/linux, solaris (?) only ) -=item --enable-printing +=item --enable-printing Enable debugging print routines (lilypond B<-d> option) -=item --enable-optimise +=item --enable-optimise -Set maximum optimisation +Set maximum optimisation: compile with B<-O2> -=item --enable-profiling +=item --enable-profiling Compile with support for profiling -=item --enable-tex-prefix +=item --enable-tex-prefix -Set the directory where texmf lives +Set the directory where TeX and Metafont live =item --enable-tex-dir -Set then directory tex input is in (detected as a subdir of tex-prefix) +Set then directory TeX input is in (detected as a subdir of tex-prefix) =item --enable-mf-dir -Set then directory mf input is in (idem) +Set then directory mf input is in (idem) [obsolete] =back @@ -208,8 +225,6 @@ files, I ran "texhash" =head1 CAVEATS - - =over 5 =item * @@ -229,23 +244,17 @@ This is what I type in my xterm: This is what the output looks like over here: - hw:~/musix/spacer$ lilypond input/kortjakje.ly - GNU LilyPond 0.0.71 #20/FlowerLib 1.1.20 #0 - Parsing ... [/home/hw/share/lilypond/init//symbol.ini <..snip..> - .. .ini]][input/kortjakje.ly] - Creating elements ... + GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0 + Parsing ... [/home/hw/share/lilypond/init// + <..etc..> + init//performer.ly]]][input/kortjakje.ly] + Creating elements ...[8][16][24][25] Preprocessing elements... - Calculating column positions ... [3][8][13][17][21][25] + Calculating column positions ... [14][25] Postprocessing elements... TeX output to lelie.tex ... + Creating MIDI elements ...MIDI output to lelie.midi ... - hw:~/musix/spacer$ tex lelie - This is TeX, Version 3.14159 (C version 6.1) - (lelie.tex - Hyphenation patterns for english, dutch, german, loaded. - (/home/hw/lib/texmf/tex/lilypond/lilyponddefs.tex) [1] ) - Output written on lelie.dvi (1 page, 8944 bytes). - Transcript written on lelie.log. hw:~/musix/spacer$ xdvi lelie& [1] 855 @@ -269,7 +278,8 @@ Windows NT: you need the cygnus windows32 gnu port development stuff; have a look at http://www.cygnus.com/gnu-win32. -to make GNU LilyPond under, brr, aargh, well, simply type: +to make GNU LilyPond under, brr, aargh, shudder.. windows32, well, +simply type: bash configure make windows32 diff --git a/Documentation/MANIFESTO.pod b/Documentation/MANIFESTO.pod index e14cc67f19..9f28246c03 100644 --- a/Documentation/MANIFESTO.pod +++ b/Documentation/MANIFESTO.pod @@ -19,7 +19,7 @@ TeX file. =item * -We want to provide an easy-to-use interface for typesetting music in +Providing an easy-to-use interface for typesetting music in its broadest sense. This interface should be intuitive from a musical point of view. By broadest sense we mean: it is designed for music printed left to right in staffs, using notes to designate rythm and @@ -27,13 +27,13 @@ pitch. =item * -Generate high-quality output. Ideally it should be of a professional +Generating high-quality output. Ideally it should be of a professional quality. We'd like to render Herbert Chlapiks words, "Fine music setting is not possible without a knowledgeable printer," untrue. =item * -Make a system which is fully tweakable. It should be possible to +Making a system which is fully tweakable. It should be possible to typeset a book on how not to typeset music. =back diff --git a/Documentation/error.pod b/Documentation/error.pod deleted file mode 100644 index 371b73bd99..0000000000 --- a/Documentation/error.pod +++ /dev/null @@ -1,17 +0,0 @@ -=head1 NAME - -LilyError - LilyPond error messages - -=head1 DESCRIPTION - -This page documents error messages. - -A correctly parsed F does not guarantuee output. A lot -(most) of the checking is done B parsing (some checks even are -done after the break calc!); I'm sorry. - -Most errors come with a context of the Mudela element that originated -it. This context may be slightly wrong: the parser sometimes reads a -few tokens ahead to determine the syntax. - -[yep.. has to be written..] diff --git a/Documentation/faq.pod b/Documentation/faq.pod index 2eeced82b3..ac6aa0637f 100644 --- a/Documentation/faq.pod +++ b/Documentation/faq.pod @@ -155,13 +155,15 @@ important data-structures are to be found in: - p-col.hh - *request.hh - - register.hh + - engraver.hh + - performer.hh + - translator.hh - score-elem.hh - - input-music.hh - - linespace.hh + - music.hh + - music-list.hh + - music-iterator.hh - item.hh - spanner.hh - - voice.hh Q: Why GPL? @@ -173,7 +175,7 @@ the syntax to allow YYYY! A: If it is reasonable, I'll add XXXX to the TODO list. In general finding a cute syntax (such as YYYY) isn't very hard. The complicated -issue how to adapt the internals to do XXXX. The parser is really a +issue how to adapt the internals to do XXXX. The parser is really a simple front end to the complicated internals. Q: Why do I need g++ >= 2.7? @@ -205,7 +207,7 @@ C. (I am not promising to maintain this platform, it is just that when having to use doze, i-m sometimes too lazy to reboot.) A.2: I haven't had time to find a GCC crosscompiler (I g++ and -libg++, mind you) to DOS/win (in rpm, please :). +libg++, mind you) to DOS/win (in rpm, please :-) Q: I-m dozed enough to run the (sometimes bit stale) .exe-s you distribute. diff --git a/Documentation/index.pod b/Documentation/index.pod index cc50a8b595..43f6c2b1e0 100644 --- a/Documentation/index.pod +++ b/Documentation/index.pod @@ -70,13 +70,6 @@ mudela in TeX: mudela-book -=item * - -errors - - =back @@ -113,7 +106,7 @@ The GNU Music project -=item * +=item * The announce of 0.1 diff --git a/Documentation/lilypond.pod b/Documentation/lilypond.pod index e479ff5c19..faa26928e4 100644 --- a/Documentation/lilypond.pod +++ b/Documentation/lilypond.pod @@ -149,12 +149,25 @@ if the bug has been found earlier, consult F and F If you have found a bug, then you should send a bugreport. - - send a copy of the input which causes the error - - send a description of the platform you use - - send a description of the LilyPond version you use (with - compile/config options please) - - send a description of the bug itself. - - send it to bug-gnu-music@vuse.vanderbilt.edu +=over 4 + +=item * +send a copy of the input which causes the error + +=item * +send a description of the platform you use + +=item * +send a description of the LilyPond version you use (with +compile/config options please) + +=item * +send a description of the bug itself. + +=item * +send it to bug-gnu-music@vuse.vanderbilt.edu + +=back It does help if you can find out where the bug comes from: if GNU LilyPond bombs out, then please recompile using with debugging info @@ -221,7 +234,9 @@ LilyPond documentation GNU LilyPond is updated very frequently, the latest version is always available at: -ftp://pcnov095.win.tue.nl/pub/lilypond. +ftp://pcnov095.win.tue.nl/pub/lilypond and +ftp://alpha.gnu.ai.mit.edu/gnu/ + For programs which are part of the GNU music project, the following mailing list have been setup: @@ -289,5 +304,7 @@ details on spacing; it was downloaded approximately 4 times. Then I got the hang of it, and in the subsequent two months, I coded until it had doubled in size (pl 23). -The first large scale release (0.1) was planned after approximately 80 -patchlevels on August 1, 1997. +Most the other history is described in the NEWS file. The first large +scale release (0.1) was done after approximately 78 patchlevels on +August 1, 1997. + diff --git a/Documentation/mi2mu.pod b/Documentation/mi2mu.pod index faf125bbfe..77a68f1f52 100644 --- a/Documentation/mi2mu.pod +++ b/Documentation/mi2mu.pod @@ -107,10 +107,6 @@ Jan Nieuwenhuizen , http://www.digicash.com/~jan. The GNU LilyPond music typesetter. -=item mudela(5) - -On the LilyPond input format. - =item mudela-man On the input format. This is a LilyPond-enhanced LaTeX document. diff --git a/INSTALL.text b/INSTALL.text index c4b84339f1..485136c659 100644 --- a/INSTALL.text +++ b/INSTALL.text @@ -8,9 +8,20 @@ NNNNAAAAMMMMEEEE INSTALL - installing GNU LilyPond DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN - This page documents installation and compilation of GNU + This page documents installation and compilation of GNU LilyPond +AAAABBBBSSSSTTTTRRRRAAAACCCCTTTT + You do something which looks remotely like + + configure + make + make install + tar -C /usr/lib/texmf/fonts/source/ -zxf musixtex-T73.tgz 'mf/*' + + The detailed instructions follow here. + + PPPPRRRREEEERRRREEEEQQQQUUUUIIIISSSSIIIITTTTEEEESSSS For compilation you need. @@ -19,8 +30,8 @@ PPPPRRRREEEERRRREEEEQQQQUUUUIIIISSSSIIIITTTTEE Solaris. If you have the Cygnus WINDOWS32 port of the GNU - utils, it will even work in Windows NT/95, but don't - promise to support it. + utils, it will even work in Windows NT/95, but we + don't promise to support it. +o GNU C++ v2.7 or better, with libg++ installed. Version 2.7.2 or better recommended. @@ -46,35 +57,43 @@ RRRRUUUUNNNNNNNNIIIINNNNGGGG ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin - ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin - ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin - You only need the contents of the _m_f_/ - subdirectory of the package. The primary site of - the Taupin version is ftp://hprib.lps.u- - psud.fr/pub/music_zips/musixtex.zip -RRRREEEECCCCOOOOMMMMMMMMEEEENNNNDDDDEEEEDDDD - Although not strictly necessary, these are recommended to - have. + +1/Aug/97 LilyPond 0.1.0 1 -29/Jul/97 LilyPond 0.0.77 1 +INSTALL(1) LilyPond documentation INSTALL(1) + ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin -INSTALL(1) LilyPond documentation INSTALL(1) + ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin + + You only need the contents of the _m_f_/ + subdirectory of the package. The primary site of + the Taupin version is ftp://hprib.lps.u- + psud.fr/pub/music_zips/musixtex.zip + + Andreas Egler's version of MusixTeX, now called + OpusTeX, will also work. Andreas moved some + characters around in the fonts, so you have to + edit the definitions in tex/eglerdefs.tex (patch + appreciated) +RRRREEEECCCCOOOOMMMMMMMMEEEENNNNDDDDEEEEDDDD + Although not strictly necessary, these are recommended to + have. - +o Perl. Most scripts are written in Perl. The + +o Perl. Most scripts are written in Perl. Most documentation was created with the perl's Plain Old Documentation. - +o (GNU) find + +o GNU find +o A fast computer (a full page of music typically takes 1 minute on my 486/133, using the @@ -90,7 +109,8 @@ CCCCOOOONNNNFFFFIIIIGGGGUUUURRRRIIIINNNNGGGG a This will install the following files: /usr/local/man/man1/mi2mu.1 - /usr/local/man/man5/mudela.5 + /usr/local/man/man1/convert-mudela.1 + /usr/local/man/man1/mudela-book.1 /usr/local/man/man1/lilypond.1 /usr/local/lib/libflower.{so,a} /usr/local/bin/lilypond @@ -100,11 +120,22 @@ CCCCOOOONNNNFFFFIIIIGGGGUUUURRRRIIIINNNNGGGG a The TeX include directory is detected dynamically, but it can be adjusted with --------eeeennnnaaaabbbblllleeee----tttteeeexxxx----pppprrrreeeeffffiiiixxxx and --------eeeennnnaaaabbbblllleeee----tttteeeexxxx---- - ddddiiiirrrr. The above assumes that you are root and have the gnu - development tools, and your make is gnu make. If this is + ddddiiiirrrr. The above assumes that you are root and have the GNU + development tools, and your make is GNU make. If this is not the case, you can adjust your environment variables to your taste: + + +1/Aug/97 LilyPond 0.1.0 2 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" configure @@ -125,17 +156,6 @@ CCCCOOOONNNNFFFFIIIIGGGGUUUURRRRIIIINNNNGGGG a configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf - - -29/Jul/97 LilyPond 0.0.77 2 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - Since GNU LilyPond currently is beta, you are advised to also use @@ -153,22 +173,35 @@ INSTALL(1) LilyPond documentation INSTALL(1) option) --enable-optimise - Set maximum optimisation + Set maximum optimisation: compile with ----OOOO2222 --enable-profiling Compile with support for profiling --enable-tex-prefix - Set the directory where texmf lives + Set the directory where TeX and Metafont live --enable-tex-dir - Set then directory tex input is in (detected as a + Set then directory TeX input is in (detected as a subdir of tex-prefix) --enable-mf-dir Set then directory mf input is in (idem) + [obsolete] All options are documented in the _c_o_n_f_i_g_u_r_e help + + + +1/Aug/97 LilyPond 0.1.0 3 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + The option --------eeeennnnaaaabbbblllleeee----ooooppppttttiiiimmmmiiiisssseeee is recommended for Real Life usage. @@ -190,18 +223,6 @@ IIIINNNNSSSSTTTTAAAALLLLLLLLIIIINNNNGGGG Install the musixtex fonts in a directory which TeX and MF knows (if you are root, look for a directory which - - - -29/Jul/97 LilyPond 0.0.77 3 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - contains the directories with AMS and CM source (*.mf) files. Create a subdir lilypond or musixtex and copy the fonts into that). Do not forget to rehash TeX (if @@ -227,39 +248,18 @@ EEEEXXXXAAAAMMMMPPPPLLLLEEEE This is what the output looks like over here: - hw:~/musix/spacer$ lilypond input/kortjakje.ly - GNU LilyPond 0.0.71 #20/FlowerLib 1.1.20 #0 - Parsing ... [/home/hw/share/lilypond/init//symbol.ini <..snip..> - .. .ini]][input/kortjakje.ly] - Creating elements ... - Preprocessing elements... - Calculating column positions ... [3][8][13][17][21][25] - Postprocessing elements... - TeX output to lelie.tex ... - hw:~/musix/spacer$ tex lelie - This is TeX, Version 3.14159 (C version 6.1) - (lelie.tex - Hyphenation patterns for english, dutch, german, loaded. - (/home/hw/lib/texmf/tex/lilypond/lilyponddefs.tex) [1] ) - Output written on lelie.dvi (1 page, 8944 bytes). - Transcript written on lelie.log. - hw:~/musix/spacer$ xdvi lelie& - [1] 855 - Check out the input files, some of them have comments - Please refer to the man page for more information. -RRRREEEEDDDDHHHHAAAATTTT LLLLIIIINNNNUUUUXXXX - RedHat Linux users should be able to get a RPM. A spec - file is in _m_a_k_e_/_o_u_t_/_l_i_l_y_p_o_n_d_._s_p_e_c. You should be able to - create an rpm as a normal user. Be sure you have a - ~/.rpmrc, and edit the RPM-dir in _V_a_r_i_a_b_l_e_s_._m_a_k_e. (If you -29/Jul/97 LilyPond 0.0.77 4 + + + + +1/Aug/97 LilyPond 0.1.0 4 @@ -268,6 +268,28 @@ RRRREEEEDDDDHHHHAAAATTTT LLLLIIIINNNNUUUUXXXX INSTALL(1) LilyPond documentation INSTALL(1) + GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0 + Parsing ... [/home/hw/share/lilypond/init// + <..etc..> + init//performer.ly]]][input/kortjakje.ly] + Creating elements ...[8][16][24][25] + Preprocessing elements... + Calculating column positions ... [14][25] + Postprocessing elements... + TeX output to lelie.tex ... + Creating MIDI elements ...MIDI output to lelie.midi ... + + hw:~/musix/spacer$ xdvi lelie& + [1] 855 + + Check out the input files, some of them have comments + Please refer to the man page for more information. + +RRRREEEEDDDDHHHHAAAATTTT LLLLIIIINNNNUUUUXXXX + RedHat Linux users should be able to get a RPM. A spec + file is in _m_a_k_e_/_o_u_t_/_l_i_l_y_p_o_n_d_._s_p_e_c. You should be able to + create an rpm as a normal user. Be sure you have a + ~/.rpmrc, and edit the RPM-dir in _V_a_r_i_a_b_l_e_s_._m_a_k_e. (If you create the RPM as a normal user the permissions will not be set correctly, unfortunately) @@ -277,7 +299,8 @@ WWWWIIIINNNNDDDDOOOOZZZZEEEE you need the cygnus windows32 gnu port development stuff; have a look at http://www.cygnus.com/gnu-win32. - to make GNU LilyPond under, brr, aargh, well, simply type: + to make GNU LilyPond under, brr, aargh, shudder.. + windows32, well, simply type: bash configure make windows32 @@ -302,29 +325,6 @@ AAAAUUUUTTTTHHHHOOOORRRRSSSS - - - - - - - - - - - - - - - - - - - - - - - -29/Jul/97 LilyPond 0.0.77 5 +1/Aug/97 LilyPond 0.1.0 5 diff --git a/NEWS b/NEWS index 2d7ff005fb..a06bb28631 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,17 @@ +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.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. diff --git a/README b/README index 20c2ad72aa..39909a29c3 100644 --- a/README +++ b/README @@ -5,6 +5,15 @@ GNU LilyPond which converts music definition files into visual or audio output: it can typeset formatted sheet music in TeX and and (mechanical) perfomances to MIDI files. +0. + +LilyPond is known to have a minor bug if you use glibc; we will look into it +Please download 0.1.1 when it's available. + +LilyPond exhibits a g++ bug on Solaris 2.5 (The stack frame gets corrupted by +a constructor) if you compile with -O2. We don't know workarounds + + 1. VERSIONING if you have downloaded a @@ -57,3 +66,20 @@ to us: hanwen@stack.nl, jan@digicash.com. Have fun! +6. DOZE + +If you have received this file as part of a DOS/Window32 distribution +(lilypond-*.zip ), then it is advisable to also download the source +package, since it contains the complete documentation + + ftp://pcnov095.win.tue.nl/pub/lilypond/ (Europe) + ftp://alpha.gnu.ai.mit.edu/gnu/ (US) + +The website also contains the complete documentation + + http://www.stack.nl/~hanwen/lilypond/index.html + + + + + diff --git a/TODO b/TODO index 8a0802b5ef..78cecc175e 100644 --- a/TODO +++ b/TODO @@ -1,7 +1,3 @@ -0.1: - - * versioning stuff (cvt mudela, mudela, etc.) - Features you cannot find in the doco as working, should be mentioned here. This is an assorted collection of stuff that will be done, might be @@ -10,22 +6,22 @@ done, or is an idea that I want to think about Most of the items are marked in the code as well, with full explanation. grep for TODO and ugh/ugr + * versioning stuff (cvt mudela, mudela, etc.) + + * get rid of gif files. + + * set_midi_channel/staff() out of performer. + * dots into separate item. * use String iso Text_def for lyrics. * use position 0 for center of staff iso bottom. - * return status + * return status on exit * lyrics in chords still fuck up. - * add to MIDI output: - - tempo change - - repeat - - slurs - - dynamics etc. - * rewire acknowledge_element() logic with a process_acknowledged() * progress when creating MIDI elts. @@ -42,12 +38,16 @@ grep for TODO and ugh/ugr * decent TeX page layout - * enter script priority - - * a hands on tutorial + * a tutorial PROJECTS + * add to MIDI output: + - tempo change + - repeat + - slurs + - dynamics etc. + * grace notes - adapt for multiple font sizes. - make separate class for Grace_*_engravers diff --git a/VERSION b/VERSION index 85b19ba549..e014f462b8 100644 --- a/VERSION +++ b/VERSION @@ -1,7 +1,8 @@ TOPLEVEL_MAJOR_VERSION = 0 -TOPLEVEL_MINOR_VERSION = 0 -TOPLEVEL_PATCH_LEVEL = 78 -# use to send patches, always empty for released version: -# include separator: ".postfix", "-pl" makes rpm barf +TOPLEVEL_MINOR_VERSION = 1 +TOPLEVEL_PATCH_LEVEL = 0 +# use to send patches, always empty for released version: +# include separator: ".postfix", don't use -, +# it makes rpm barf TOPLEVEL_MY_PATCH_LEVEL = diff --git a/bin/conflily b/bin/conflily index 2a495a1308..f63f8e972f 100755 --- a/bin/conflily +++ b/bin/conflily @@ -31,5 +31,5 @@ if [ "x$LILYINCLUDE" = "x" ]; then echo "export PATH=$PATH:$lelie/current/bin/out/" fi -configure --prefix=$root --enable-debugging --enable-printing --enable-checking +configure --prefix=/usr --enable-debugging --enable-printing --enable-checking diff --git a/bin/make-website.in b/bin/make-website.in index 218b94dc32..28f85f79ba 100644 --- a/bin/make-website.in +++ b/bin/make-website.in @@ -104,14 +104,17 @@ sub gen_manuals { print "generating TeX doco list\n"; open HTMLLIST, ">tex_manuals.html"; - print HTMLLIST "LilyPond manuals in TeX\n" . - "
    \n"; + print HTMLLIST "LilyPond manuals\n" ; + print HTMLLIST "

    LilyPond manuals (in PostScript)

    "; + print HTMLLIST "
    "; + + print HTMLLIST ""; close HTMLLIST; my_system( "$MAKE -C .. " . join(' ', @todo)); diff --git a/configure b/configure index 53b21410e9..d2c4808da7 100755 --- a/configure +++ b/configure @@ -1793,11 +1793,13 @@ END if test $warn_b = "yes" ; then cat < + \paper{} + \midi{} } diff --git a/lily/VERSION b/lily/VERSION index 21c1e02238..a31769b185 100644 --- a/lily/VERSION +++ b/lily/VERSION @@ -1,7 +1,7 @@ MAJOR_VERSION = 0 -MINOR_VERSION = 0 -PATCH_LEVEL = 78 +MINOR_VERSION = 1 +PATCH_LEVEL = 0 # use to send patches, always empty for released version: # include separator: ".postfix", "-pl" makes rpm barf -MY_PATCH_LEVEL = +MY_PATCH_LEVEL = diff --git a/lily/break.cc b/lily/break.cc index fbda8d4279..8d3779e4da 100644 --- a/lily/break.cc +++ b/lily/break.cc @@ -53,7 +53,7 @@ Break_algorithm::stupid_solution(Line_of_cols curline)const Line_spacer *sp =generate_spacing_problem(curline); Col_hpositions colhpos; colhpos.cols = curline; - colhpos.energy = INFTY; + colhpos.energy = INFTY_f; colhpos.ugh_b_ = true; colhpos.config = sp->default_solution(); delete sp; diff --git a/lily/colhpos.cc b/lily/colhpos.cc index e96b3f99ad..e87c22f3c5 100644 --- a/lily/colhpos.cc +++ b/lily/colhpos.cc @@ -6,7 +6,7 @@ Col_hpositions::Col_hpositions() { - energy = INFTY; + energy = INFTY_f; ugh_b_ = false; } diff --git a/lily/include/const.hh b/lily/include/const.hh index 80342a4450..4b45edc597 100644 --- a/lily/include/const.hh +++ b/lily/include/const.hh @@ -3,8 +3,11 @@ */ #ifndef CONST_HH #define CONST_HH +#include #include #include "real.hh" const Real INFTY=HUGE_VAL; +const Real INFTY_f=(Real)INT_MAX; + #endif diff --git a/lily/include/music-list.hh b/lily/include/music-list.hh index dda2f568ad..8b26d3ee18 100644 --- a/lily/include/music-list.hh +++ b/lily/include/music-list.hh @@ -22,11 +22,6 @@ class Music_list : public Music { public: int multi_level_i_; - /// what kind of iterator needed to walk this music? - String type_str_; - - /// what name (or look for this name) - String id_str_; Music_list(Music_list const&); Music_list(); DECLARE_MY_RUNTIME_TYPEINFO; diff --git a/lily/include/music.hh b/lily/include/music.hh index 196f461eeb..41531a7902 100644 --- a/lily/include/music.hh +++ b/lily/include/music.hh @@ -27,6 +27,16 @@ class Music:public Input { public: Music_list * parent_music_l_; + + /** what kind of iterator needed to walk this music? This doesn't + make sense for simple (ie non-list) music, but it does no harm + here. Yes, it did harm Music_list: you can forget to copy it. + + */ + String type_str_; + + /// what name (or look for this name) + String id_str_; virtual MInterval time_int()const; virtual ~Music(){} diff --git a/lily/include/performer-group-performer.hh b/lily/include/performer-group-performer.hh index ae87b68b19..fdca52a576 100644 --- a/lily/include/performer-group-performer.hh +++ b/lily/include/performer-group-performer.hh @@ -32,6 +32,11 @@ public: virtual bool do_try_request( Request* req_l ); virtual bool try_request(Request*r) { return Performer::try_request(r) ; } + // + virtual void set_track( int& track_i_r ); + virtual int get_track_i() const; + // + protected: virtual Translator* find_get_translator_l( String name, String id ); @@ -46,8 +51,8 @@ protected: bool is_bottom_performer_b() const; virtual Performer_group_performer* find_performer_l( String name, String id ); - virtual void do_print()const; + private: Pointer_list perf_p_list_; diff --git a/lily/include/performer.hh b/lily/include/performer.hh index f9b47a6f84..35911605d9 100644 --- a/lily/include/performer.hh +++ b/lily/include/performer.hh @@ -28,6 +28,11 @@ public: virtual void process_requests(); virtual void set( Moment mom ); + // + virtual void set_track( int& track_i_r ); + virtual int get_track_i() const; + // + virtual bool try_request( Request* req_l ); virtual void do_removal_processing(); diff --git a/lily/include/staff-performer.hh b/lily/include/staff-performer.hh index 9161c63224..95c8721da8 100644 --- a/lily/include/staff-performer.hh +++ b/lily/include/staff-performer.hh @@ -24,12 +24,18 @@ protected: virtual void play_event( Midi_item* l ); virtual void do_removal_processing(); virtual void do_creation_processing(); + // + virtual void set_track( int& track_i_r ); + virtual int get_track_i() const; + // private: void header(); Moment midi_mom_; Midi_track* midi_track_p_; + + int track_i_; }; #endif // STAFF_PERFORMER_HH diff --git a/lily/ineq-constrained-qp.cc b/lily/ineq-constrained-qp.cc index 8fed514623..56d9a555ad 100644 --- a/lily/ineq-constrained-qp.cc +++ b/lily/ineq-constrained-qp.cc @@ -75,13 +75,14 @@ Ineq_constrained_qp::eval (Vector v) int min_elt_index(Vector v) { - Real m=INFTY; int idx=-1; + Real m=INFTY_f; + int idx=-1; for (int i = 0; i < v.dim(); i++){ if (v(i) < m) { idx = i; m = v(i); } - assert(v(i) <= INFTY); + assert(v(i) <= INFTY_f); } return idx; } @@ -130,7 +131,7 @@ Ineq_constrained_qp::solve(Vector start) const if (direction.norm() > EPS) { mtor << act.status() << '\n'; - Real minalf = INFTY; + Real minalf = INFTY_f; Inactive_iter minidx(act); diff --git a/lily/music-iterator.cc b/lily/music-iterator.cc index 99b942b91e..09ee833db0 100644 --- a/lily/music-iterator.cc +++ b/lily/music-iterator.cc @@ -128,18 +128,14 @@ Music_iterator::static_get_iterator_p(Music *m, else if (m->is_type_b( Voice::static_name())) p = new Voice_iterator( (Voice*) m); - if ( m->is_type_b( Music_list::static_name())) { - Music_list* ml = (Music_list*) m; - if (ml -> type_str_ != "") { - Translator * a =report_l-> - find_get_translator_l(ml-> type_str_, ml->id_str_); - - + if (m -> type_str_ != "") { + Translator * a =report_l-> + find_get_translator_l(m-> type_str_, m->id_str_); p->set_translator( a); - - } - } - if (! p->report_to_l() ) + } + + + if (! p->report_to_l() ) p ->set_translator(report_l); return p; @@ -214,7 +210,7 @@ IMPLEMENT_IS_TYPE_B1(Chord_iterator,Music_iterator); Moment Chord_iterator::next_moment()const { - Moment next_ = INFTY; + Moment next_ = INFTY_f; for (PCursor i(children_p_list_.top()); i.ok(); i++) next_ = next_ next_moment() ; return next_; diff --git a/lily/music-list.cc b/lily/music-list.cc index b169a74727..4952096697 100644 --- a/lily/music-list.cc +++ b/lily/music-list.cc @@ -7,20 +7,19 @@ */ +#include #include "music.hh" #include "debug.hh" #include "music-list.hh" Music_list::Music_list(Music_list const&s) + : Music(s) { multi_level_i_ = s.multi_level_i_; for (iter(s.music_p_list_.top(), i); i.ok(); i++) add(i->clone()); } - - - IMPLEMENT_IS_TYPE_B1(Music_list, Music); IMPLEMENT_IS_TYPE_B1(Voice,Music_list); IMPLEMENT_IS_TYPE_B1(Chord,Music_list); @@ -28,7 +27,8 @@ IMPLEMENT_IS_TYPE_B1(Chord,Music_list); MInterval Chord::time_int()const { - MInterval m; +// MInterval m( -(Real)INT_MAX, (Real)INT_MAX ); + MInterval m( 0, 0 ); for (iter(music_p_list_.top(), i); i.ok(); i++) m.unite(i->time_int()); return m; diff --git a/lily/music.cc b/lily/music.cc index f42394b9e6..4949e2737b 100644 --- a/lily/music.cc +++ b/lily/music.cc @@ -16,11 +16,14 @@ Music::time_int() const { return MInterval(0,0); } + void Music::print()const { #ifndef NPRINT - mtor << name() << "{" ; + mtor << name() << "{"; + if (type_str_!="" || id_str_!="") + mtor << "`" <duration(); diff --git a/lily/performer-group-performer.cc b/lily/performer-group-performer.cc index 3e3a745c22..66471128e2 100644 --- a/lily/performer-group-performer.cc +++ b/lily/performer-group-performer.cc @@ -132,6 +132,26 @@ Performer_group_performer::process_requests() i->process_requests(); } +// +int +Performer_group_performer::get_track_i() const +{ + int track_i = Performer::get_track_i(); + + for ( int i = 0; i < nongroup_l_arr_.size(); i++ ) + nongroup_l_arr_[ i ]->set_track( track_i ); + + return track_i; +} + +void +Performer_group_performer::set_track( int& track_i_r ) +{ + for ( PCursor i( perf_p_list_.top() ); i.ok(); i++ ) + i->set_track( track_i_r ); +} +// + bool Performer_group_performer::do_try_request( Request* req_l ) { diff --git a/lily/performer.cc b/lily/performer.cc index e26f2ef2da..5e15fc53d6 100644 --- a/lily/performer.cc +++ b/lily/performer.cc @@ -65,6 +65,19 @@ Performer::set( Moment ) { } +// +int +Performer::get_track_i() const +{ + return daddy_perf_l_->get_track_i(); +} + +void +Performer::set_track( int& ) +{ +} +// + bool Performer::do_try_request( Request* req_l ) { diff --git a/lily/score-performer.cc b/lily/score-performer.cc index 5d3c98b842..df8ff16747 100644 --- a/lily/score-performer.cc +++ b/lily/score-performer.cc @@ -105,6 +105,9 @@ Score_performer::header(Midi_stream &output_stream) + String_convert::i2dec_str( 0, 0, '0' ) ); midi_track.add( Moment( 0 ), &track_name ); + Midi_tempo tempo ( get_tempo_i()); + midi_track.add( Moment(0), &tempo); + output_stream << midi_track; } @@ -131,6 +134,11 @@ Score_performer::set_score(Score* score_l ) void Score_performer::start() { + // + int track_i = 1; + Performer_group_performer::set_track( track_i ); + // + if ( midi_l_->outfile_str_ == "" ) midi_l_->outfile_str_ = default_out_fn + ".midi"; } diff --git a/lily/score.cc b/lily/score.cc index 77324c3879..531c120f99 100644 --- a/lily/score.cc +++ b/lily/score.cc @@ -58,7 +58,7 @@ Score::run_translator(Global_translator * trans_l) trans_l->start(); while ( iter->ok() || trans_l->moments_left_i() ) { - Moment w = INFTY; + Moment w = INFTY_f; if (iter->ok() ) { w = iter->next_moment(); iter->print(); diff --git a/lily/spring-spacer.cc b/lily/spring-spacer.cc index 0804161edd..7684e5de5f 100644 --- a/lily/spring-spacer.cc +++ b/lily/spring-spacer.cc @@ -8,6 +8,7 @@ #include +#include #include "spring-spacer.hh" #include "p-col.hh" #include "debug.hh" @@ -95,8 +96,8 @@ Spring_spacer::position_loose_cols(Vector &sol_vec)const assert(sol_vec.dim()); Array fix_b_arr; fix_b_arr.set_size(cols.size() + loose_col_arr_.size()); - Real utter_right_f=-INFTY; - Real utter_left_f =INFTY; + Real utter_right_f=-INFTY_f; + Real utter_left_f =INFTY_f; for (int i=0; i < loose_col_arr_.size(); i++) { fix_b_arr[loose_col_arr_[i].rank_i_] = false; } @@ -444,7 +445,7 @@ Spring_spacer::calc_idealspacing() } if ( d_iter.ok() && now >= d_iter.when()) { Durations_iter d2 = d_iter; - Moment shortest = INFTY; + Moment shortest = (Real)INT_MAX; //ugh INFTY; while (d2.ok() && d2.when() <= now) { shortest = shortest add( Moment( 0 ), &instrument ); @@ -79,3 +79,18 @@ Staff_performer::play_event( Midi_item* l ) midi_track_p_->add( delta_t, l); } + +// +int +Staff_performer::get_track_i() const +{ + return track_i_; +} + +void +Staff_performer::set_track( int& track_i_r ) +{ + track_i_ = track_i_r++; +} +// + diff --git a/lily/template5.cc b/lily/template5.cc index 68e30479d9..bffae6d080 100644 --- a/lily/template5.cc +++ b/lily/template5.cc @@ -17,8 +17,9 @@ Interval__instantiate(Rational); Interval__instantiate(int); -#ifdef AIX -const Real INFTY = 1e8; // ARGh. AIX sucks +const Real INFTY_f = (Real)INT_MAX; +#if defined AIX || defined _WIN32 +const Real INFTY = 1e8; // ARGh. AIX sucks -- so does doze #else const Real INFTY = HUGE_VAL; #endif diff --git a/lily/wordwrap.cc b/lily/wordwrap.cc index 8653c071e9..7d25bb9e94 100644 --- a/lily/wordwrap.cc +++ b/lily/wordwrap.cc @@ -57,7 +57,7 @@ Word_wrap::do_solve()const current = stupid_solution(current.cols); current.energy = - 1; // make sure we break out. } else - current.energy = INFTY; // make sure we go back + current.energy = INFTY_f; // make sure we go back } else { current = solve_line(current.cols); current.print(); diff --git a/make/lilypond.lsm b/make/lilypond.lsm index 2120a5b1a6..6ff4c32b1a 100644 --- a/make/lilypond.lsm +++ b/make/lilypond.lsm @@ -1,22 +1,22 @@ Begin3 Title: LilyPond -Version: 0.0.78 -Entered-date: 07/30/97 -Description: -GNU LilyPond is a program which converts music definition files into -visual or auditive output: it can typeset formatted sheet music to a -TeX file and and (mechanical) performances to MIDI files. Features -include multiple staffs, meters, clefs, keys, lyrics, versatile -input-language, cadenzas beams, slurs, triplets. - +Version: 0.1.0 +Entered-date: 08/01/97 +Description: GNU LilyPond is a program which converts music + definition files into visual or auditive output: it can + typeset formatted sheet music to a TeX file and and + (mechanical) performances to MIDI files. Features + include multiple staffs, meters, clefs, keys, lyrics, + versatile input-language, cadenzas beams, slurs, + triplets. Keywords: music typesetting midi notation Author: hanwen@stack.nl (Han-Wen Nienhuys) jan@digicash.com (Jan Nieuwenhuizen) Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys) Primary-site: sunsite.unc.edu /pub/Linux/apps - 340k lilypond-0.0.78.tar.gz + 340k lilypond-0.1.0.tar.gz Original-site: pcnov095.win.tue.nl /pub/lilypond/ - 340k lilypond-0.0.78.tar.gz -Platform: Unix/win32, GNU C++ + 340k lilypond-0.1.0.tar.gz +Platform: Unix/windoze32, GNU C++ Copying-policy: GPL End diff --git a/make/lilypond.lsm.in b/make/lilypond.lsm.in index af2163607b..a3c98fc523 100644 --- a/make/lilypond.lsm.in +++ b/make/lilypond.lsm.in @@ -2,13 +2,13 @@ Begin3 Title: LilyPond Version: @TOPLEVEL_VERSION@ Entered-date: @DATE@ -Description: -GNU LilyPond is a program which converts music definition files into -visual or auditive output: it can typeset formatted sheet music to a -TeX file and and (mechanical) performances to MIDI files. Features -include multiple staffs, meters, clefs, keys, lyrics, versatile -input-language, cadenzas beams, slurs, triplets. - +Description: GNU LilyPond is a program which converts music + definition files into visual or auditive output: it can + typeset formatted sheet music to a TeX file and and + (mechanical) performances to MIDI files. Features + include multiple staffs, meters, clefs, keys, lyrics, + versatile input-language, cadenzas beams, slurs, + triplets. Keywords: music typesetting midi notation Author: hanwen@stack.nl (Han-Wen Nienhuys) jan@digicash.com (Jan Nieuwenhuizen) @@ -17,6 +17,6 @@ Primary-site: sunsite.unc.edu /pub/Linux/apps 340k lilypond-@TOPLEVEL_VERSION@.tar.gz Original-site: pcnov095.win.tue.nl /pub/lilypond/ 340k lilypond-@TOPLEVEL_VERSION@.tar.gz -Platform: Unix/win32, GNU C++ +Platform: Unix/windoze32, GNU C++ Copying-policy: GPL End diff --git a/make/lilypond.spec b/make/lilypond.spec index 7f1c6f5ad9..ffb03cd6fd 100644 --- a/make/lilypond.spec +++ b/make/lilypond.spec @@ -1,9 +1,9 @@ Name: lilypond -Version: 0.0.78 +Version: 0.1.0 Release: 1 Copyright: GPL Group: Applications/Publishing -Source0: pcnov095.win.tue.nl:/pub/lilypond/lilypond-0.0.78.tar.gz +Source0: pcnov095.win.tue.nl:/pub/lilypond/lilypond-0.1.0.tar.gz Summary: A preprocessor to make TeX typeset music. URL: http://www.stack.nl/~hanwen/lilypond Packager: Han-Wen Nienhuys @@ -27,7 +27,7 @@ rm -rf $RPM_BUILD_ROOT strip lily/out/lilypond mi2mu/out/mi2mu make prefix="$RPM_BUILD_ROOT/usr" install %files -%doc Documentation/out/AUTHORS.text Documentation/out/CodingStyle.text Documentation/out/INSTALL.text Documentation/out/MANIFESTO.text Documentation/out/convert-mudela.text Documentation/out/error.text Documentation/out/faq.text Documentation/out/gnu-music.text Documentation/out/index.text Documentation/out/language.text Documentation/out/lilygut.text Documentation/out/lilyliterature.text Documentation/out/lilypond.text Documentation/out/links.text Documentation/out/mi2mu.text Documentation/out/mudela-book.text Documentation/out/other-packages.text BUGS TODO NEWS DEDICATION ANNOUNCE README +%doc Documentation/out/AUTHORS.text Documentation/out/CodingStyle.text Documentation/out/INSTALL.text Documentation/out/MANIFESTO.text Documentation/out/convert-mudela.text Documentation/out/faq.text Documentation/out/gnu-music.text Documentation/out/index.text Documentation/out/language.text Documentation/out/lilygut.text Documentation/out/lilyliterature.text Documentation/out/lilypond.text Documentation/out/links.text Documentation/out/mi2mu.text Documentation/out/mudela-book.text Documentation/out/other-packages.text BUGS TODO NEWS DEDICATION ANNOUNCE README %doc input/beams.ly input/cadenza.ly input/collisions.ly input/coriolan-alto.ly input/header.ly input/keys.ly input/kortjakje.ly input/multi.ly input/pedal.ly input/rhythm.ly input/scales.ly input/scripts.ly input/scsii-menuetto.ly input/scsii-menuetto.tex input/slurs.ly input/standchen.ly input/standchen.tex input/toccata-fuga-E.ly input/twinkle.ly input/wohltemperirt.ly Documentation/mudela-course.doc Documentation/mudela-man.doc %doc Documentation/lelie_logo.gif /usr/bin/convert-mudela -- 2.39.5