]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.52
authorfred <fred>
Sun, 24 Mar 2002 19:41:27 +0000 (19:41 +0000)
committerfred <fred>
Sun, 24 Mar 2002 19:41:27 +0000 (19:41 +0000)
Documentation/language.pod
TEST [deleted file]
make/lilypond.spec [new file with mode: 0644]
make/lilypond.spec.in

index 181c4dea1fc48cd1603dbf270ba6d95d79c1aa67..0961c0aeaa391ac52e0aeb1d4b4b63dc679a0a4a 100644 (file)
@@ -1,79 +1,22 @@
-
 =head1 NAME
 
 language.pod -- state of the art mudela-vapourware.
 
-=head1 SYNOPSIS
-
-(damn pod)
-
 =head1 DESCRIPTION
 
+[this document is slowly merged into the mudela doco, as the
+implementation progresses. If you want to see our previous musings,
+take out an old version of lilypond]
+
 here are some thoughts on the language. Most of the examples are in
 pseudo current mudela.  Some stuff gratuitously taken from your mails.
 
+
 =head1 NOTE
 
 I dislike vapourware. That's why I oppose to concrete plans on how to
 do input for features we don't know how to produce on paper 
 
-=head1 AIM
-
-A musical notation that is relatively easy to comprehend to both
-programmers and non programmers. The final aim is to be able to
-express what can be expressed in sheet music.
-
-=over 5
-
-=item *
-play pieces
-
-=item *
-typeset the pieces
-
-=back
-
-further requirements:
-
-=over 5
-
-=item *
-Possible to edit the layout without danger of changing the
-original music. (fingerings, interpretation)
-
-=item *
-Simple music manipulations, such as transposing, creating a
-score for individual instruments as well as for the conductor,
-extracting short pieces from a longer one, glueing several shorter
-pieces into a single score.
-
-=back
-
-Pieces could be:
-
-
-=over 5
-
-=item *
-Mahlerian orchestral score
-
-=item *
-piano pieces
-
-=item *
-pop songs (lyrics + chords)
-
-=item *
-gregorian chant (?)
-
-=item *
-bach multivoice organ music.
-
-=item *
-short excerpts to be used in musicological publications.
-
-=back
-
 =head1 REQUIREMENTS
 
 =head2 Parser output 
@@ -139,49 +82,6 @@ it will make things easier.
 
 =item *
 
-\keyword, bo difference notes vs. notenames,
-
-=item *
-
-{} hierachical, nest.,
-
-=item *
-
-<> chords,
-
-=item *
-
-drop staff (NOT)?,
-
-=item *
-
-melody = \melodic{ } vs. \melodic melody = { }
-
-=item *
-
-lexer mode switch by types: \lyric{ }, \melodic{ }, etc.,
-
-=item *
-
-octaves: low 'C C c c' c'' high; 'c' == c === "c-klein", comment: a '
-' a . Which ' for which a? Now using a!'`.
-
-=over 4
-
-=item *
-
-\meter{ 2/4 },
-
-=item *
-
-\grouping{ 2*8 3*8 },
-
-=item *
-
-\skip{ 2: 2*8 3*32 },
-
-=item *
-
 abbrev: [c2 c2]\noplet{1/2} (wat bout [c2 c2]1/2\noplet?),
 
 =item *
@@ -204,16 +104,8 @@ drop \music,
 
 =item *
 
-++ concat
-
-=item *
-
 C<+> is  merge
 
-=item *
-
-       \transpose{ \from c \to g \melodic{ c d e } }
-       \transpose{ \from c \to g melody } %!?
 
 =item *
 
@@ -253,34 +145,6 @@ can be declared? Like the score now:
 This will only be readable if the Mudela-user rigidly uses hungarian,
 which he/she won't.
 
