]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.23
authorfred <fred>
Sun, 24 Mar 2002 19:28:20 +0000 (19:28 +0000)
committerfred <fred>
Sun, 24 Mar 2002 19:28:20 +0000 (19:28 +0000)
Documentation/README.pod
NEWS
cadenza.ly [deleted file]
kortjakje.ly [deleted file]
maartje.ly [deleted file]
pavane.ly [deleted file]
scales.ly [deleted file]
symbol.ini [deleted file]

index 750aa773ea77ec72aff46e4999fe62e1addf1d4b..491c18e06ab9653e69efc4de61c4bff3663805f1 100644 (file)
@@ -9,10 +9,10 @@ Lilypond - a music typesetter
 =head1 DESCRIPTION
 
 LilyPond typesets music. It translates script files (mudela files or
-F<.ly>'s) into TeX input.  Typesetting music is a complex task,
+F<*.ly>'s) into TeX input.  Typesetting music is a complex task,
 whereas the message that printed music conveys is usually a simple
 one. LilyPond is a try at providing a simple interface for setting
-music LilyPond has these features:
+music. LilyPond has these features:
 
 
 =over 5
@@ -39,27 +39,25 @@ a different file.
 
 =head1 DESIGN CONSIDERATIONS
 
-LilyPond was written with some
-considerations in mind:
+LilyPond was written with some considerations in mind:
 
 =over 5
 
-=item *
-Describing a well-defined language for defining music. We call this
-language (rather arrogantly) The Musical Definition Language (mudela
-for short). LilyPond reads a mudela sourcefile
-and outputs a TeX file.  This musical definition language should:
+=item * Describing a well-defined language for defining music. We call
+this language (rather arrogantly) The Musical Definition Language
+(mudela for short). LilyPond reads a mudela sourcefile and outputs a
+TeX file.  This musical definition language should:
 
 =over 5
 
-=item 1
+=item 1.
 define the musical message of the writer as unambigiously as
 possible.
 
-=item 2
+=item 2.
 be easily readable. (as compared to, say, MusixTeX input)
 
-=item 3
+=item 3.
 be writable in ASCII (with a simple texteditor).
 
 =back
@@ -80,7 +78,7 @@ issue: in a future version, LilyPond might bypass TeX, but at the moment
 TeX is very convenient for producing output.
 
 =item  *
- Generate high-quality output. Ideally it should be of a professional
+Generate 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.
 
@@ -111,21 +109,25 @@ broken systems.
 
 =over 5
 
+=item  B<-I,--include>=F<FILE>
+
+add F<FILE> to the search path for input files.
+
 =item  B<-d,--debug>,
 
 debugging. LilyPond will read the file F<.dstreamrc>, which tells for what functions to produce copious debugging output. 
 
 =item  B<-w,--warranty>,
 
-warranty
+Show the warranty with which LilyPond comes. (It comes with B<NO WARRANTY>!)
 
-=item  B<-o,--output>,
+=item  B<-o,--output=>F<FILE>,
 
-default output file
+Set the default output file to F<FILE>.
 
 =item  B<-h,--help>,
 
-help
+Show a summary of usage
 
 =back
 
@@ -146,41 +148,37 @@ Compilation:
 
 =item *
  Unix. Any decent Linux distribution is fine. LilyPond is known to run
-on Linux and Solaris
+on Linux, AIX, Digital Unix and Solaris
 
 =item *
- GNU C++ v2.7  or better (with libg++ )
+GNU C++ v2.7  or better, with libg++. Version 2.7.2 or better recommended.
 
 =item *
- GNU make.
+GNU make.
 
 =item *
- flex (2.5.1 or better)
+flex (2.5.1 or better)
 
 =item *
-bison/yacc
+Bison or YACC.
 
-=item *
-The "flower" library,
-which should be available from the
-same source you got this from.
+=item * The "Flower" library, which should be available from the same
+source you got this from.
 
-=item *
-perl
+=item * perl.  The Makefile uses perl for trivial operations, and you
+could tinker with it to use sed or awk.
 
 =back
 
-
-The Makefile uses  perl for trivial operations,  and you could  tinker
-with it to use sed or awk.
-
-Operation:
+LilyPond does use a lot of resources. For operation you need the following:
 
 =over 5
 
-=item *        TeX
+=item *
+TeX
 
-=item *        the MusixTeX fonts
+=item *
+The MusixTeX fonts. (I use version T.59)
 
 =back
 
@@ -193,6 +191,7 @@ Do:
        cd flower; make; cd ..
        tar zxf lilypond-1.2.13.tar.gz
        cd lilypond-1.2.13
+       configure
        make
 
 You might want to edit Variables.make to tailor the compilation flags.
@@ -206,16 +205,16 @@ builtin bool
 =item *
 typeof
 
-=item   *
+=item *
 operator <?, operator >?
 
-=item   *
+=item *
 the new for-scope
 
 =item   *
 class Rational (libg++)
 
-=item   *
+=item *
 named return values
 
 =back
@@ -231,18 +230,19 @@ Han-Wen Nienhuys <hanwen@stack.nl>, Main author
 Jan Nieuwenhuizen <jan@digicash.com>, bits of FlowerLib, general comments.
 
 =item *
-Mats Bengtsson <matsb@s3.kth.se>, bugfixes, testing.
+Mats Bengtsson <matsb@s3.kth.se>, bugfixes, testing, general comments.
 
 =back
 
 Your name could be here! If you want to help, then take a look at the
-SMALLISH PROJECTS section of LilyPond. Some do not involve coding C++
+SMALLISH PROJECTS section of in the file F<TODO>. Some do not involve
+coding C++
 
 =head1 EXAMPLES
 
 At this time, LilyPond is only suited for Quick & Dirty jobs (the
-output quality still is too low). If you're not discouraged; this is
-what I type in my xterm:
+output quality of multistaff material still is too low). If you're not
+discouraged; this is what I type in my xterm:
 
        lilypond someinput.ly
        tex test