-=head2 Backslash
-
-I like it. Let's keep it in the language if we need it, it's a
-universally accepted escape sequence.
-
-=head2 Braces
-
-I like the idea of <> vs. {}. Not because I think it is more clear,
-but I dislike the word "music", I can't seem to find the proper word
-for what "music" currently does, so I'd like to flush it.
-
-I would like to point that both <> and {} are indicating a
-hierarchy. I think, we should continue to allow them to nest. I still
-have no preference what to use for what.
-
-=head2 Command syntax
-
-Braces on commands are here now, because the {} are the only nesting
-braces.  We need to avoid that, since the brace is overused as it
-is. We don't like lisp that much. (the key is the only commands which
-really needs {} now)
-
-How about
-
-       \bar "some args", "some more";
-
-(note the ; ), which is a mix of perl and TeX.
-
 Of course \key should take a \notename. In fact, I think we should
 program the note intervals (which are now hardcoded for midi purposes)
 To allow adaptation to other scales.
@@ -316,75 +180,6 @@ mudela to LilyPond. That I don't mind, but it hampers
 portability. Suppose some commercial systems want to read mudela
 too.
 
-=head2 Lexer modes
-
-the $ and @ were quick hacks, which suck badly. Replacing it by a
-mechanism that switches the lexer automatically would be better, but
-it is still error prone, and it hurts uniformity. What I would like
-best is unified syntax, but this seems impossible since lyrics could
-clash with notenames. If possible it would simplify the parser, the
-scanner, and the explanation of the language.
-
-What about:
-
-       bes c d e f     % notes
-       'bes- sen sap   % some lyric syllables
-
-We can make one of the ' ` " a lyric-indication, but then we would
-have to change the octave indication, eg.
-
-       _bes % lower
-       ^bes % higher
-
-or
-
-       +bes % higher
-       -bes % lower
-
-And I am still not sure if it would be possible now, but I think this
-is worthwile to investigate. Or we could replace @ by a
-quote (take your pick) sign, which is a lot more intuitive. 
-
-The big question remaining is: do we want to add any more modes than
-lyric and note?
-
-
-[LOOSE THOUGHT]
-
-Even looser ideas: we can take a look at the perl wagon. It has numerous
-inputmodes. What about:
-
-       lyric << ENDLYRIC
-
-       bes- sen- sap
-
-       ENDLYRIC
-
-       music << ENDMUSIC
-
-       c d e f g
-
-       ENDMUSIC
-
-
-[LOOSE THOUGHT]
-
-If we free up $ @ from their current meaning, $ and @ could be used to
-signify other things.
-
-=head2 Concrete solution to lyric vs. note
-
-I think
-
-       "lyric"
-
-is a valid lyric too. This implies that any bare string is checked if
-it is a note. Now it prints an error if not, but I could change it to
-assume it is a STRING (and can be reduced to lyric). Heck! I could
-implement this tonight. We'd lose one mode!  (after checking lexer
-source) the only problem is preventing puctuation and the - and _ from
-clashing with script symbols.
-
 
 =head2 Command placement:
 
@@ -412,16 +207,6 @@ LilyPond, before even considering a syntax.
 
 uhh?
 
-=head2 Numbers
-
-The syntax of /, * and : has to be settled, we have
-
-       - notes (1, 2, 4, 8 etc)
-       - meter 2*4
-       - plet 2/3
-       - multiple notes: 3*4
-       - abbreviations (not implemented)  c4/4 or c4*4
-
 =head2 Filtering
 
 This is a idea of mine: we could filter some request types from
@@ -468,34 +253,6 @@ Just ideas:
        ++              concatenation of voices
        +               merging of voices
 
-
-=head2 C++ OOP like input.
-
-I don't see the big win of this.
-
-       score sc1= melody;
-       sc1.staff{\verse};
-       sc1.staff{<\b1 \b2>}
-       sc1.paper=mypaperdef;
-
-
-We're not doing a programming language. In this syntax the parser has
-to lookup what sc1 means, decide if it should copied shallow/deep,
-decide if has a staff block, switch the mode after it finds that staff
-takes music. May be I'm just ranting, but it looks hairy to
-me. Remember that at this stage we're just filling structs.
-
-In a distant future there might be a need for programming (are you
-listening, Philip Glass?), but I think that would be something for
-Mudela version 3. And I think using m4 (or something alike) would be
-just as convenient.
-
-=head2 Transposition
-
-Has to be done. How about:
-
-       \transpose { \from c \to g \music { ... }} 
-
 =head2 Quoting
 
 Difficult. Hmm...