@@ -250,24 +250,25 @@ what I type in my xterm:
 
 This is what the output looks like over here:
 
-       hw:~/musix/spacer$ lilypond maartje.ly
-       LilyPond 0.0.17/FlowerLib 1.0.14. Compile: Dec 17 1996, 11:33:54 (g++ 2.7.2)
-       Parsing ... [symbol.ini][maartje.ly]
-       Processing ... Calculating ... Postprocessing ... 
-       output to lelie.uit...
+       hw:~/musix/spacer$ lilypond input/maartje
+       LilyPond 0.0.23/FlowerLib 1.0.20. Compile: Jan 20 1997, 00:51:06 (g++ 2.7.2)
+       Parsing ... [./init//symbol.ini[./init/dutch.ini][./init/script.ini][./init/table_sixteen.ini]][./input/maartje.ly]
+       Processing music ... warning: process_requests(): beamed note should have a stem (t = 5/8)
+       Preprocessing ... Calculating ... Postprocessing ... 
+       output to lelie.out...
 
        hw:~/musix/spacer$ tex test
        This is TeX, Version 3.14159 (C version 6.1)
        (test.tex
        Hyphenation patterns for english, dutch, loaded.
        (lilyponddefs.tex) (lelie.uit) [1] [2] )
-       Output written on test.dvi (2 pages, 8072 bytes).
+       Output written on test.dvi (2 pages, 8420 bytes).
        Transcript written on test.log.
 
        hw:~/musix/spacer$ xdvi test&
-       [1] 1468
+       [1] 855
 
-Check out kortjakje.ly, it has some comments
+Check out F<kortjakje.ly>, it has some comments
 
 
 =head1 PROBLEMS
@@ -275,7 +276,7 @@ Check out kortjakje.ly, it has some comments
 If LilyPond bombs out, then please recompile using B<-g>, and send a
 copy of the input which causes the error and a gdb stacktrace of the
 crash. It also helps if you can print the values of the objects. So if
-you trace is
+your trace is
 
        (gdb) backtrace 12
        #0  Interval::operator+= (this=0x11fffec60..)
@@ -286,7 +287,7 @@ you trace is
          :
 
 Than it would help if you send a dump of the Interval and the Item
-(use: 'print *this' or use LilyPond print() methods).
+(use: C<print *this> or use LilyPond C<print()> methods).
 
 This is a beta version of LilyPond. Please send your helpful comments
 and patches to me (see AUTHORS section)
@@ -303,9 +304,36 @@ includes files from the directory F<init/>.
 
 =head1 SEE ALSO
 
-lilygut(1), lilyinput(1)
+There are some documentation files  in the subdirectory F<Documentation/>,
+among others: lilygut, lilyinput, error, faq, 
 
-=head1 REMARKS
+=head1  REMARKS
 
 LilyPond has no connection with the music package RoseGarden, other
 than the names being similar.
+
+
+=head1 HISTORY
+
+(for a  detailed changelog, see F<NEWS>)
+
+LilyPond's roots lie in MPP, a preprocessor to the rather arcane
+MusiXTeX macro package for TeX. A friend of mine, Jan Nieuwenhuizen
+wrote the first 44 versions (0.01 to 0.44), then his program caught my
+attention, and I was slowly sucked in to the interesting problem of
+easily producing beautifully printed music. I contributed some
+code. We soon realised that MPP's design was too fundamentally broken
+to be repaired. It was decided to rewrite MPP.  We debated a lot about
+the requirements to an inputformat (fall 1995). I sat down and started
+with a parser-first, bottom-up rewrite called mpp95 (which totally
+failed, obviously).
+
+After long and hard thinking, I came up with an algorithm for the
+horizontal spacing of multiple staffs (april 1996) I coded it (and did
+not test it). After starting with this fundamental piece, I slowly
+added the stages which come before spacing, and after a few months, I
+had a first working version, (october 1996).  I announced Patchlevel 0.0.7
+(or 8) to the mutex list after asking some technical 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).
diff --git a/NEWS b/NEWS
index a2033eb3665e15ea6a448a9e7fc0a34fc1587eed..93baaa2807e1839743436aa14c94d6c93894134f 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,13 +1,30 @@
+
+pl 23:
+       - TODO file inc'd
+       - cadenza mode.
+       - default extension, search path.
+       - error.pod,faq.pod
+       - Markers
+       - configure script
+       - scrapped VPATH
+       - inputfile name in output.
+Internal changes:
+       - 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)
-       - huge memleak fixed; unearthed lots of bugs
-       - bug noteheadswap
        - 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