diff --git a/TEST b/TEST
deleted file mode 100644 (file)
index 0200c36..0000000
--- a/TEST
+++ /dev/null
@@ -1,21 +0,0 @@
-Testing for 0.1 in 3 stages:
-
-       1. Announce "beta testers wanted" 
-       to linux.dev.apps, gnu.announce, mutex
-
-       Source only dist
-
-       GOAL: bugfixes & doco updates
-
-       create mailing list
-
-       2. Announce to LilyPond list, GNU "internal" list, RoseGarden
-list ?, LDA, Mutex
-
-       Source & binary dist too, beta release to fsf?
-
-       GOAL: distribution & portability testing
-
-       3. Announce to COLA, gnu.announce
-
-       Public release
diff --git a/make/lilypond.spec b/make/lilypond.spec
new file mode 100644 (file)
index 0000000..3928426
--- /dev/null
@@ -0,0 +1,40 @@
+Name: lilypond
+Version: 0.0.52
+Release: 1
+Copyright: GPL
+Group: Applications/Publishing
+Source0: pcnov095.win.tue.nl:/pub/lilypond/lilypond-0.0.52.tar.gz
+Summary: A preprocessor to make TeX typeset music.
+URL: http://www.stack.nl/~hanwen/lilypond
+Packager: Han-Wen Nienhuys <hanwen@stack.nl>
+Icon: lelie_icon.gif
+Buildroot: /tmp/lilypond_build
+
+%description
+LilyPond is a program which converts a music-script (mudela) into
+TeX output, or MIDI to produce multi-staff scores. Features include multiple
+meters, clefs, keys, lyrics, versatile input-language, cadenzas
+beams, slurs, triplets, multi voices.
+
+%prep
+%setup
+%build
+configure --enable-checking --enable-printing --prefix=/usr --enable-optimise
+make all
+%install
+strip bin/lilypond bin/mi2mu
+make prefix="$RPM_BUILD_ROOT/usr" install
+%files
+%doc Documentation/out/CodingStyle.text Documentation/out/INSTALL.text Documentation/out/MANIFESTO.text Documentation/out/error.text Documentation/out/examples.text Documentation/out/faq.text Documentation/out/index.text Documentation/out/language.text Documentation/out/lilygut.text Documentation/out/lilypond.text Documentation/out/mudela.text Documentation/lelie_logo.gif
+/usr/bin/lilypond
+/usr/bin/mi2mu
+/usr/man/man1/lilypond.1
+/usr/man/man5/mudela.5
+/usr/lib/texmf/texmf/tex/lilypond/
+/usr/share/lilypond/
+
+%post
+texhash
+%post
+texhash
+
index ed2fe175b7f910524371f5a7f2a1d147f3b4e385..c3010433662a28bdeaa2b17b0fb182bd9cf1d58c 100644 (file)
@@ -8,21 +8,22 @@ Summary: A preprocessor to make TeX typeset music.
 URL: http://www.stack.nl/~hanwen/lilypond
 Packager: Han-Wen Nienhuys <hanwen@stack.nl>
 Icon: lelie_icon.gif
+Buildroot: /tmp/lilypond_build
 
 %description
 LilyPond is a program which converts a music-script (mudela) into
 TeX output, or MIDI to produce multi-staff scores. Features include multiple
 meters, clefs, keys, lyrics, versatile input-language, cadenzas
-beams, slurs, triplets.
+beams, slurs, triplets, multi voices.
 
 %prep
 %setup
 %build
-configure --enable-checking --enable-optimise --enable-printing --prefix=/usr
+configure --enable-checking --enable-printing --prefix=/usr --enable-optimise
 make all
 %install
-make install
-strip /usr/bin/lilypond /usr/bin/mi2mu 
+strip bin/lilypond bin/mi2mu
+make prefix="$RPM_BUILD_ROOT/usr" install
 %files
 %doc @TEXT_DOCS@ Documentation/lelie_logo.gif
 /usr/bin/lilypond