diff --git a/cadenza.ly b/cadenza.ly
deleted file mode 100644 (file)
index b61616c..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-%
-% Cadenza to Mozart Horn/3
-%
-
-cad = music { $
-       \duration { 8}
-       \textstyle "italic" 
-       'c4._"f" g8
-       \textstyle  "roman" 
-                                       ['e^"accel" ()'d 'c b]
-       [b()'c] g-\fermata c [c_"rubato" e g 'c]
-       \octave{'}
-       e4. e [g ()f_"rit" e d]
-
-       \duration{16}
-       dis4()e4 r8 [c d] [e f g gis]
-       \duration{4}
-       a-> `f()`e g
-       f-> `d()`cis e
-       \duration{8}    
-       d4^\fermata r8 `a [`b cis]
-       \duration{16}
-       [d cis d e]
-       f4()[f e d c] `b4
-       \octave{} \plet{2/3} ['d8 'c8 a8] \plet{1/1} % triplet!
-       g2 [g c e g] ['c e g 'c]\octave{'} 
-       [e `g c e] g4^\fermata %()% BUG!
-       [g8.(_"a tempo" e g8. )e]
-       a4. g8 [f8 e8 d8 c8]
-       `g2 d2^"tr"
-       c4 $}
-
-score {
-       staff { melodic
-               music { cad }
-       }
-       commands { meter 4 4 skip 13:0 }
-}
diff --git a/kortjakje.ly b/kortjakje.ly
deleted file mode 100644 (file)
index ac78340..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-% "Ah, je vous dirai, maman" (Mozart)
-% 
-% bare bones version. (written down from memory :-)
-
-% the % is a comment.
-
-% declare music (which will be in *one* staff ) for the lead voice
-
-melodie = music {
-       $                       % switch Lilypond in note-mode
-       \octave {}              % set the default octave
-       % the default note duratino is 4
-       %%% theme
-       c c |                   % the '|' checks if there is a new measure here.
-       g g|
-       a a|
-
-       g2|     % g2 means a "g-1" pitched half-note 
-       f f|    e e|    d d|  c2
-       g g|    f f|    e e|    d d|    g g|    f f|    e e|    d d|
-       %%% var 1
-         c r8 c8               % r8 means an 8th rest.
-                 (|            % start a slur
-                               % NOTE: the slurstart should be directly after the note
-                       )       % end a slur.
-                         g r8 g8 (|    ) a r8 a8 (|    ) g r4 
-         f r8 f8 (|    ) e4 r8 e8 (    |) d4 r8 d8 (|  ) c4 r4 
-$}
-
-                               % more of this.
-begeleiding =
-$
-       \music {                % as you can see, the $ sign obliges 
-                               % you to precede keyword by a backslash: \
-       \octave { ` }           % default octave: 1 below the first octave.
-
-       %%% theme
-       `c                      % ` means one octave lower.
-                               % Similarly: ' means one higher.
-          c    e c     f c     e c     d `b    c `a    `f `g   `c2
-       \octave { ` }
-       e `g    d `g    c `g    `b `g   e `g    d `g    c `g    `b `g
-       %%%% var 1
-       r8 e8() c       r8 e8() c       r8 f8()c        r8 e8()c
-       r8 d8()`b       r8 c8()`a       r8 `a8()`f      r8 `e8()`c
-}$
-
-
-% create a staff named bstaf
-bstaf = staff {
-       melodic
-       music { begeleiding }   % use the declared music
-               commands {      % commands with Staff-wide impact.
-                       clef bass       % bass-clef
-               }
-       }
-
-% another one
-vstaf = staff {
-       melodic
-               music { melodie }
-               commands { clef violin }
-                               % default clef is violin clef
-       }
-
-
-score {
-       staff { vstaf }
-       staff { bstaf }
-       paper {
-               unitspace 2.5cm % a whole note takes 2.5 cm ideally.
-       }
-       commands {
-               meter 2 4       % a 2/4 meter.
-               skip 33:0       % skip 32 measures, and generate the bars
-%              meter 6 8       % another meter
-       }
-}
-
diff --git a/maartje.ly b/maartje.ly
deleted file mode 100644 (file)
index f585c27..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-ritme = staff {rhythmic
-       music {$
-       c8
-       [a8() a8. a8 a16 a16 a16] c4.
-               
-       %[c8( )'a8() c8 c8]% BUG!
-       c2 c2
-       
-       [fis16 'dis16( fis16 'dis16 ][fis16) 'dis16 fis16 'dis16]
-       c2 r32 r32 r16 r8 r4
-       [c8. c16]
-       [c16 c8.]
-       [c16 c16 c8]
-       [c16 c8 c16]
-%      [c16 r8 c16]
-
-        c2 c2 c2 c2 c2 c2 c2 c2 c2 c2
-
-       $}
-}
-
-melody=
-staff { melodic
-       music{$
-c8
-       r4 r4 r4 r4
-       'cis2.. r8
-       r4 r8 r16 r32 r32 
-
-       \duration {4}
-       {
-               \music { c () `bes [c8 c8] }
-               \music { 'fis ()'gisis fis8 fis8 }
-               \music { d () d dis8 dis8 }
-               \music {  a  () bes eis8 eis8 }
-               \music { fis () g gis8 gis8 }
-       }
-       { c4 'c4 }
-
-       [d8 e8 'f8 g8]  d8 e8 f8 g8
-       ''fis2
-       a8 b8 'c8 'd8 ''c8 ```c8 c4 c4  c4 c4
-       \duration{ 16 } `b `a `g `f \duration{ 4}
-       
-
-       c `b `a `g `f `e `d `c ``b ``a ``g ``f ``e ``d ``c
-       $}
-
-       commands {
-
-       skip 3:0%BUG
-       key $ fis cis gis $
-       skip 2:0
-       key $ $%BUG
-       skip 5:0
-       clef bass
-}
-}
-
-score {
-       paper {
-               geometric 1.4
-               unitspace 3.0 cm
-       }
-       staff { ritme }
-       staff { melody }
-       commands {
-               meter 4 4
-               partial 8
-               skip 1:2
-               bar ":|:"
-               skip 2:0
-               meter 2 4
-               skip 19:0
-       }
-}
-
-
-
diff --git a/pavane.ly b/pavane.ly
deleted file mode 100644 (file)
index a5ad5cc..0000000
--- a/pavane.ly
+++ /dev/null
@@ -1,119 +0,0 @@
-% pavane pour une Infante d\'efunte
-% 
-% Maurice Ravel
-%
-% (Ravel has been dead for over 50 years. This does not have copyright)
-%
-
-horn =
-staff {melodic
-       music{  $
-       \octave { ' }
-       \duration { 8}
-
-% 1
-       d2( [)d e cis `b]               |       
-       `a4 [`b cis] [cis `b] `b4       |
-       fis2( [)fis g e d]              |
-       cis4 [d e(] [)e fis d cis]      |
-       `b4 [cis d(] [)d e cis `b]      |
-       cis2 r2^"c\'edez"               |
-       r4 fis2 fis4                    |
-       fis2^"en mesure" ()[fis e a fis]|
-       fis4-- e4-- d4-- e4--           |
-       `b2()[`b^"un peu retenu" `a( d cis]|
-% 11
-       )`b [`fis^"en \'elargissant"-- `a-- `b--] cis4-- `b4--|
-       `fis2 r2                        |
-       cis4^"1er mouvement" d4^"tr\`es lontain" ()[d cis d e]
-       \octave {  }
-       |       a4 gis2.        |
-       a4 b4()[b a b 'cis]     |
-       fis4 e4 cis2            |
-       e4 fis4 () [fis e fis gis]      |
-       cis4 `b4()`b8 r8 r4^"tr\`es soutenu"    |
-
-       r4 r4   | %2/4 meter
-
-       'cis4_"\dyn ppp" 'd4 () ['d 'cis 'd 'e] |
-       a4 gis2.        |
-       a4 b4()[b a b 'cis]     |
-       fis4 e4 cis2    |
-       e4_"\dyn pp" fis4()[fis e fis gis]      |
-       cis4_"\dyn mf" `b4()`b8 r8 r4^"un peu plus lent"        |
-       r1      |
-       r2 r4 r4 %^\fermata
-%% cut 'n paste.
-       \octave { ' }
-       | d2^"Reprenez le mouvement"( [)d e cis `b]     |
-       `a4 [`b cis] [cis `b] `b4       |
-       fis2( [)fis g e d]      |
-       cis4 [d e(] [)e fis d cis]      |
-       `b4 [cis d(] [)d e cis `b]      |
-       cis2 r2^"c\'edez"       |
-       r4 fis2 fis4    |
-       fis2^"en mesure"()[fis e a fis] |
-       fis4-- e4-- d4-- e4--   |
-       `b2() [`b `a-. d-. cis-.]       |
-       `b-. [`fis^"large" `a `b] cis4 `b4      `fis2 r2        |
-
-       %% mark B
-       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--]     |
-       b4. b8()g2      |
-       r1      |
-       r2              [f a f d] 
-       \plet {2/3}
-       | [f a 'c] \plet{1/1} 'e4-^ () ['e f-> a-> 'c->]        |
-       'e4._"sf" 'e8()'c4 r4 |
-       r1      |
-       r4 r4-\fermata  
-       \octave { ' }
-       |d2( [)d e cis `b]      |
-       `a4 [`b cis] [cis `b] `b4       |
-       fis2( [)fis g e d]      |
-       cis4 [d e(] [)e fis d cis]      |
-       `b4 [cis d(] [)d e cis `b]      |
-       cis2 r2^"c\'edez"       |
-       r4 fis2 fis4    |
-       fis2()[fis e a fis]     |
-       fis4-- e4-- d4-- e4--   
-       \octave{ }      
-       | b2()[b a 'd 'cis]     |
-       b [fis a b ] 'cis4 b4   |
-       fis2 r2 |
-       r1-\fermata     
-               $}
-       commands {      
-               key  $fis cis $
-       }
-}
-score {
-       staff {
-               horn
-       }
-       paper {
-               output "pavane.out"
-               unitspace 1.5 cm
-               geometric 1.4
-       }
-       commands  {
-               meter 4 4
-               skip 18:0
-               meter 2 4
-               skip 1:0
-               meter 4 4 
-               skip 20:0
-               bar "|:"
-               skip 9:0
-               meter 2 4
-               skip 1:0
-               bar ":|"
-               meter 4 4
-               skip 13:0
-               bar "||"
-       }
-}
\ No newline at end of file
diff --git a/scales.ly b/scales.ly
deleted file mode 100644 (file)
index 99d6f56..0000000
--- a/scales.ly
+++ /dev/null
@@ -1,36 +0,0 @@
-
-blah =
-staff {melodic
-       music{  $ c1
-       \duration { 8}
-       [c-> d-> e-> f->][g-> a-> b-> 'c->]
-\octave{'}     ['c-^ b-^ a-^ g-^][f-^ e-^ d-^ c-^]
-
-\octave{}      ['c-^ b-^ a-^ g-^][f-^ e-^ d-^ c-^]
-
-       [c-. d-. e-. f-.][g-. a-. b-. 'c-.]
-       ['c-- b-- a-- g][f-- e-- d c--]
-       [c-\portato d-\portato e-\portato f-\portato][g-\portato a-\portato b-\portato 'c-\portato]
-       ['c-\upbow b-\upbow a-\downbow g-\downbow][f-\downbow e-\downbow d-\upbow c-\upbow]
-       [c-| d-| e-| f-|][g-| a-| b-| 'c-|]
-       ['c b a g][f e d c]
-       [c d e f][g a b 'c]
-       ['c b a g][f e d c]
-               $}
-       commands {      
-       }
-}
-score {
-       staff {
-       blah
-       }
-       paper {
-               symboltables { table_sixteen}
-               unitspace 1.5 cm
-               geometric 1.4
-       }
-       commands  {meter 4 4
-
-               skip 18:0
-       }
-}
\ No newline at end of file
diff --git a/symbol.ini b/symbol.ini
deleted file mode 100644 (file)
index eab55e8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-include "init/dutch.ini"
-include "init/script.ini"
-include "init/table_sixteen.ini"
-
-