-
-
-
-
-
-
-
-
-
- AUTHORS - who did what on GNU LilyPond?
-
-
-Contents
-
-
-This file lists authors of GNU LilyPond, and what they
-wrote. This list is alphabetically ordered.
-
-
-o Tom Cato Amundsen <tomcato@xoommail.com>, cembalo-par-
- tita in mudela, accordion symbols, some mudela-book.py
-
-o Mats Bengtsson <matsb@s3.kth.se>,
- http://www.s3.kth.se/~matsb/ clef stuff, key stuff,
- swedish notenames, testing, general comments.
-
-o Eric Bullinger <eric@aut.ee.ethz.ch>, accidental trans-
- position.
-
-o Jan Arne Fagertun <Jan.A.Fagertun@energy.sintef.no>,
- TeX titling and lytodvi.sh
-
-o Anthony Fok <foka@debian.org>, debian package: debian/*
-
-o Neil Jerram <nj104@cus.cam.ac.uk>. parts of Documenta-
- tion/Vocab*
-
-o Donald Ervin Knuth, http://www.cs-staff.stan-
- ford.edu/~knuth/ mf/ital-*.mf (these were taken from
- the CM fonts)
-
-o Werner Lemberg <xlwy01@uxp1.hrz.uni-dortmund.de>, misc
- bugfixes, some Beam and Stem code.
-
-o David R. Linn <drl@vuse.vanderbilt.edu>, Mailing list
- maintenance.
-
-o Adrian Mariano <> Reference manual, tutorial fixes,
- glossary.
-
-o Han-Wen Nienhuys <hanwen@cs.uu.nl>,
- http://www.cs.uu.nl/~hanwen/ Main author (initials:
- HWN).
-
-o Jan Nieuwenhuizen <janneke@gnu.org>,
- http://www.xs4all.nl/~jantien/ Main author (initials:
- JCN).
-
-o Alexandre Oliva <oliva@dcc.unicamp.br>, http://sun-
- site.unicamp.br/~oliva/ testing
-
-o Franc,ois Pinard <pinard@iro.umontreal.ca>, parts of
- Documentation/Vocab*, started internationalization
- stuff
-
-o Jeffrey B. Reed <daboys@bga.com>, Windows-NT support.
-
-o Shay Rojanski Some mudela source.
-
-
-Your name could be here! If you want to help, then take a
-look at the SMALLISH PROJECTS section of in the file TODO.
-Some do not involve coding C++
-
-[And of course we sincerely thank J.S.Bach, F.Schubert, T.
-Merula and W.A.Mozart for their beautiful music]
+x T ascii
+x res 240 24 40
+x init
+p1
+x font 3 B
+f3
+s10
+V400
+H240
+tAUTHORS
+wh24
+t-
+wh24
+twho
+wh24
+tdid
+wh24
+twhat
+wh24
+ton
+wh24
+tGNU
+wh24
+tLilyPond?
+n40 0
+V520
+H0
+tContents
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p2
+x font 1 R
+f1
+s10
+V160
+H696
+t-2-
+h672
+n40 0
+V280
+H0
+tThis
+wh48
+tfile
+wh48
+tlists
+wh48
+tauthors
+wh48
+tof
+wh48
+tGNU
+wh48
+tLilyPond,
+wh24
+tand
+wh24
+twhat
+wh24
+tthey
+n40 0
+V320
+H0
+twrote.
+wh48
+tThis
+wh24
+tlist
+wh24
+tis
+wh24
+talphabetically
+wh24
+tordered.
+n40 0
+V440
+H0
+to
+h96
+tTom
+wh24
+tCato
+wh24
+tAmundsen
+wh24
+t<tomcato@xoommail.com>,
+wh48
+tcembalo-par
+Chy
+h24
+n40 0
+V480
+H120
+ttita
+wh24
+tin
+wh24
+tmudela,
+wh24
+taccordion
+wh24
+tsymbols,
+wh24
+tsome
+wh24
+tmudela-book.py
+n40 0
+V560
+H0
+to
+h96
+tMats
+wh288
+tBengtsson
+wh288
+t<matsb@s3.kth.se>,
+n40 0
+V600
+H120
+thttp://www.s3.kth.se/~matsb/
+wh48
+tclef
+wh48
+tstuff,
+wh48
+tkey
+wh48
+tstuff,
+n40 0
+V640
+H120
+tswedish
+wh24
+tnotenames,
+wh24
+ttesting,
+wh24
+tgeneral
+wh24
+tcomments.
+n40 0
+V720
+H0
+to
+h96
+tEric
+wh24
+tBullinger
+wh24
+t<eric@aut.ee.ethz.ch>,
+wh24
+taccidental
+wh24
+ttrans
+Chy
+h24
+n40 0
+V760
+H120
+tposition.
+n40 0
+V840
+H0
+to
+h96
+tJan
+wh48
+tArne
+wh48
+tFagertun
+wh48
+t<Jan.A.Fagertun@energy.sintef.no>,
+n40 0
+V880
+H120
+tTeX
+wh24
+ttitling
+wh24
+tand
+wh24
+tlytodvi.sh
+n40 0
+V960
+H0
+to
+h96
+tAnthony
+wh24
+tFok
+wh24
+t<foka@debian.org>,
+wh24
+tdebian
+wh24
+tpackage:
+wh24
+tdebian/*
+n40 0
+V1040
+H0
+to
+h96
+tNeil
+wh24
+tJerram
+wh24
+t<nj104@cus.cam.ac.uk>.
+wh48
+tparts
+wh24
+tof
+wh24
+tDocumenta
+Chy
+h24
+n40 0
+V1080
+H120
+ttion/Vocab*
+n40 0
+V1160
+H0
+to
+h96
+tDonald
+wh96
+tErvin
+wh96
+tKnuth,
+wh120
+thttp://www.cs-staff.stan
+Chy
+h24
+n40 0
+V1200
+H120
+tford.edu/~knuth/
+wh24
+tmf/ital-*.mf
+wh24
+t(these
+wh48
+twere
+wh48
+ttaken
+wh48
+tfrom
+n40 0
+V1240
+H120
+tthe
+wh24
+tCM
+wh24
+tfonts)
+n40 0
+V1320
+H0
+to
+h96
+tWerner
+wh48
+tLemberg
+wh24
+t<xlwy01@uxp1.hrz.uni-dortmund.de>,
+wh24
+tmisc
+n40 0
+V1360
+H120
+tbugfixes,
+wh24
+tsome
+wh24
+tBeam
+wh24
+tand
+wh24
+tStem
+wh24
+tcode.
+n40 0
+V1440
+H0
+to
+h96
+tDavid
+wh24
+tR.
+wh24
+tLinn
+wh24
+t<drl@vuse.vanderbilt.edu>,
+wh48
+tMailing
+wh48
+tlist
+n40 0
+V1480
+H120
+tmaintenance.
+n40 0
+V1560
+H0
+to
+h96
+tAdrian
+wh48
+tMariano
+wh48
+t<>
+wh48
+tReference
+wh48
+tmanual,
+wh24
+ttutorial
+wh24
+tfixes,
+n40 0
+V1600
+H120
+tglossary.
+n40 0
+V1680
+H0
+to
+h96
+tHan-Wen
+wh264
+tNienhuys
+wh264
+t<hanwen@cs.uu.nl>,
+n40 0
+V1720
+H120
+thttp://www.cs.uu.nl/~hanwen/
+wh72
+tMain
+wh48
+tauthor
+wh48
+t(initials:
+n40 0
+V1760
+H120
+tHWN).
+n40 0
+V1840
+H0
+to
+h96
+tJan
+wh240
+tNieuwenhuizen
+wh264
+t<janneke@gnu.org>,
+n40 0
+V1880
+H120
+thttp://www.xs4all.nl/~jantien/
+wh48
+tMain
+wh48
+tauthor
+wh24
+t(initials:
+n40 0
+V1920
+H120
+tJCN).
+n40 0
+V2000
+H0
+to
+h96
+tAlexandre
+wh48
+tOliva
+wh48
+t<oliva@dcc.unicamp.br>,
+wh72
+thttp://sun
+Chy
+h24
+n40 0
+V2040
+H120
+tsite.unicamp.br/~oliva/
+wh24
+ttesting
+n40 0
+V2120
+H0
+to
+h96
+tFranc,ois
+wh48
+tPinard
+wh48
+t<pinard@iro.umontreal.ca>,
+wh48
+tparts
+wh24
+tof
+n40 0
+V2160
+H120
+tDocumentation/Vocab*,
+wh72
+tstarted
+wh96
+tinternationalization
+n40 0
+V2200
+H120
+tstuff
+n40 0
+V2280
+H0
+to
+h96
+tJeffrey
+wh24
+tB.
+wh24
+tReed
+wh24
+t<daboys@bga.com>,
+wh24
+tWindows-NT
+wh24
+tsupport.
+n40 0
+V2360
+H0
+to
+h96
+tShay
+wh24
+tRojanski
+wh24
+tSome
+wh24
+tmudela
+wh24
+tsource.
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p3
+x font 1 R
+f1
+s10
+V160
+H696
+t-3-
+h672
+n40 0
+V280
+H0
+tYour
+wh48
+tname
+wh48
+tcould
+wh48
+tbe
+wh24
+there!
+wh24
+tIf
+wh24
+tyou
+wh24
+twant
+wh24
+tto
+wh24
+thelp,
+wh24
+tthen
+wh24
+ttake
+wh24
+ta
+n40 0
+V320
+H0
+tlook
+wh24
+tat
+wh24
+tthe
+wh24
+tSMALLISH
+wh24
+tPROJECTS
+wh24
+tsection
+wh24
+tof
+wh24
+tin
+wh24
+tthe
+wh48
+tfile
+wx font 3 B
+f3
+h48
+tTODO
+f1
+t.
+n40 0
+V360
+H0
+tSome
+wh24
+tdo
+wh24
+tnot
+wh24
+tinvolve
+wh24
+tcoding
+wh24
+tC++
+n40 0
+V440
+H0
+t[And
+wh48
+tof
+wh48
+tcourse
+wh24
+twe
+wh24
+tsincerely
+wh24
+tthank
+wh24
+tJ.S.Bach,
+wh24
+tF.Schubert,
+wh24
+tT.
+n40 0
+V480
+H0
+tMerula
+wh24
+tand
+wh24
+tW.A.Mozart
+wh24
+tfor
+wh24
+ttheir
+wh24
+tbeautiful
+wh24
+tmusic]
+n40 0
+V2560
+H1440
+n40 0
+x trailer
+V2640
+x stop
SUBDIRS=man tex pictures topdocs ntweb
STEPMAKE_TEMPLATES=documentation
README_TOP_FILES=NEWS DEDICATION TODO ANNOUNCE-0.1
-# INFO_FILES = $(wildcard $(outdir)/$(package).info*)
+INFO_FILES = $(wildcard $(outdir)/$(package).info*)
EXTRA_DIST_FILES = gnu-music-history TODO
\end{center}
\end{figure}
-Another clearly visible example of music typography is visible in
-collisions. When chords or separate voices are printed, the notes
-that start at the same time should be printed aligned (ie., with the
-same $x$ position). If the pitches are close to each other, the note
-heads would collide. To prevent this, some notes (or note heads) have
-to be shifted horizontally. An example of this is given in Figure~\ref{fig:collision}.
+Another example of music typography is clearly visible in collisions.
+When chords or separate voices are printed, the notes that start at
+the same time should be printed aligned (ie., with the same $x$
+position). If the pitches are close to each other, the note heads
+would collide. To prevent this, some notes (or note heads) have to be
+shifted horizontally. An example of this is given in
+Figure~\ref{fig:collision}.
\begin{figure}[h]
\begin{center}
- \begin{mudela}
- c4
- \end{mudela}
+ [todo]
\caption{Collisions}
\label{fig:collision}
\end{center}
\bibliographystyle{hw-plain}
\bibliography{engraving,boeken,colorado,computer-notation,other-packages}
+\section{Requirements}
+
+\section{Approach}
+
+\subsection{Input}
+
+\section{Discussion}
+
\end{document}
dit(code(textstyle)) Set the text style for superscripts and
subscripts. See above for list of text styles.
-dit(code(textScriptPadding)) Determines the extra space added between
-super-/subscripted text and the closest staff line or note.
-
dit(code(fontsize)) Can be used to select smaller font sizes for
music. The normal font size is 0, and the two smaller sizes are -1
and -2.
-
-
-
-
-
-
-
-
-
- INSTALL - compiling and installing GNU LilyPond
-
- HWN & JCN
-
-
-Contents
-
- 1: ABSTRACT
-2: PREREQUISITES
-3: RUNNING
-4: RECOMMENDED
-5: WEBSITE
-6: CONFIGURING and COMPILING
-7: CONFIGURING FOR MULTIPLE PLATFORMS
-8: INSTALLING
-9: REDHAT LINUX
-10: DEBIAN GNU/LINUX
-11: WINDOWS NT/95
-12: AUTHORS
-
-
-1: ABSTRACT
-
-
-This document explains what you need to install LilyPond,
-and what you should do. If you are going to compile and
-install LilyPond often, e.g. when doing development, you
-might want to check out the buildscripts/set-lily.sh script.
-It sets some environment variables and symlinks, which comes
-in handly when you have to compile LilyPond more often.
-
-
-2: PREREQUISITES
-
-
-For compilation you need:
-
-
-o A GNU system: GNU LilyPond is known to run on these GNU
- systems: Linux (PPC, intel), FreeBSD, AIX, NeXTStep,
- IRIX, Digital Unix and Solaris.
-
-
-o Lots of disk space: LilyPond takes between 50 and 100
- mb to compile if you use debugging information. If you
- are short on disk-space run configure with --disable-
- debugging.
-
- Although we recommend to use Unix, LilyPond is known to
- run on Windows NT/95/98 as well. See Section 11.
-
-
-o GNU C++ version 2.8 or newer (egcs-1.1 or newer is also
- fine).
-
-o Python 1.5 (Strictly speaking, you shouldn't need
- Python for compiling and installing, but you'll need it
- to regenerate the font tables, e.g.).
-
-o GUILE 1.3 (no, GUILE 1.2 won't work), check out
- http://www.gnu.org/software/guile/guile.html.
-
-
-3: RUNNING
-
-
-GNU LilyPond does use a lot of resources. For operation you
-need the following:
-
-
-o TeX
-
-o A PostScript printer and/or viewer (such as
- Ghostscript) is strongly recommended. Xdvi will show
- all embedded PostScript too if you have Ghostscript
-
-
- installed.
-
-o GUILE 1.3 (no, GUILE 1.2 won't work), check out
- http://www.gnu.org/programs/guile.html
-
-For running LilyPond successfully you have to help TeX and
-MetaFont find various files. The recommended way of doing
-so is adjusting the environment variables in the start-up
-scripts of your shell. An example is given here for the
-Bourne shell:
-
-
-
-
- export MFINPUTS="/usr/local/share/lilypond/mf:"
- export TEXINPUTS="/usr/local/share/lilypond/tex:"
-
-
-
-
-The empty path component represents and MetaFont's default
-search paths. Scripts with the proper paths for the bourne
-and C-shell respectively are generated in build-
-scripts/out/lilypond-profile and buildscripts/out/lilypond-
-login during compilation.
-
-
-4: RECOMMENDED
-
-
-Although not strictly necessary, these are recommended to
-have.
-
-
-o GNU make. Check out ftp://ftp.gnu.org or any mirror of
- this site.
-
-o Flex (version 2.5.4 or newer). Check out
- ftp://ftp.gnu.org or any mirror of this site.
-
-o Bison (version 1.25 or newer). Check out
- ftp://ftp.gnu.org or any mirror of this site.
-
-o GUILE 1.3 (no, GUILE 1.2 won't work), check out
- http://www.gnu.org/programs/guile.html
-
-
-o Python (version 1.5 or newer). Check out
- ftp://ftp.python.org or ftp://ftp.cwi.nl/pub/python.
-
-
-o Yodl. All documentation will be in Yodl. (1.30.17)
- ftp://ftp.lilypond.org/pub/yodl
- http://www.cs.uu.nl/~hanwen/yodl
-
-
-o Texinfo. (version 3.12 or newer)
-
-
-o GNU find Check out ftp://ftp.gnu.org or any mirror of
- this site.
-
-
-o The geometry package for LaTeX is needed to use ly2dvi.
- Available at ftp://ftp.ctan.org/tex-
- archive/macros/latex/contrib/supported/geometry or at
- mirror site ftp://ftp.dante.de
-
-
-o A fast computer: a full page of music typically takes 1
- minute on my 486/133, using the --enable-checking com-
- pile.
-
-
-5: WEBSITE
-
-
-If you want to auto-generate Lily's website, you'll need
-some additional conversion tools.
-
-
-o xpmtoppm (from the Portable Bitmap Utilities) (For Red-
- Hat Linux users: it is included within the package
- libgr-progs).
-
-o Bib2html http://pertsserver.cs.uiuc.edu/~hull/bib2html.
- Which, in turn depends on man2html for proper installa-
- tion. man2html can be had from http://askdon-
- ald.ask.uni-karlsruhe.de/hppd/hpux/Network-
- ing/WWW/Man2html-1.05.
-
- TeTeX users should not forget to rerun texhash.
-
-Building the website requires pnmtopng. The version of pnm-
-topng that is distributed with RedHat 5.1 contains a bug
-(pnmtopng is dynamically linked to the wrong version of
-libpng). Recompile it from source, and make sure that the
-pnmtopng binary is linked statically to the libpng that is
-included in libgr.
-
-
- tar xzf libgr-2.0.13.tar.gz
- make
- cd png
- rm libpng.so*
- make pnmtopng
-
-
-
-
-
-You can then install the new pnmtopng into /usr/local/bin/
-
-
-6: CONFIGURING and COMPILING
-
-
-to install GNU LilyPond, simply type:
-
-
-
-
-
- gunzip -c lilypond-x.y.z | tar xf -
- cd lilypond-x.y.z
- configure # fill in your standard prefix with --prefix
- make
- make install
-
-
-
-
-
-This will install a number of files, something close to:
-
-
-
-
-
- /usr/local/man/man1/mi2mu.1
- /usr/local/man/man1/convert-mudela.1
- /usr/local/man/man1/mudela-book.1
- /usr/local/man/man1/lilypond.1
- /usr/local/bin/lilypond
- /usr/local/bin/mi2mu
- /usr/local/share/lilypond/*
- /usr/local/share/locale/{it,nl}/LC_MESSAGES/lilypond.mo
-
-
-
-
-
-The above assumes that you are root and have the GNU devel-
-opment 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"
- configure
-
-
-
-
-
-CPPFLAGS are the preprocessor flags.
-
-The configure script is Cygnus configure, and it will accept
---help. If you are not root, you will probably have to make
-it with a different --prefix option. Our favourite location
-is
-
-
-
-
-
-
- configure --prefix=$HOME/usr
-
-
-
-
-
-In this case, you will have to set up MFINPUTS, and TEXIN-
-PUTS accordingly.
-
-Since GNU LilyPond currently is beta, you are advised to
-also use
-
-
-
-
-
-
- --enable-debugging
- --enable-checking
-
-
-
-
-
-Options to configure include:
-
-
---enable-printing
- Enable debugging print routines (lilypond -D option)
-
---enable-optimise
- Set maximum optimisation: compile with -O2. This can
- be unreliable on some compiler/platform combinations
- (eg, DEC Alpha and PPC)
-
---enable-profiling
- Compile with support for profiling.
-
---enable-config
- Output to a different configuration file. Needed for
- multi-platform builds
-
-All options are documented in the configure help The option
---enable-optimise is recommended for Real Life usage.
-
-If you do
-
-
-
-
-
-
- make all
-
-
-
-
-
-everything will be compiled, but nothing will be installed.
-The resulting binaries can be found in the subdirectories
-out/ (which contain all files generated during compilation).
-
-
-7: CONFIGURING FOR MULTIPLE PLATFORMS
-
-
-If you want to compile LilyPond with different configuration
-settings, then, you can use the --enable-config option.
-Example: suppose I want to build with and without profil-
-ing. Then I'd use the following for the normal build,
-
-
-
-
-
-
- configure --prefix=~ --disable-optimise --enable-checking
- make
- make install
-
-
-and for the profiling version, I specify a different config-
-uration.
-
-
-
-
-
-
- configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
- make config=optprof
- make config=optprof install
-
-
-
-
-
-
-8: INSTALLING
-
-
-If you have done a successful make, then a simple
-
-
-
-
-
-
- make install
-
-
-
-
-
-should do the trick.
-
-If you are doing an upgrade, please remember to remove obso-
-lete .pk and .tfm files of the fonts. A script has been
-provided to do the work for you, see bin/clean-fonts.sh.
-
-
-CAVEATS
-
-
-
-o The -O2 option to gcc triggers a gcc bug on DEC Alpha
- in dstream.cc. You should turn off this flag for this
- file.
-
-
-EXAMPLE
-
-
-This is what I type in my xterm:
-
-
- lilypond someinput.ly
- tex someinput.tex
- xdvi someinput&
-
-
-
-
-
-This is what the output looks like over here:
-
-
-
-
-
-
- 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 someinput.tex ...
- Creating MIDI elements ...MIDI output to someinput.midi ...
-
-
- hw:~/musix/spacer$ xdvi someinput&
- [1] 855
-
-
-
-
-
-Check out the input files, some of them have comments Please
-refer to the man page for more information.
-
-
-9: REDHAT LINUX
-
-
-RedHat Linux users can compile an RPM. A spec file is in
-make/out/lilypond.spec, it is distributed along with the
-sources.
-
-You can make the rpm by issuing
-
-
- rpm -tb lilypond-x.y.z.tar.gz
- rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z
-
-
-
-
-
-
-10: DEBIAN GNU/LINUX
-
-
-A Debian package is also available; contact Anthony Fok
-foka@debian.org <foka@debian.org>. The build scripts are in
-the subdirectory debian/.
-
-
-11: WINDOWS NT/95
-
-
-Separate instructions on building for W32 are avaible in the
-file README-W32.yo.
-
-
-12: AUTHORS
-
-
-Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
-Jan Nieuwenhuizen <janneke@gnu.org>
-
-Have fun!
+x T ascii
+x res 240 24 40
+x init
+p1
+x font 3 B
+f3
+s10
+V400
+H144
+tINSTALL
+wh24
+t-
+wh24
+tcompiling
+wh24
+tand
+wh24
+tinstalling
+wh24
+tGNU
+wh24
+tLilyPond
+n40 0
+x font 2 I
+f2
+V480
+H600
+tHWN
+wh24
+t&
+wh24
+tJCN
+n40 0
+f3
+V600
+H0
+tContents
+n40 0
+x font 1 R
+f1
+V680
+H120
+t1:
+wh24
+tABSTRACT
+n40 0
+V720
+H0
+t2:
+wh24
+tPREREQUISITES
+n40 0
+V760
+H0
+t3:
+wh24
+tRUNNING
+n40 0
+V800
+H0
+t4:
+wh24
+tRECOMMENDED
+n40 0
+V840
+H0
+t5:
+wh24
+tWEBSITE
+n40 0
+V880
+H0
+t6:
+wh24
+tCONFIGURING
+wh24
+tand
+wh24
+tCOMPILING
+n40 0
+V920
+H0
+t7:
+wh24
+tCONFIGURING
+wh24
+tFOR
+wh24
+tMULTIPLE
+wh24
+tPLATFORMS
+n40 0
+V960
+H0
+t8:
+wh24
+tINSTALLING
+n40 0
+V1000
+H0
+t9:
+wh24
+tREDHAT
+wh24
+tLINUX
+n40 0
+V1040
+H0
+t10:
+wh24
+tDEBIAN
+wh24
+tGNU/LINUX
+n40 0
+V1080
+H0
+t11:
+wh24
+tWINDOWS
+wh24
+tNT/95
+n40 0
+V1120
+H0
+t12:
+wh24
+tAUTHORS
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p2
+x font 1 R
+f1
+s10
+V160
+H696
+t-2-
+h672
+n40 0
+x font 3 B
+f3
+V280
+H0
+t1:
+wh24
+tABSTRACT
+n40 0
+f1
+V400
+H0
+tThis
+wh48
+tdocument
+wh48
+texplains
+wh48
+twhat
+wh24
+tyou
+wh24
+tneed
+wh24
+tto
+wh24
+tinstall
+wh24
+tLilyPond,
+n40 0
+V440
+H0
+tand
+wh24
+twhat
+wh24
+tyou
+wh24
+tshould
+wh24
+tdo.
+wh48
+tIf
+wh24
+tyou
+wh24
+tare
+wh48
+tgoing
+wh48
+tto
+wh48
+tcompile
+wh48
+tand
+n40 0
+V480
+H0
+tinstall
+wh48
+tLilyPond
+wh48
+toften,
+wh48
+te.g.
+wh48
+twhen
+wh24
+tdoing
+wh24
+tdevelopment,
+wh24
+tyou
+n40 0
+V520
+H0
+tmight
+wh24
+twant
+wh24
+tto
+wh24
+tcheck
+wh24
+tout
+wh24
+tthe
+wf3
+h24
+tbuildscripts/set-lily.sh
+wf1
+h24
+tscript.
+n40 0
+V560
+H0
+tIt
+wh24
+tsets
+wh24
+tsome
+wh24
+tenvironment
+wh24
+tvariables
+wh24
+tand
+wh24
+tsymlinks,
+wh24
+twhich
+wh24
+tcomes
+n40 0
+V600
+H0
+tin
+wh24
+thandly
+wh24
+twhen
+wh24
+tyou
+wh24
+thave
+wh24
+tto
+wh24
+tcompile
+wh24
+tLilyPond
+wh24
+tmore
+wh24
+toften.
+n40 0
+f3
+V720
+H0
+t2:
+wh24
+tPREREQUISITES
+n40 0
+f1
+V840
+H0
+tFor
+wh24
+tcompilation
+wh24
+tyou
+wh24
+tneed:
+n40 0
+V960
+H0
+to
+h96
+tA
+wh24
+tGNU
+wh24
+tsystem:
+wh24
+tGNU
+wh24
+tLilyPond
+wh24
+tis
+wh24
+tknown
+wh24
+tto
+wh24
+trun
+wh24
+ton
+wh24
+tthese
+wh24
+tGNU
+n40 0
+V1000
+H120
+tsystems:
+wh48
+tLinux
+wh48
+t(PPC,
+wh48
+tintel),
+wh24
+tFreeBSD,
+wh24
+tAIX,
+wh24
+tNeXTStep,
+n40 0
+V1040
+H120
+tIRIX,
+wh24
+tDigital
+wh24
+tUnix
+wh24
+tand
+wh24
+tSolaris.
+n40 0
+V1160
+H0
+to
+h96
+tLots
+wh24
+tof
+wh24
+tdisk
+wh24
+tspace:
+wh24
+tLilyPond
+wh24
+ttakes
+wh24
+tbetween
+wh24
+t50
+wh48
+tand
+wh48
+t100
+n40 0
+V1200
+H120
+tmb
+wh24
+tto
+wh24
+tcompile
+wh24
+tif
+wh24
+tyou
+wh24
+tuse
+wh24
+tdebugging
+wh24
+tinformation.
+wh48
+tIf
+wh24
+tyou
+n40 0
+V1240
+H120
+tare
+wh24
+tshort
+wh24
+ton
+wh24
+tdisk-space
+wh24
+trun
+wh24
+tconfigure
+wh48
+twith
+wh48
+t--disable-
+n40 0
+V1280
+H120
+tdebugging.
+n40 0
+V1360
+H120
+tAlthough
+wh24
+twe
+wh24
+trecommend
+wh24
+tto
+wh24
+tuse
+wh24
+tUnix,
+wh24
+tLilyPond
+wh24
+tis
+wh24
+tknown
+wh24
+tto
+n40 0
+V1400
+H120
+trun
+wh24
+ton
+wh24
+tWindows
+wh24
+tNT/95/98
+wh24
+tas
+wh24
+twell.
+wh48
+tSee
+wh24
+tSection
+wh24
+t11.
+n40 0
+V1520
+H0
+to
+h96
+tGNU
+wh24
+tC++
+wh24
+tversion
+wh24
+t2.8
+wh24
+tor
+wh24
+tnewer
+wh24
+t(egcs-1.1
+wh24
+tor
+wh24
+tnewer
+wh24
+tis
+wh24
+talso
+n40 0
+V1560
+H120
+tfine).
+n40 0
+V1640
+H0
+to
+h96
+tPython
+wh48
+t1.5
+wh48
+t(Strictly
+wh48
+tspeaking,
+wh48
+tyou
+wh48
+tshouldn
+Caa
+h24
+tt
+wh48
+tneed
+n40 0
+V1680
+H120
+tPython
+wh24
+tfor
+wh24
+tcompiling
+wh24
+tand
+wh24
+tinstalling,
+wh24
+tbut
+wh24
+tyou
+Caa
+h24
+tll
+wh24
+tneed
+wh24
+tit
+n40 0
+V1720
+H120
+tto
+wh24
+tregenerate
+wh24
+tthe
+wh24
+tfont
+wh24
+ttables,
+wh24
+te.g.).
+n40 0
+V1800
+H0
+to
+h96
+tGUILE
+wh48
+t1.3
+wh48
+t(no,
+wh48
+tGUILE
+wh48
+t1.2
+wh48
+twon
+Caa
+h24
+tt
+wh48
+twork),
+wh48
+tcheck
+wh48
+tout
+n40 0
+V1840
+H120
+thttp://www.gnu.org/software/guile/guile.html.
+n40 0
+f3
+V1960
+H0
+t3:
+wh24
+tRUNNING
+n40 0
+f1
+V2080
+H0
+tGNU
+wh24
+tLilyPond
+wh24
+tdoes
+wh24
+tuse
+wh24
+ta
+wh24
+tlot
+wh24
+tof
+wh24
+tresources.
+wh24
+tFor
+wh24
+toperation
+wh48
+tyou
+n40 0
+V2120
+H0
+tneed
+wh24
+tthe
+wh24
+tfollowing:
+n40 0
+V2240
+H0
+to
+h96
+tTeX
+n40 0
+V2320
+H0
+to
+h96
+tA
+wh72
+tPostScript
+wh72
+tprinter
+wh72
+tand/or
+wh72
+tviewer
+wh72
+t(such
+wh72
+tas
+n40 0
+V2360
+H120
+tGhostscript)
+wh24
+tis
+wh24
+tstrongly
+wh24
+trecommended.
+wh48
+tXdvi
+wh48
+twill
+wh48
+tshow
+n40 0
+V2400
+H120
+tall
+wh48
+tembedded
+wh48
+tPostScript
+wh48
+ttoo
+wh48
+tif
+wh24
+tyou
+wh24
+thave
+wh24
+tGhostscript
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p3
+x font 1 R
+f1
+s10
+V160
+H696
+t-3-
+h672
+n40 0
+V280
+H120
+tinstalled.
+n40 0
+V360
+H0
+to
+h96
+tGUILE
+wh48
+t1.3
+wh48
+t(no,
+wh48
+tGUILE
+wh48
+t1.2
+wh48
+twon
+Caa
+h24
+tt
+wh48
+twork),
+wh48
+tcheck
+wh48
+tout
+n40 0
+V400
+H120
+thttp://www.gnu.org/programs/guile.html
+n40 0
+V480
+H0
+tFor
+wh48
+trunning
+wh48
+tLilyPond
+wh24
+tsuccessfully
+wh24
+tyou
+wh24
+thave
+wh24
+tto
+wh24
+thelp
+wh24
+tTeX
+wh24
+tand
+n40 0
+V520
+H0
+tMetaFont
+wh24
+tfind
+wh24
+tvarious
+wh24
+tfiles.
+wh48
+tThe
+wh24
+trecommended
+wh24
+tway
+wh48
+tof
+wh48
+tdoing
+n40 0
+V560
+H0
+tso
+wh48
+tis
+wh48
+tadjusting
+wh48
+tthe
+wh24
+tenvironment
+wh24
+tvariables
+wh24
+tin
+wh24
+tthe
+wh24
+tstart-up
+n40 0
+V600
+H0
+tscripts
+wh24
+tof
+wh24
+tyour
+wh24
+tshell.
+wh48
+tAn
+wh24
+texample
+wh24
+tis
+wh48
+tgiven
+wh48
+there
+wh48
+tfor
+wh48
+tthe
+n40 0
+V640
+H0
+tBourne
+wh24
+tshell:
+n40 0
+V840
+H120
+texport
+wh24
+tMFINPUTS="/usr/local/share/lilypond/mf:"
+n40 0
+V880
+H120
+texport
+wh24
+tTEXINPUTS="/usr/local/share/lilypond/tex:"
+n40 0
+V1080
+H0
+tThe
+wh48
+tempty
+wh24
+tpath
+wh24
+tcomponent
+wh24
+trepresents
+wh48
+tand
+wh24
+tMetaFont
+Caa
+h24
+ts
+wh24
+tdefault
+n40 0
+V1120
+H0
+tsearch
+wh24
+tpaths.
+wh48
+tScripts
+wh24
+twith
+wh24
+tthe
+wh24
+tproper
+wh24
+tpaths
+wh24
+tfor
+wh24
+tthe
+wh48
+tbourne
+n40 0
+V1160
+H0
+tand
+wh72
+tC-shell
+wh72
+trespectively
+wh72
+tare
+wh72
+tgenerated
+wh72
+tin
+wx font 3 B
+f3
+h72
+tbuild
+Chy
+h24
+n40 0
+V1200
+H0
+tscripts/out/lilypond-profile
+wf1
+h24
+tand
+wf3
+h48
+tbuildscripts/out/lilypond-
+n40 0
+V1240
+H0
+tlogin
+wf1
+h24
+tduring
+wh24
+tcompilation.
+n40 0
+f3
+V1360
+H0
+t4:
+wh24
+tRECOMMENDED
+n40 0
+f1
+V1480
+H0
+tAlthough
+wh48
+tnot
+wh48
+tstrictly
+wh48
+tnecessary,
+wh24
+tthese
+wh24
+tare
+wh24
+trecommended
+wh24
+tto
+n40 0
+V1520
+H0
+thave.
+n40 0
+V1640
+H0
+to
+h96
+tGNU
+wh24
+tmake.
+wh48
+tCheck
+wh24
+tout
+wh24
+tftp://ftp.gnu.org
+wh24
+tor
+wh24
+tany
+wh24
+tmirror
+wh24
+tof
+n40 0
+V1680
+H120
+tthis
+wh24
+tsite.
+n40 0
+V1760
+H0
+to
+h96
+tFlex
+wh96
+t(version
+wh96
+t2.5.4
+wh72
+tor
+wh72
+tnewer).
+wh96
+tCheck
+wh72
+tout
+n40 0
+V1800
+H120
+tftp://ftp.gnu.org
+wh24
+tor
+wh24
+tany
+wh24
+tmirror
+wh24
+tof
+wh24
+tthis
+wh24
+tsite.
+n40 0
+V1880
+H0
+to
+h96
+tBison
+wh72
+t(version
+wh72
+t1.25
+wh72
+tor
+wh72
+tnewer).
+wh120
+tCheck
+wh96
+tout
+n40 0
+V1920
+H120
+tftp://ftp.gnu.org
+wh24
+tor
+wh24
+tany
+wh24
+tmirror
+wh24
+tof
+wh24
+tthis
+wh24
+tsite.
+n40 0
+V2000
+H0
+to
+h96
+tGUILE
+wh48
+t1.3
+wh48
+t(no,
+wh48
+tGUILE
+wh48
+t1.2
+wh48
+twon
+Caa
+h24
+tt
+wh48
+twork),
+wh72
+tcheck
+wh24
+tout
+n40 0
+V2040
+H120
+thttp://www.gnu.org/programs/guile.html
+n40 0
+V2160
+H0
+to
+h96
+tPython
+wh72
+t(version
+wh72
+t1.5
+wh72
+tor
+wh72
+tnewer).
+wh120
+tCheck
+wh96
+tout
+n40 0
+V2200
+H120
+tftp://ftp.python.org
+wh24
+tor
+wh24
+tftp://ftp.cwi.nl/pub/python.
+n40 0
+V2320
+H0
+to
+h96
+tYodl.
+wh72
+tAll
+wh48
+tdocumentation
+wh48
+twill
+wh48
+tbe
+wh24
+tin
+wh24
+tYodl.
+wh24
+t(1.30.17)
+n40 0
+V2360
+H120
+tftp://ftp.lilypond.org/pub/yodl
+n40 0
+V2400
+H120
+thttp://www.cs.uu.nl/~hanwen/yodl
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p4
+x font 1 R
+f1
+s10
+V160
+H696
+t-4-
+h672
+n40 0
+V280
+H0
+to
+h96
+tTexinfo.
+wh24
+t(version
+wh24
+t3.12
+wh24
+tor
+wh24
+tnewer)
+n40 0
+V400
+H0
+to
+h96
+tGNU
+wh48
+tfind
+wh48
+tCheck
+wh24
+tout
+wh24
+tftp://ftp.gnu.org
+wh24
+tor
+wh24
+tany
+wh24
+tmirror
+wh24
+tof
+n40 0
+V440
+H120
+tthis
+wh24
+tsite.
+n40 0
+V560
+H0
+to
+h96
+tThe
+wh24
+tgeometry
+wh24
+tpackage
+wh24
+tfor
+wh24
+tLaTeX
+wh24
+tis
+wh24
+tneeded
+wh24
+tto
+wh24
+tuse
+wh24
+tly2dvi.
+n40 0
+V600
+H120
+tAvailable
+wh264
+tat
+wh240
+tftp://ftp.ctan.org/tex-
+n40 0
+V640
+H120
+tarchive/macros/latex/contrib/supported/geometry
+wh48
+tor
+wh48
+tat
+n40 0
+V680
+H120
+tmirror
+wh24
+tsite
+wh24
+tftp://ftp.dante.de
+n40 0
+V800
+H0
+to
+h96
+tA
+wh24
+tfast
+wh24
+tcomputer:
+wh24
+ta
+wh24
+tfull
+wh24
+tpage
+wh24
+tof
+wh24
+tmusic
+wh24
+ttypically
+wh24
+ttakes
+wh24
+t1
+n40 0
+V840
+H120
+tminute
+wh24
+ton
+wh24
+tmy
+wh24
+t486/133,
+wh24
+tusing
+wh24
+tthe
+wx font 3 B
+f3
+h24
+t--enable-checking
+wf1
+h48
+tcom
+Chy
+h24
+n40 0
+V880
+H120
+tpile.
+n40 0
+f3
+V1000
+H0
+t5:
+wh24
+tWEBSITE
+n40 0
+f1
+V1120
+H0
+tIf
+wh48
+tyou
+wh48
+twant
+wh48
+tto
+wh48
+tauto-generate
+wh24
+tLily
+Caa
+h24
+ts
+wh24
+twebsite,
+wh24
+tyou
+Caa
+h24
+tll
+wh24
+tneed
+n40 0
+V1160
+H0
+tsome
+wh24
+tadditional
+wh24
+tconversion
+wh24
+ttools.
+n40 0
+V1280
+H0
+to
+h96
+txpmtoppm
+wh24
+t(from
+wh24
+tthe
+wh24
+tPortable
+wh24
+tBitmap
+wh24
+tUtilities)
+wh24
+t(For
+wh24
+tRed
+Chy
+h24
+n40 0
+V1320
+H120
+tHat
+wh48
+tLinux
+wh48
+tusers:
+wh48
+tit
+wh48
+tis
+wh48
+tincluded
+wh24
+twithin
+wh24
+tthe
+wh24
+tpackage
+n40 0
+V1360
+H120
+tlibgr-progs).
+n40 0
+V1440
+H0
+to
+h96
+tBib2html
+wh24
+thttp://pertsserver.cs.uiuc.edu/~hull/bib2html.
+n40 0
+V1480
+H120
+tWhich,
+wh24
+tin
+wh24
+tturn
+wh24
+tdepends
+wh24
+ton
+wh24
+tman2html
+wh24
+tfor
+wh24
+tproper
+wh24
+tinstalla
+Chy
+h24
+n40 0
+V1520
+H120
+ttion.
+wh72
+tman2html
+wh48
+tcan
+wh48
+tbe
+wh72
+thad
+wh72
+tfrom
+wh72
+thttp://askdon
+Chy
+h24
+n40 0
+V1560
+H120
+tald.ask.uni-karlsruhe.de/hppd/hpux/Network
+Chy
+h24
+n40 0
+V1600
+H120
+ting/WWW/Man2html-1.05.
+n40 0
+V1680
+H120
+tTeTeX
+wh24
+tusers
+wh24
+tshould
+wh24
+tnot
+wh24
+tforget
+wh24
+tto
+wh24
+trerun
+wh24
+ttexhash.
+n40 0
+V1760
+H0
+tBuilding
+wh24
+tthe
+wh24
+twebsite
+wh24
+trequires
+wh24
+tpnmtopng.
+wh48
+tThe
+wh24
+tversion
+wh24
+tof
+wf3
+h24
+tpnm
+Chy
+h24
+n40 0
+V1800
+H0
+ttopng
+wf1
+h48
+tthat
+wh48
+tis
+wh48
+tdistributed
+wh48
+twith
+wh24
+tRedHat
+wh24
+t5.1
+wh24
+tcontains
+wh24
+ta
+wh24
+tbug
+n40 0
+V1840
+H0
+t(pnmtopng
+wh24
+tis
+wh24
+tdynamically
+wh24
+tlinked
+wh48
+tto
+wh48
+tthe
+wh48
+twrong
+wh48
+tversion
+wh48
+tof
+n40 0
+V1880
+H0
+tlibpng).
+wh72
+tRecompile
+wh48
+tit
+wh24
+tfrom
+wh24
+tsource,
+wh24
+tand
+wh24
+tmake
+wh24
+tsure
+wh24
+tthat
+wh24
+tthe
+n40 0
+V1920
+H0
+tpnmtopng
+wh24
+tbinary
+wh24
+tis
+wh24
+tlinked
+wh24
+tstatically
+wh24
+tto
+wh24
+tthe
+wh24
+tlibpng
+wh48
+tthat
+wh48
+tis
+n40 0
+V1960
+H0
+tincluded
+wh24
+tin
+wh24
+tlibgr.
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p5
+x font 1 R
+f1
+s10
+V160
+H696
+t-5-
+h672
+n40 0
+V280
+H144
+ttar
+wh24
+txzf
+wh24
+tlibgr-2.0.13.tar.gz
+n40 0
+V320
+H264
+tmake
+n40 0
+V360
+H264
+tcd
+wh24
+tpng
+n40 0
+V400
+H264
+trm
+wh24
+tlibpng.so*
+n40 0
+V440
+H264
+tmake
+wh24
+tpnmtopng
+n40 0
+V680
+H0
+tYou
+wh24
+tcan
+wh24
+tthen
+wh24
+tinstall
+wh24
+tthe
+wh24
+tnew
+wh24
+tpnmtopng
+wh24
+tinto
+wh24
+t/usr/local/bin/
+n40 0
+x font 3 B
+f3
+V800
+H0
+t6:
+wh24
+tCONFIGURING
+wh24
+tand
+wh24
+tCOMPILING
+n40 0
+f1
+V920
+H0
+tto
+wh24
+tinstall
+wh24
+tGNU
+wh24
+tLilyPond,
+wh24
+tsimply
+wh24
+ttype:
+n40 0
+V1160
+H240
+tgunzip
+wh24
+t-c
+wh24
+tlilypond-x.y.z
+wh24
+t|
+wh24
+ttar
+wh24
+txf
+wh24
+t-
+n40 0
+V1200
+H240
+tcd
+wh24
+tlilypond-x.y.z
+n40 0
+V1240
+H240
+tconfigure
+h144
+t#
+wh24
+tfill
+wh24
+tin
+wh24
+tyour
+wh24
+tstandard
+wh24
+tprefix
+wh24
+twith
+wh24
+t--prefix
+n40 0
+V1280
+H240
+tmake
+n40 0
+V1320
+H240
+tmake
+wh24
+tinstall
+n40 0
+V1560
+H0
+tThis
+wh24
+twill
+wh24
+tinstall
+wh24
+ta
+wh24
+tnumber
+wh24
+tof
+wh24
+tfiles,
+wh24
+tsomething
+wh24
+tclose
+wh24
+tto:
+n40 0
+V1800
+H240
+t/usr/local/man/man1/mi2mu.1
+n40 0
+V1840
+H240
+t/usr/local/man/man1/convert-mudela.1
+n40 0
+V1880
+H240
+t/usr/local/man/man1/mudela-book.1
+n40 0
+V1920
+H240
+t/usr/local/man/man1/lilypond.1
+n40 0
+V1960
+H240
+t/usr/local/bin/lilypond
+n40 0
+V2000
+H240
+t/usr/local/bin/mi2mu
+n40 0
+V2040
+H240
+t/usr/local/share/lilypond/*
+n40 0
+V2080
+H240
+t/usr/local/share/locale/{it,nl}/LC_MESSAGES/lilypond.mo
+n40 0
+V2320
+H0
+tThe
+wh48
+tabove
+wh24
+tassumes
+wh24
+tthat
+wh24
+tyou
+wh24
+tare
+wh24
+troot
+wh24
+tand
+wh24
+thave
+wh24
+tthe
+wh24
+tGNU
+wh24
+tdevel
+Chy
+h24
+n40 0
+V2360
+H0
+topment
+wh24
+ttools,
+wh24
+tand
+wh24
+tyour
+wh24
+tmake
+wh24
+tis
+wh24
+tGNU
+wh24
+tmake.
+wh48
+tIf
+wh24
+tthis
+wh24
+tis
+wh24
+tnot
+wh24
+tthe
+n40 0
+V2400
+H0
+tcase,
+wh48
+tyou
+wh48
+tcan
+wh48
+tadjust
+wh48
+tyour
+wh48
+tenvironment
+wh24
+tvariables
+wh24
+tto
+wh24
+tyour
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p6
+x font 1 R
+f1
+s10
+V160
+H696
+t-6-
+h672
+n40 0
+V280
+H0
+ttaste:
+n40 0
+V560
+H240
+texport
+wh24
+tCPPFLAGS="-I
+wh24
+t/home/me/my_include
+wh24
+t-DWEIRD_FOOBAR"
+n40 0
+V600
+H240
+tconfigure
+n40 0
+V840
+H0
+tCPPFLAGS
+wh24
+tare
+wh24
+tthe
+wh24
+tpreprocessor
+wh24
+tflags.
+n40 0
+V920
+H0
+tThe
+wh24
+tconfigure
+wh24
+tscript
+wh24
+tis
+wh24
+tCygnus
+wh24
+tconfigure,
+wh24
+tand
+wh24
+tit
+wh24
+twill
+wh24
+taccept
+n40 0
+x font 3 B
+f3
+V960
+H0
+t--help
+f1
+t.
+wh48
+tIf
+wh24
+tyou
+wh24
+tare
+wh24
+tnot
+wh24
+troot,
+wh24
+tyou
+wh24
+twill
+wh24
+tprobably
+wh24
+thave
+wh24
+tto
+wh24
+tmake
+n40 0
+V1000
+H0
+tit
+wh24
+twith
+wh24
+ta
+wh24
+tdifferent
+wf3
+h24
+t--prefix
+wf1
+h24
+toption.
+wh48
+tOur
+wh24
+tfavourite
+wh24
+tlocation
+n40 0
+V1040
+H0
+tis
+n40 0
+V1320
+H240
+tconfigure
+wh24
+t--prefix=$HOME/usr
+n40 0
+V1560
+H0
+tIn
+wh48
+tthis
+wh48
+tcase,
+wh24
+tyou
+wh24
+twill
+wh24
+thave
+wh24
+tto
+wh24
+tset
+wh24
+tup
+wh24
+tMFINPUTS,
+wh24
+tand
+wh24
+tTEXIN
+Chy
+h24
+n40 0
+V1600
+H0
+tPUTS
+wh24
+taccordingly.
+n40 0
+V1680
+H0
+tSince
+wh24
+tGNU
+wh24
+tLilyPond
+wh24
+tcurrently
+wh24
+tis
+wh24
+tbeta,
+wh48
+tyou
+wh48
+tare
+wh48
+tadvised
+wh48
+tto
+n40 0
+V1720
+H0
+talso
+wh24
+tuse
+n40 0
+V2000
+H240
+t--enable-debugging
+n40 0
+V2040
+H240
+t--enable-checking
+n40 0
+V2280
+H0
+tOptions
+wh24
+tto
+wh24
+tconfigure
+wh24
+tinclude:
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p7
+x font 1 R
+f1
+s10
+V160
+H696
+t-7-
+h672
+n40 0
+x font 3 B
+f3
+V280
+H0
+t--enable-printing
+n40 0
+f1
+V320
+H120
+tEnable
+wh24
+tdebugging
+wh24
+tprint
+wh24
+troutines
+wh24
+t(lilypond
+wf3
+h24
+t-D
+wf1
+h24
+toption)
+n40 0
+f3
+V400
+H0
+t--enable-optimise
+n40 0
+f1
+V440
+H120
+tSet
+wh48
+tmaximum
+wh48
+toptimisation:
+wh24
+tcompile
+wh24
+twith
+wf3
+h24
+t-O2
+f1
+t.
+wh48
+tThis
+wh24
+tcan
+n40 0
+V480
+H120
+tbe
+wh24
+tunreliable
+wh24
+ton
+wh48
+tsome
+wh48
+tcompiler/platform
+wh48
+tcombinations
+n40 0
+V520
+H120
+t(eg,
+wh24
+tDEC
+wh24
+tAlpha
+wh24
+tand
+wh24
+tPPC)
+n40 0
+f3
+V600
+H0
+t--enable-profiling
+n40 0
+f1
+V640
+H120
+tCompile
+wh24
+twith
+wh24
+tsupport
+wh24
+tfor
+wh24
+tprofiling.
+n40 0
+f3
+V720
+H0
+t--enable-config
+n40 0
+f1
+V760
+H120
+tOutput
+wh48
+tto
+wh48
+ta
+wh24
+tdifferent
+wh24
+tconfiguration
+wh24
+tfile.
+wh48
+tNeeded
+wh24
+tfor
+n40 0
+V800
+H120
+tmulti-platform
+wh24
+tbuilds
+n40 0
+V880
+H0
+tAll
+wh24
+toptions
+wh24
+tare
+wh24
+tdocumented
+wh24
+tin
+wh24
+tthe
+wf3
+h24
+tconfigure
+wf1
+h24
+thelp
+wh24
+tThe
+wh48
+toption
+n40 0
+f3
+V920
+H0
+t--enable-optimise
+wf1
+h24
+tis
+wh24
+trecommended
+wh24
+tfor
+wh24
+tReal
+wh24
+tLife
+wh24
+tusage.
+n40 0
+V1000
+H0
+tIf
+wh24
+tyou
+wh24
+tdo
+n40 0
+V1280
+H240
+tmake
+wh24
+tall
+n40 0
+V1520
+H0
+teverything
+wh48
+twill
+wh24
+tbe
+wh24
+tcompiled,
+wh24
+tbut
+wh24
+tnothing
+wh24
+twill
+wh24
+tbe
+wh24
+tinstalled.
+n40 0
+V1560
+H0
+tThe
+wh24
+tresulting
+wh24
+tbinaries
+wh24
+tcan
+wh24
+tbe
+wh24
+tfound
+wh48
+tin
+wh48
+tthe
+wh48
+tsubdirectories
+n40 0
+f3
+V1600
+H0
+tout/
+wf1
+h24
+t(which
+wh24
+tcontain
+wh24
+tall
+wh24
+tfiles
+wh24
+tgenerated
+wh24
+tduring
+wh24
+tcompilation).
+n40 0
+f3
+V1720
+H0
+t7:
+wh24
+tCONFIGURING
+wh24
+tFOR
+wh24
+tMULTIPLE
+wh24
+tPLATFORMS
+n40 0
+f1
+V1840
+H0
+tIf
+wh24
+tyou
+wh24
+twant
+wh24
+tto
+wh24
+tcompile
+wh24
+tLilyPond
+wh24
+twith
+wh24
+tdifferent
+wh24
+tconfiguration
+n40 0
+V1880
+H0
+tsettings,
+wh48
+tthen,
+wh48
+tyou
+wh48
+tcan
+wh48
+tuse
+wh48
+tthe
+wf3
+h24
+t--enable-config
+wf1
+h24
+toption.
+n40 0
+V1920
+H0
+tExample:
+wh24
+tsuppose
+wh24
+tI
+wh24
+twant
+wh24
+tto
+wh24
+tbuild
+wh24
+twith
+wh24
+tand
+wh72
+twithout
+wh48
+tprofil
+Chy
+h24
+n40 0
+V1960
+H0
+ting.
+wh48
+tThen
+wh24
+tI
+Caa
+h24
+td
+wh24
+tuse
+wh24
+tthe
+wh24
+tfollowing
+wh24
+tfor
+wh24
+tthe
+wh24
+tnormal
+wh24
+tbuild,
+n40 0
+V2240
+H264
+tconfigure
+wh24
+t--prefix=~
+wh24
+t--disable-optimise
+wh24
+t--enable-checking
+n40 0
+V2280
+H264
+tmake
+n40 0
+V2320
+H264
+tmake
+wh24
+tinstall
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p8
+x font 1 R
+f1
+s10
+V160
+H696
+t-8-
+h672
+n40 0
+V280
+H0
+tand
+wh24
+tfor
+wh24
+tthe
+wh24
+tprofiling
+wh24
+tversion,
+wh24
+tI
+wh24
+tspecify
+wh24
+ta
+wh24
+tdifferent
+wh24
+tconfig
+Chy
+h24
+n40 0
+V320
+H0
+turation.
+n40 0
+V600
+H264
+tconfigure
+wh24
+t--prefix=~
+wh24
+t--enable-profiling
+wh24
+t--enable-config=optprof
+wh24
+t--enable-optimise
+wh24
+t--disable-checking
+n40 0
+V640
+H264
+tmake
+wh24
+tconfig=optprof
+n40 0
+V680
+H264
+tmake
+wh24
+tconfig=optprof
+wh24
+tinstall
+n40 0
+x font 3 B
+f3
+V960
+H0
+t8:
+wh24
+tINSTALLING
+n40 0
+f1
+V1080
+H0
+tIf
+wh24
+tyou
+wh24
+thave
+wh24
+tdone
+wh24
+ta
+wh24
+tsuccessful
+wh24
+tmake,
+wh24
+tthen
+wh24
+ta
+wh24
+tsimple
+n40 0
+V1360
+H240
+tmake
+wh24
+tinstall
+n40 0
+V1600
+H0
+tshould
+wh24
+tdo
+wh24
+tthe
+wh24
+ttrick.
+n40 0
+V1680
+H0
+tIf
+wh24
+tyou
+wh24
+tare
+wh24
+tdoing
+wh24
+tan
+wh24
+tupgrade,
+wh24
+tplease
+wh24
+tremember
+wh24
+tto
+wh24
+tremove
+wh24
+tobso
+Chy
+h24
+n40 0
+V1720
+H0
+tlete
+wf3
+h48
+t.pk
+wf1
+h48
+tand
+wf3
+h48
+t.tfm
+wf1
+h48
+tfiles
+wh24
+tof
+wh24
+tthe
+wh24
+tfonts.
+wh48
+tA
+wh24
+tscript
+wh24
+thas
+wh24
+tbeen
+n40 0
+V1760
+H0
+tprovided
+wh24
+tto
+wh24
+tdo
+wh24
+tthe
+wh24
+twork
+wh24
+tfor
+wh24
+tyou,
+wh24
+tsee
+wf3
+h24
+tbin/clean-fonts.sh
+f1
+t.
+n40 0
+f3
+V1880
+H0
+tCAVEATS
+n40 0
+f1
+V2040
+H0
+to
+h96
+tThe
+wh24
+t-O2
+wh24
+toption
+wh24
+tto
+wh24
+tgcc
+wh24
+ttriggers
+wh24
+ta
+wh24
+tgcc
+wh24
+tbug
+wh24
+ton
+wh48
+tDEC
+wh48
+tAlpha
+n40 0
+V2080
+H120
+tin
+wh48
+tdstream.cc.
+wh48
+tYou
+wh24
+tshould
+wh24
+tturn
+wh24
+toff
+wh24
+tthis
+wh24
+tflag
+wh24
+tfor
+wh24
+tthis
+n40 0
+V2120
+H120
+tfile.
+n40 0
+f3
+V2240
+H0
+tEXAMPLE
+n40 0
+f1
+V2360
+H0
+tThis
+wh24
+tis
+wh24
+twhat
+wh24
+tI
+wh24
+ttype
+wh24
+tin
+wh24
+tmy
+wh24
+txterm:
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p9
+x font 1 R
+f1
+s10
+V160
+H696
+t-9-
+h672
+n40 0
+V280
+H240
+tlilypond
+wh24
+tsomeinput.ly
+n40 0
+V320
+H240
+ttex
+wh24
+tsomeinput.tex
+n40 0
+V360
+H240
+txdvi
+wh24
+tsomeinput&
+n40 0
+V600
+H0
+tThis
+wh24
+tis
+wh24
+twhat
+wh24
+tthe
+wh24
+toutput
+wh24
+tlooks
+wh24
+tlike
+wh24
+tover
+wh24
+there:
+n40 0
+V880
+H240
+tGNU
+wh24
+tLilyPond
+wh24
+t0.0.78
+wh24
+t#4/FlowerLib
+wh24
+t1.1.24
+wh24
+t#0
+n40 0
+V920
+H240
+tParsing
+wh24
+t...
+wh24
+t[/home/hw/share/lilypond/init//
+n40 0
+V960
+H360
+t<..etc..>
+n40 0
+V1000
+H360
+tinit//performer.ly]]][input/kortjakje.ly]
+n40 0
+V1040
+H240
+tCreating
+wh24
+telements
+wh24
+t...[8][16][24][25]
+n40 0
+V1080
+H240
+tPreprocessing
+wh24
+telements...
+n40 0
+V1120
+H240
+tCalculating
+wh24
+tcolumn
+wh24
+tpositions
+wh24
+t...
+wh24
+t[14][25]
+n40 0
+V1160
+H240
+tPostprocessing
+wh24
+telements...
+n40 0
+V1200
+H240
+tTeX
+wh24
+toutput
+wh24
+tto
+wh24
+tsomeinput.tex
+wh24
+t...
+n40 0
+V1240
+H240
+tCreating
+wh24
+tMIDI
+wh24
+telements
+wh24
+t...MIDI
+wh24
+toutput
+wh24
+tto
+wh24
+tsomeinput.midi
+wh24
+t...
+n40 0
+V1360
+H240
+thw:~/musix/spacer$
+wh24
+txdvi
+wh24
+tsomeinput&
+n40 0
+V1400
+H240
+t[1]
+wh24
+t855
+n40 0
+V1640
+H0
+tCheck
+wh24
+tout
+wh24
+tthe
+wh24
+tinput
+wh24
+tfiles,
+wh24
+tsome
+wh24
+tof
+wh24
+tthem
+wh24
+thave
+wh24
+tcomments
+wh24
+tPlease
+n40 0
+V1680
+H0
+trefer
+wh24
+tto
+wh24
+tthe
+wh24
+tman
+wh24
+tpage
+wh24
+tfor
+wh24
+tmore
+wh24
+tinformation.
+n40 0
+x font 3 B
+f3
+V1800
+H0
+t9:
+wh24
+tREDHAT
+wh24
+tLINUX
+n40 0
+f1
+V1920
+H0
+tRedHat
+wh48
+tLinux
+wh48
+tusers
+wh48
+tcan
+wh48
+tcompile
+wh24
+tan
+wh24
+tRPM.
+wh24
+tA
+wh24
+tspec
+wh24
+tfile
+wh24
+tis
+wh24
+tin
+n40 0
+f3
+V1960
+H0
+tmake/out/lilypond.spec
+f1
+t,
+wh24
+tit
+wh24
+tis
+wh48
+tdistributed
+wh48
+talong
+wh48
+twith
+wh48
+tthe
+n40 0
+V2000
+H0
+tsources.
+n40 0
+V2080
+H0
+tYou
+wh24
+tcan
+wh24
+tmake
+wh24
+tthe
+wh24
+trpm
+wh24
+tby
+wh24
+tissuing
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p10
+x font 1 R
+f1
+s10
+V160
+H672
+t-10-
+h672
+n40 0
+V280
+H240
+trpm
+wh24
+t-tb
+wh24
+tlilypond-x.y.z.tar.gz
+n40 0
+V320
+H240
+trpm
+wh24
+t-i
+wh24
+t/usr/src/redhat/RPMS/i386/lilypond-x.y.z
+n40 0
+x font 3 B
+f3
+V600
+H0
+t10:
+wh24
+tDEBIAN
+wh24
+tGNU/LINUX
+n40 0
+f1
+V720
+H0
+tA
+wh48
+tDebian
+wh48
+tpackage
+wh48
+tis
+wh48
+talso
+wh48
+tavailable;
+wh24
+tcontact
+wh24
+tAnthony
+wh24
+tFok
+n40 0
+V760
+H0
+tfoka@debian.org
+wh24
+t<foka@debian.org>.
+wh48
+tThe
+wh24
+tbuild
+wh24
+tscripts
+wh24
+tare
+wh24
+tin
+n40 0
+V800
+H0
+tthe
+wh24
+tsubdirectory
+wf3
+h24
+tdebian/
+f1
+t.
+n40 0
+f3
+V920
+H0
+t11:
+wh24
+tWINDOWS
+wh24
+tNT/95
+n40 0
+f1
+V1040
+H0
+tSeparate
+wh24
+tinstructions
+wh24
+ton
+wh24
+tbuilding
+wh24
+tfor
+wh24
+tW32
+wh24
+tare
+wh24
+tavaible
+wh24
+tin
+wh24
+tthe
+n40 0
+V1080
+H0
+tfile
+wh24
+tREADME-W32.yo.
+n40 0
+f3
+V1200
+H0
+t12:
+wh24
+tAUTHORS
+n40 0
+f1
+V1320
+H0
+tHan-Wen
+wh24
+tNienhuys
+wh24
+t<hanwen@cs.uu.nl>
+n40 0
+V1400
+H0
+tJan
+wh24
+tNieuwenhuizen
+wh24
+t<janneke@gnu.org>
+n40 0
+V1480
+H0
+tHave
+wh24
+tfun!
+n40 0
+V2560
+H1440
+n40 0
+x trailer
+V2640
+x stop
---- ../lilypond-1.1.31.mb1/NEWS Fri Feb 19 03:00:33 1999
-++ b/NEWS Sun Feb 21 23:40:31 1999
-@@ -1,3 +1,6 @@
-pl 31.mb2
- - Added example: "Imellan Fjeldene" by Niels W. Gade.
-
- pl 31.mb1
- - bf: don't attach staff margin text to clef changes within the
- lines. (Still not perfect: no text when a clef change happens--- ../lilypond-1.1.31.jcn3/NEWS Sun Feb 21 14:29:39 1999
-++ b/NEWS Sun Feb 21 17:53:29 1999
-@@ -1,3 +1,6 @@
+pl 31.hwn2
+ - be somewhat lazy in break/object multiplication.
+ - print # elements for memory usage impression (try -t)
+ - Paper_score cleanup
+ - junked various Pointer_list instances. Executable now is smaller.
+ - junked various cruft
+ - merged do_substitute_dependen{t,cy} to
+do_substitute_element_pointer ()
+ - more parser cleanup
+ - Interval uses Drul_array
+ - bf: I've been drinking too much
+ - delete break helpers before object breaking/multiplication. Try
+to save some memory.
+
pl 31.jcn4
- bf: toplevel install, kpsewhich
-
- pl 31.jcn3
- - sm 71, require yodl-1.31.11
- - fix: slur macros--- ../lilypond-1.1.31.jcn2/NEWS Wed Feb 17 17:03:12 1999
-++ b/NEWS Sun Feb 21 14:29:39 1999
-@@ -1,3 +1,8 @@
-pl 31.jcn3
- sm 71, require yodl-1.31.11
- fix: slur macros
- bf: info in rpm, if available
-
- pl 31.jcn2
- - fix: rat != float
- --- ../lilypond-1.1.31/NEWS Wed Feb 17 10:39:09 1999
-++ b/NEWS Fri Feb 19 03:00:33 1999
-@@ -1,3 +1,11 @@
-pl 31.mb1
- - bf: don't attach staff margin text to clef changes within the
- lines. (Still not perfect: no text when a clef change happens
- at the line break).
- - Added property textScriptPadding.
- - A failing attempt to fix spacing of multi- measure rests
-pl 31.jcn1
- - bf: slur-follow-music
-
- pl 30.jcn1
- - sm fixes, intl/ fixespl 31.jcn2
- fix: rat != float
-
-pl 31.jcn1
- bf: slur-follow-music
+pl 31.uu1
+ - config.make: include GUILE_LDFLAGS
+
+******
+pl 31 (feb 16)
+
pl 30.jcn1
- sm fixes, intl/ fixes
-
-
-
-
-
-
-NAME
-
- PATCHES - track and distribute your code changes
-
-DESCRIPTION
-
- This page documents how to distribute your changes to
-GNU lilypond (or in fact any other StepMake package).
-
-ABSTRACT
-
- Distributing a change normally goes like this:
-
-o make your fix/add your code
-
-o Add changes to NEWS, and add yourself to Documenta-
- tion/AUTHORS.yo
-
-o generate a patch,
-
-o e-mail your patch to one of the mailing lists gnu-
- music-discuss@gnu.org or bug-gnu-music@gnu.org
-
-GENERATING A PATCH
-
- In VERSION, set MY_PATCH_LEVEL:
-
-
-
-
-
- VERSION:
- ...
- MY_PATCH_LEVEL=jcn1
-
-
-
-
-
-In NEWS, enter a summary of changes:
-
-
-
-
-
-
- NEWS:
- pl 0.1.73.jcn1
- - added PATCHES.yo
-
-
-Then, from the top of Lily's source tree, type
-
-
-
-
-
-
- make dist
- make diff
-
-
-
-
-
-which rolls the tarball ../releases/lilypond-0.1.73.tar.gz
-and leaves your patch as ./lilypond-0.1.73.jcn1.diff. [1]
-We assume that there is a tarball lilypond-0.1.73.tar.gz in
-the directory ../releases.
-
-If you didn't configure Lily using --srcdir, you can do:
-
-
-
-
-
-
- make release
-
- tar-ball: ../patches/lilypond-0.1.73.jcn1.gz
- patch: ../patches/lilypond-0.1.73.jcn1.gz
- updeet: ../test/updeet
-
-
-
-
-
-
-PREREQUISITES
-
-
-For creating a patch you need
-
-
-o All items mentioned in INSTALL. You're not going to
- send a patch that you haven't even built, right?
-
-o GNU diff
-
-o Python (version 1.5 or newer). You can of course make
- a patch by hand, which would go something like:
-
------------
-[1] 'Make diff' generates a patch between two tar-
-balls. For more info type 'make diff help=='.
-
-
- make distclean
- cd ..
- diff -urN lilypond-0.1.73 lilypond-0.1.73.jcn1 > lilypond-0.1.73.jcn1
-
-
-
-
-
- but there are handy python scripts available. If
- you're doing development, you'll need Python for other
- LilyPond scripts anyway.
-
-
-o The Lily directory structure, which looks like:
-
-
-
-
-
-
- doos/ # gnu/windows32 build and binary releases
- harmonia -> harmonia-x.y.z
- harmonia-x.y.z/
- lilypond -> lilypond-x.y.z # symlink to development directory
- lilypond-x.y.z/ # current development
- patches/ # patches between different releases
- RedHat/BUILD # RedHat build and binary releases
- RedHat/RPMS
- RedHat/SPECS
- releases/ # .tar.gz releases
- test/ # tarballs and diffs from current version
- yodl -> yodl-1.30.17
- yodl-1.30.17
-
-
-
-
- with prefix $HOME/usr/src and (for building rpms only)
- in $HOME/.rpmrc:
-
-
-
-
-
- topdir: /home/fred/usr/src/RedHat
-
-
-APPLYING PATCHES
-
-
-If you're following LilyPond development regularly, you
-probably want to download just the patch for each subsequent
-release. After downloading the patch (into the patches
-directory, of course), simply apply it:
-
-
-
-
-
-
- gzip -dc ../patches/lilypond-0.1.74.diff.gz | patch -p1 -E
-
-
-
-
-
-and don't forget to make automatically generated files:
-
-
-
-
-
-
- autoconf footnote(patches don't include automatically generated files,
- i.e. file(configure) and files generated by file(configure).)
-
- configure
-
-
-
-
-
-
-SYNCHRONISE
-
-
-If you're not very quick with sending your patch, there's a
-good chance that an new release of LilyPond comes available.
-In such a case (and sometimes for other unkown reasons :-),
-the maintainer will probably ask you to make a new patch
-against the latest release. Your best bet is to download
-the latest release, and apply your patch against this new
-source tree:
-
-
- cd lilypond-0.1.74
- gzip -dc ../patches/lilypond-0.1.73.jcn1.diff.gz | patch -p1 -E
- autoconf
- configure
-
-
-
-
-
-Then, make a patch as shown above.
-
-
-SEE ALSO
-
-
-stepmake/INSTALL.txt
-
-
-MAINTAINER
-
-
-Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
-Just keep on sending those patches!
+x T ascii
+x res 240 24 40
+x init
+p1
+x font 3 B
+f3
+s10
+V280
+H0
+tNAME
+n40 0
+x font 1 R
+f1
+V360
+H120
+tPATCHES
+wh24
+t-
+wh24
+ttrack
+wh24
+tand
+wh24
+tdistribute
+wh24
+tyour
+wh24
+tcode
+wh24
+tchanges
+n40 0
+f3
+V440
+H0
+tDESCRIPTION
+n40 0
+f1
+V520
+H120
+tThis
+wh48
+tpage
+wh48
+tdocuments
+wh24
+thow
+wh24
+tto
+wh24
+tdistribute
+wh24
+tyour
+wh24
+tchanges
+wh24
+tto
+n40 0
+V560
+H0
+tGNU
+wh24
+tlilypond
+wh24
+t(or
+wh24
+tin
+wh24
+tfact
+wh24
+tany
+wh24
+tother
+wh24
+tStepMake
+wh24
+tpackage).
+n40 0
+f3
+V640
+H0
+tABSTRACT
+n40 0
+f1
+V720
+H120
+tDistributing
+wh24
+ta
+wh24
+tchange
+wh24
+tnormally
+wh24
+tgoes
+wh24
+tlike
+wh24
+tthis:
+n40 0
+V800
+H0
+to
+h96
+tmake
+wh24
+tyour
+wh24
+tfix/add
+wh24
+tyour
+wh24
+tcode
+n40 0
+V880
+H0
+to
+h96
+tAdd
+wh24
+tchanges
+wh24
+tto
+wh24
+tNEWS,
+wh24
+tand
+wh48
+tadd
+wh48
+tyourself
+wh48
+tto
+wh48
+tDocumenta
+Chy
+h24
+n40 0
+V920
+H120
+ttion/AUTHORS.yo
+n40 0
+V1000
+H0
+to
+h96
+tgenerate
+wh24
+ta
+wh24
+tpatch,
+n40 0
+V1080
+H0
+to
+h96
+te-mail
+wh48
+tyour
+wh48
+tpatch
+wh48
+tto
+wh48
+tone
+wh48
+tof
+wh24
+tthe
+wh24
+tmailing
+wh24
+tlists
+wh24
+tgnu-
+n40 0
+V1120
+H120
+tmusic-discuss@gnu.org
+wh24
+tor
+wh24
+tbug-gnu-music@gnu.org
+n40 0
+f3
+V1200
+H0
+tGENERATING
+wh24
+tA
+wh24
+tPATCH
+n40 0
+f1
+V1280
+H120
+tIn
+wf3
+h24
+tVERSION
+f1
+t,
+wh24
+tset
+wh24
+tMY_PATCH_LEVEL:
+n40 0
+V1520
+H216
+tVERSION:
+n40 0
+V1560
+H240
+t...
+n40 0
+V1600
+H240
+tMY_PATCH_LEVEL=jcn1
+n40 0
+V1840
+H0
+tIn
+wf3
+h24
+tNEWS
+f1
+t,
+wh24
+tenter
+wh24
+ta
+wh24
+tsummary
+wh24
+tof
+wh24
+tchanges:
+n40 0
+V2120
+H216
+tNEWS:
+n40 0
+V2160
+H240
+tpl
+wh24
+t0.1.73.jcn1
+n40 0
+V2200
+H360
+t-
+wh24
+tadded
+wh24
+tPATCHES.yo
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p2
+x font 1 R
+f1
+s10
+V160
+H696
+t-2-
+h672
+n40 0
+V280
+H0
+tThen,
+wh24
+tfrom
+wh24
+tthe
+wh24
+ttop
+wh24
+tof
+wh24
+tLily
+Caa
+h24
+ts
+wh24
+tsource
+wh24
+ttree,
+wh24
+ttype
+n40 0
+V560
+H216
+tmake
+wh24
+tdist
+n40 0
+V600
+H216
+tmake
+wh24
+tdiff
+n40 0
+V840
+H0
+twhich
+wh24
+trolls
+wh24
+tthe
+wh48
+ttarball
+wx font 3 B
+f3
+h48
+t../releases/lilypond-0.1.73.tar.gz
+n40 0
+f1
+V880
+H0
+tand
+wh24
+tleaves
+wh24
+tyour
+wh24
+tpatch
+wh24
+tas
+wf3
+h48
+t./lilypond-0.1.73.jcn1.diff
+f1
+t.
+wh72
+t[1]
+n40 0
+V920
+H0
+tWe
+wh48
+tassume
+wh24
+tthat
+wh24
+tthere
+wh24
+tis
+wh24
+ta
+wh24
+ttarball
+wf3
+h24
+tlilypond-0.1.73.tar.gz
+wf1
+h24
+tin
+n40 0
+V960
+H0
+tthe
+wh24
+tdirectory
+wf3
+h24
+t../releases
+f1
+t.
+n40 0
+V1040
+H0
+tIf
+wh24
+tyou
+wh24
+tdidn
+Caa
+h24
+tt
+wh24
+tconfigure
+wh24
+tLily
+wh24
+tusing
+wh24
+t--srcdir,
+wh24
+tyou
+wh24
+tcan
+wh24
+tdo:
+n40 0
+V1320
+H216
+tmake
+wh24
+trelease
+n40 0
+V1400
+H216
+ttar-ball:
+wh24
+t../patches/lilypond-0.1.73.jcn1.gz
+n40 0
+V1440
+H216
+tpatch:
+wh24
+t../patches/lilypond-0.1.73.jcn1.gz
+n40 0
+V1480
+H216
+tupdeet:
+wh24
+t../test/updeet
+n40 0
+f3
+V1760
+H0
+tPREREQUISITES
+n40 0
+f1
+V1880
+H0
+tFor
+wh24
+tcreating
+wh24
+ta
+wh24
+tpatch
+wh24
+tyou
+wh24
+tneed
+n40 0
+V2000
+H0
+to
+h96
+tAll
+wh24
+titems
+wh24
+tmentioned
+wh24
+tin
+wf3
+h24
+tINSTALL
+f1
+t.
+wh48
+tYou
+Caa
+h24
+tre
+wh48
+tnot
+wh48
+tgoing
+wh48
+tto
+n40 0
+V2040
+H120
+tsend
+wh24
+ta
+wh24
+tpatch
+wh24
+tthat
+wh24
+tyou
+wh24
+thaven
+Caa
+h24
+tt
+wh24
+teven
+wh24
+tbuilt,
+wh24
+tright?
+n40 0
+V2120
+H0
+to
+h96
+tGNU
+wh24
+tdiff
+n40 0
+V2200
+H0
+to
+h96
+tPython
+wh48
+t(version
+wh24
+t1.5
+wh24
+tor
+wh24
+tnewer).
+wh48
+tYou
+wh24
+tcan
+wh24
+tof
+wh24
+tcourse
+wh24
+tmake
+n40 0
+V2240
+H120
+ta
+wh24
+tpatch
+wh24
+tby
+wh24
+thand,
+wh24
+twhich
+wh24
+twould
+wh24
+tgo
+wh24
+tsomething
+wh24
+tlike:
+n40 0
+V2320
+H0
+Dl 240 0
+n40 0
+V2360
+H0
+t[1]
+wh24
+Caa
+h24
+tMake
+wh24
+tdiff
+Caa
+wh48
+tgenerates
+wh24
+ta
+wh24
+tpatch
+wh24
+tbetween
+wh24
+ttwo
+wh24
+ttar
+Chy
+h24
+n40 0
+V2400
+H0
+tballs.
+wh48
+tFor
+wh24
+tmore
+wh24
+tinfo
+wh24
+ttype
+wh24
+Caa
+h24
+tmake
+wh24
+tdiff
+wh24
+thelp==
+Caa
+h24
+t.
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p3
+x font 1 R
+f1
+s10
+V160
+H696
+t-3-
+h672
+n40 0
+V280
+H336
+tmake
+wh24
+tdistclean
+n40 0
+V320
+H336
+tcd
+wh24
+t..
+n40 0
+V360
+H336
+tdiff
+wh24
+t-urN
+wh24
+tlilypond-0.1.73
+wh24
+tlilypond-0.1.73.jcn1
+wh24
+t>
+wh24
+tlilypond-0.1.73.jcn1
+n40 0
+V600
+H120
+tbut
+wh24
+tthere
+wh48
+tare
+wh48
+thandy
+wh48
+tpython
+wh48
+tscripts
+wh48
+tavailable.
+wh72
+tIf
+n40 0
+V640
+H120
+tyou
+Caa
+h24
+tre
+wh48
+tdoing
+wh24
+tdevelopment,
+wh24
+tyou
+Caa
+h24
+tll
+wh24
+tneed
+wh24
+tPython
+wh24
+tfor
+wh24
+tother
+n40 0
+V680
+H120
+tLilyPond
+wh24
+tscripts
+wh24
+tanyway.
+n40 0
+V800
+H0
+to
+h96
+tThe
+wh24
+tLily
+wh24
+tdirectory
+wh24
+tstructure,
+wh24
+twhich
+wh24
+tlooks
+wh24
+tlike:
+n40 0
+V1080
+H336
+tdoos/
+wh576
+t#
+wh24
+tgnu/windows32
+wh24
+tbuild
+wh24
+tand
+wh24
+tbinary
+wh24
+treleases
+n40 0
+V1120
+H336
+tharmonia
+wh24
+t->
+wh24
+tharmonia-x.y.z
+n40 0
+V1160
+H336
+tharmonia-x.y.z/
+n40 0
+V1200
+H336
+tlilypond
+wh24
+t->
+wh24
+tlilypond-x.y.z
+wh72
+t#
+wh24
+tsymlink
+wh24
+tto
+wh24
+tdevelopment
+wh24
+tdirectory
+n40 0
+V1240
+H336
+tlilypond-x.y.z/
+wh336
+t#
+wh24
+tcurrent
+wh24
+tdevelopment
+n40 0
+V1280
+H336
+tpatches/
+wwh408
+t#
+wh24
+tpatches
+wh24
+tbetween
+wh24
+tdifferent
+wh24
+treleases
+n40 0
+V1320
+H336
+tRedHat/BUILD
+wh408
+t#
+wh24
+tRedHat
+wh24
+tbuild
+wh24
+tand
+wh24
+tbinary
+wh24
+treleases
+n40 0
+V1360
+H336
+tRedHat/RPMS
+n40 0
+V1400
+H336
+tRedHat/SPECS
+n40 0
+V1440
+H336
+treleases/
+wh480
+t#
+wh24
+t.tar.gz
+wh24
+treleases
+n40 0
+V1480
+H336
+ttest/
+wh576
+t#
+wh24
+ttarballs
+wh24
+tand
+wh24
+tdiffs
+wh24
+tfrom
+wh24
+tcurrent
+wh24
+tversion
+n40 0
+V1520
+H336
+tyodl
+wh24
+t->
+wh24
+tyodl-1.30.17
+n40 0
+V1560
+H336
+tyodl-1.30.17
+n40 0
+V1760
+H120
+twith
+wh24
+tprefix
+wx font 3 B
+f3
+h24
+t$HOME/usr/src
+wf1
+h24
+tand
+wh24
+t(for
+wh24
+tbuilding
+wh24
+trpms
+wh48
+tonly)
+n40 0
+V1800
+H120
+tin
+wf3
+h24
+t$HOME/.rpmrc
+f1
+t:
+n40 0
+V2040
+H336
+ttopdir:
+wh24
+t/home/fred/usr/src/RedHat
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p4
+x font 1 R
+f1
+s10
+V160
+H696
+t-4-
+h672
+n40 0
+x font 3 B
+f3
+V280
+H0
+tAPPLYING
+wh24
+tPATCHES
+n40 0
+f1
+V400
+H0
+tIf
+wh48
+tyou
+Caa
+h24
+tre
+wh48
+tfollowing
+wh48
+tLilyPond
+wh48
+tdevelopment
+wh48
+tregularly,
+wh24
+tyou
+n40 0
+V440
+H0
+tprobably
+wh24
+twant
+wh24
+tto
+wh24
+tdownload
+wh24
+tjust
+wh24
+tthe
+wh24
+tpatch
+wh24
+tfor
+wh24
+teach
+wh24
+tsubsequent
+n40 0
+V480
+H0
+trelease.
+wh72
+tAfter
+wh48
+tdownloading
+wh48
+tthe
+wh48
+tpatch
+wh48
+t(into
+wh24
+tthe
+wh24
+tpatches
+n40 0
+V520
+H0
+tdirectory,
+wh24
+tof
+wh24
+tcourse),
+wh24
+tsimply
+wh24
+tapply
+wh24
+tit:
+n40 0
+V800
+H216
+tgzip
+wh24
+t-dc
+wh24
+t../patches/lilypond-0.1.74.diff.gz
+wh24
+t|
+wh24
+tpatch
+wh24
+t-p1
+wh24
+t-E
+n40 0
+V1040
+H0
+tand
+wh24
+tdon
+Caa
+h24
+tt
+wh24
+tforget
+wh24
+tto
+wh24
+tmake
+wh24
+tautomatically
+wh24
+tgenerated
+wh24
+tfiles:
+n40 0
+V1320
+H216
+tautoconf
+wh24
+tfootnote(patches
+wh24
+tdon
+Caa
+h24
+tt
+wh24
+tinclude
+wh24
+tautomatically
+wh24
+tgenerated
+wh24
+tfiles,
+n40 0
+V1360
+H216
+ti.e.
+wh24
+tfile(configure)
+wh24
+tand
+wh24
+tfiles
+wh24
+tgenerated
+wh24
+tby
+wh24
+tfile(configure).)
+n40 0
+V1440
+H216
+tconfigure
+n40 0
+f3
+V1720
+H0
+tSYNCHRONISE
+n40 0
+f1
+V1840
+H0
+tIf
+wh24
+tyou
+Caa
+h24
+tre
+wh24
+tnot
+wh24
+tvery
+wh24
+tquick
+wh24
+twith
+wh24
+tsending
+wh24
+tyour
+wh24
+tpatch,
+wh24
+tthere
+Caa
+h24
+ts
+wh48
+ta
+n40 0
+V1880
+H0
+tgood
+wh24
+tchance
+wh24
+tthat
+wh24
+tan
+wh24
+tnew
+wh24
+trelease
+wh24
+tof
+wh24
+tLilyPond
+wh24
+tcomes
+wh24
+tavailable.
+n40 0
+V1920
+H0
+tIn
+wh24
+tsuch
+wh24
+ta
+wh24
+tcase
+wh24
+t(and
+wh24
+tsometimes
+wh24
+tfor
+wh24
+tother
+wh24
+tunkown
+wh24
+treasons
+wh48
+t:-),
+n40 0
+V1960
+H0
+tthe
+wh48
+tmaintainer
+wh48
+twill
+wh48
+tprobably
+wh48
+task
+wh24
+tyou
+wh24
+tto
+wh24
+tmake
+wh24
+ta
+wh24
+tnew
+wh24
+tpatch
+n40 0
+V2000
+H0
+tagainst
+wh24
+tthe
+wh24
+tlatest
+wh24
+trelease.
+wh48
+tYour
+wh24
+tbest
+wh24
+tbet
+wh48
+tis
+wh48
+tto
+wh48
+tdownload
+n40 0
+V2040
+H0
+tthe
+wh48
+tlatest
+wh48
+trelease,
+wh48
+tand
+wh24
+tapply
+wh24
+tyour
+wh24
+tpatch
+wh24
+tagainst
+wh24
+tthis
+wh24
+tnew
+n40 0
+V2080
+H0
+tsource
+wh24
+ttree:
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p5
+x font 1 R
+f1
+s10
+V160
+H696
+t-5-
+h672
+n40 0
+V280
+H216
+tcd
+wh24
+tlilypond-0.1.74
+n40 0
+V320
+H216
+tgzip
+wh24
+t-dc
+wh24
+t../patches/lilypond-0.1.73.jcn1.diff.gz
+wh24
+t|
+wh24
+tpatch
+wh24
+t-p1
+wh24
+t-E
+n40 0
+V360
+H216
+tautoconf
+n40 0
+V400
+H216
+tconfigure
+n40 0
+V640
+H0
+tThen,
+wh24
+tmake
+wh24
+ta
+wh24
+tpatch
+wh24
+tas
+wh24
+tshown
+wh24
+tabove.
+n40 0
+x font 3 B
+f3
+V760
+H0
+tSEE
+wh24
+tALSO
+n40 0
+V880
+H0
+tstepmake/INSTALL.txt
+n40 0
+V1000
+H0
+tMAINTAINER
+n40 0
+f1
+V1120
+H0
+tHan-Wen
+wh24
+tNienhuys
+wh24
+t<hanwen@cs.uu.nl>
+n40 0
+V1200
+H0
+tJust
+wh24
+tkeep
+wh24
+ton
+wh24
+tsending
+wh24
+tthose
+wh24
+tpatches!
+n40 0
+V2560
+H1440
+n40 0
+x trailer
+V2640
+x stop
-
-
-
-
-
-
-
-
-
- This is the toplevel README to LilyPond
-
-
-LilyPond is the GNU Project music typesetter. This program
-can print beautiful sheet music from a music definition
-file. It can also play mechanical performances to a MIDI
-file. Features include multiple staffs, meters, clefs,
-keys, lyrics, versatile input language, cadenzas, beams,
-slurs, triplets, named chords, transposing, formatting
-scores, part extraction. It includes a nice font of musical
-symbols.
-
-
-1: VERSIONING
-
-
-LilyPond uses a versioning scheme similar to the Linux ker-
-nel. In a version "x.y.z", an even second number 'y'
-denotes a stable version. For development versions 'y' is
-odd. For using straightforward score production, please use
-the latest stable version. Development versions may not
-produce good or nice scores.
-
-If you have downloaded a
-
-*.pre*
-
-version, then this is version is *not* meant for producing
-nice output (but to keep your patchsets up to date). It
-might not even compile. The same goes for a version with a
-4th version number, eg
-
-1.2.3.mypatch2
-
-It will be safer if you download 1.2.3 or wait for 1.2.4.
-
-
-2: REQUIREMENTS
-
-
-For the compilation and running of LilyPond you need some
-additional packages. Please refer to the installation
-instructions.
-
-NOTE: If you downloaded a binary (.rpm or a W95/NT .zip
-file), then you don't have to compile LilyPond.
-
-
-3: INSTALLATION
-
-
-For your convenience, a formatted copy of the INSTALL
-instructions are in the toplevel directory, as INSTALL.txt
-
-The process is fairly straightforward, but chances are that
-you have to specify directories for to configure: this is
-done with the options --enable-tex-dir and --enable-mf-dir
-
-
-4: DOCUMENTATION
-
-
-The real documentation is the directory Documentation/
-
-To generate the pretty-printed docs, you have to run config-
-ure first, and then do this:
-
-make doc
-
-You can also simply read the .yo sources. They are ASCII
-text. The complete documentation is accessible in formatted
-form at the website http://www.cs.uu.nl/people/hanwen/lily-
-pond/index.html
-
-
-5: COMMENTS
-
-
-LilyPond is a long way from finished and polished. We do
-appreciate criticism, comments, bugreports, patches, etc.
-
-Please send your e-mail to one of the MAILING LISTS
-
-and not to us personally. See Documentation/links.yo for
-more info.
-
-
-6: WINDOWS 32
-
-
-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 might contain more
-documentation ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/
-
-If you decide to build LilyPond from source, please read the
-INSTALL.txt document first, especially the Windows NT/95
-section.
-
-
-7: CAVEATS
-
-
-* Please read the file BUGS for some ugly bugs. This espe-
-cially applies Linux-Intel unix users.
-
-* If you have installed a previous version, be sure to
-remove old font files, eg
-
-
-
-
- rm `find /var/lib/texmf/fonts -name 'feta*'`
-
-
-
-
-a script to do this for you is in buildscripts/clean-
-fonts.sh
-
-
-8: CDROM DISTRIBUTIONS
-
-
-If you have received LilyPond on a cdrom, chances are that
-development has moved a some patchlevels up. If possible,
-please check the latest version of LilyPond before reporting
-bugs.
+x T ascii
+x res 240 24 40
+x init
+p1
+x font 3 B
+f3
+s10
+V400
+H240
+tThis
+wh24
+tis
+wh24
+tthe
+wh24
+ttoplevel
+wh24
+tREADME
+wh24
+tto
+wh24
+tLilyPond
+n40 0
+x font 1 R
+f1
+V520
+H0
+tLilyPond
+wh48
+tis
+wh24
+tthe
+wh24
+tGNU
+wh24
+tProject
+wh24
+tmusic
+wh24
+ttypesetter.
+wh48
+tThis
+wh24
+tprogram
+n40 0
+V560
+H0
+tcan
+wh24
+tprint
+wh24
+tbeautiful
+wh24
+tsheet
+wh48
+tmusic
+wh48
+tfrom
+wh48
+ta
+wh48
+tmusic
+wh48
+tdefinition
+n40 0
+V600
+H0
+tfile.
+wh72
+tIt
+wh48
+tcan
+wh48
+talso
+wh24
+tplay
+wh24
+tmechanical
+wh24
+tperformances
+wh24
+tto
+wh24
+ta
+wh24
+tMIDI
+n40 0
+V640
+H0
+tfile.
+wh48
+tFeatures
+wh48
+tinclude
+wh48
+tmultiple
+wh48
+tstaffs,
+wh48
+tmeters,
+wh48
+tclefs,
+n40 0
+V680
+H0
+tkeys,
+wh48
+tlyrics,
+wh48
+tversatile
+wh48
+tinput
+wh48
+tlanguage,
+wh24
+tcadenzas,
+wh24
+tbeams,
+n40 0
+V720
+H0
+tslurs,
+wh48
+ttriplets,
+wh48
+tnamed
+wh48
+tchords,
+wh48
+ttransposing,
+wh72
+tformatting
+n40 0
+V760
+H0
+tscores,
+wh24
+tpart
+wh24
+textraction.
+wh48
+tIt
+wh24
+tincludes
+wh24
+ta
+wh24
+tnice
+wh24
+tfont
+wh24
+tof
+wh24
+tmusical
+n40 0
+V800
+H0
+tsymbols.
+n40 0
+f3
+V920
+H0
+t1:
+wh24
+tVERSIONING
+n40 0
+f1
+V1040
+H0
+tLilyPond
+wh24
+tuses
+wh24
+ta
+wh24
+tversioning
+wh24
+tscheme
+wh24
+tsimilar
+wh24
+tto
+wh24
+tthe
+wh24
+tLinux
+wh48
+tker
+Chy
+h24
+n40 0
+V1080
+H0
+tnel.
+wh72
+tIn
+wh48
+ta
+wh48
+tversion
+wh48
+t"x.y.z",
+wh48
+tan
+wh48
+teven
+wh48
+tsecond
+wh24
+tnumber
+wh24
+Caa
+h24
+ty
+Caa
+h24
+n40 0
+V1120
+H0
+tdenotes
+wh24
+ta
+wh24
+tstable
+wh24
+tversion.
+wh48
+tFor
+wh24
+tdevelopment
+wh24
+tversions
+wh48
+Caa
+h24
+ty
+Caa
+wh72
+tis
+n40 0
+V1160
+H0
+todd.
+wh48
+tFor
+wh24
+tusing
+wh24
+tstraightforward
+wh24
+tscore
+wh24
+tproduction,
+wh24
+tplease
+wh24
+tuse
+n40 0
+V1200
+H0
+tthe
+wh24
+tlatest
+wh24
+tstable
+wh24
+tversion.
+wh72
+tDevelopment
+wh48
+tversions
+wh48
+tmay
+wh48
+tnot
+n40 0
+V1240
+H0
+tproduce
+wh24
+tgood
+wh24
+tor
+wh24
+tnice
+wh24
+tscores.
+n40 0
+V1320
+H0
+tIf
+wh24
+tyou
+wh24
+thave
+wh24
+tdownloaded
+wh24
+ta
+n40 0
+V1400
+H0
+t*.pre*
+n40 0
+V1480
+H0
+tversion,
+wh48
+tthen
+wh48
+tthis
+wh24
+tis
+wh24
+tversion
+wh24
+tis
+wh24
+t*not*
+wh24
+tmeant
+wh24
+tfor
+wh24
+tproducing
+n40 0
+V1520
+H0
+tnice
+wh24
+toutput
+wh24
+t(but
+wh24
+tto
+wh24
+tkeep
+wh24
+tyour
+wh24
+tpatchsets
+wh48
+tup
+wh48
+tto
+wh48
+tdate).
+wh72
+tIt
+n40 0
+V1560
+H0
+tmight
+wh48
+tnot
+wh24
+teven
+wh24
+tcompile.
+wh48
+tThe
+wh24
+tsame
+wh24
+tgoes
+wh24
+tfor
+wh24
+ta
+wh24
+tversion
+wh24
+twith
+wh24
+ta
+n40 0
+V1600
+H0
+t4th
+wh24
+tversion
+wh24
+tnumber,
+wh24
+teg
+n40 0
+V1680
+H0
+t1.2.3.mypatch2
+n40 0
+V1760
+H0
+tIt
+wh24
+twill
+wh24
+tbe
+wh24
+tsafer
+wh24
+tif
+wh24
+tyou
+wh24
+tdownload
+wh24
+t1.2.3
+wh24
+tor
+wh24
+twait
+wh24
+tfor
+wh24
+t1.2.4.
+n40 0
+f3
+V1880
+H0
+t2:
+wh24
+tREQUIREMENTS
+n40 0
+f1
+V2000
+H0
+tFor
+wh24
+tthe
+wh24
+tcompilation
+wh24
+tand
+wh24
+trunning
+wh24
+tof
+wh24
+tLilyPond
+wh48
+tyou
+wh48
+tneed
+wh48
+tsome
+n40 0
+V2040
+H0
+tadditional
+wh48
+tpackages.
+wh72
+tPlease
+wh48
+trefer
+wh48
+tto
+wh48
+tthe
+wh48
+tinstallation
+n40 0
+V2080
+H0
+tinstructions.
+n40 0
+V2160
+H0
+tNOTE:
+wh24
+tIf
+wh24
+tyou
+wh24
+tdownloaded
+wh24
+ta
+wh24
+tbinary
+wh48
+t(.rpm
+wh48
+tor
+wh48
+ta
+wh48
+tW95/NT
+wh48
+t.zip
+n40 0
+V2200
+H0
+tfile),
+wh24
+tthen
+wh24
+tyou
+wh24
+tdon
+Caa
+h24
+tt
+wh24
+thave
+wh24
+tto
+wh24
+tcompile
+wh24
+tLilyPond.
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p2
+x font 1 R
+f1
+s10
+V160
+H696
+t-2-
+h672
+n40 0
+x font 3 B
+f3
+V280
+H0
+t3:
+wh24
+tINSTALLATION
+n40 0
+f1
+V400
+H0
+tFor
+wh48
+tyour
+wh48
+tconvenience,
+wh48
+ta
+wh48
+tformatted
+wh48
+tcopy
+wh48
+tof
+wh48
+tthe
+wh24
+tINSTALL
+n40 0
+V440
+H0
+tinstructions
+wh24
+tare
+wh24
+tin
+wh24
+tthe
+wh24
+ttoplevel
+wh24
+tdirectory,
+wh24
+tas
+wh24
+tINSTALL.txt
+n40 0
+V520
+H0
+tThe
+wh24
+tprocess
+wh24
+tis
+wh24
+tfairly
+wh24
+tstraightforward,
+wh24
+tbut
+wh24
+tchances
+wh24
+tare
+wh48
+tthat
+n40 0
+V560
+H0
+tyou
+wh48
+thave
+wh48
+tto
+wh24
+tspecify
+wh24
+tdirectories
+wh24
+tfor
+wh48
+tto
+wh24
+tconfigure:
+wh24
+tthis
+wh24
+tis
+n40 0
+V600
+H0
+tdone
+wh24
+twith
+wh24
+tthe
+wh24
+toptions
+wh24
+t--enable-tex-dir
+wh24
+tand
+wh24
+t--enable-mf-dir
+n40 0
+f3
+V720
+H0
+t4:
+wh24
+tDOCUMENTATION
+n40 0
+f1
+V840
+H0
+tThe
+wh24
+treal
+wh24
+tdocumentation
+wh24
+tis
+wh24
+tthe
+wh24
+tdirectory
+wh24
+tDocumentation/
+n40 0
+V920
+H0
+tTo
+wh24
+tgenerate
+wh24
+tthe
+wh24
+tpretty-printed
+wh24
+tdocs,
+wh24
+tyou
+wh24
+thave
+wh24
+tto
+wh24
+trun
+wh24
+tconfig
+Chy
+h24
+n40 0
+V960
+H0
+ture
+wh24
+tfirst,
+wh24
+tand
+wh24
+tthen
+wh24
+tdo
+wh24
+tthis:
+n40 0
+V1040
+H0
+tmake
+wh24
+tdoc
+n40 0
+V1120
+H0
+tYou
+wh48
+tcan
+wh48
+talso
+wh48
+tsimply
+wh24
+tread
+wh24
+tthe
+wh24
+t.yo
+wh24
+tsources.
+wh48
+tThey
+wh24
+tare
+wh24
+tASCII
+n40 0
+V1160
+H0
+ttext.
+wh48
+tThe
+wh24
+tcomplete
+wh24
+tdocumentation
+wh24
+tis
+wh24
+taccessible
+wh24
+tin
+wh24
+tformatted
+n40 0
+V1200
+H0
+tform
+wh48
+tat
+wh24
+tthe
+wh24
+twebsite
+wh24
+thttp://www.cs.uu.nl/people/hanwen/lily
+Chy
+h24
+n40 0
+V1240
+H0
+tpond/index.html
+n40 0
+f3
+V1360
+H0
+t5:
+wh24
+tCOMMENTS
+n40 0
+f1
+V1480
+H0
+tLilyPond
+wh24
+tis
+wh24
+ta
+wh24
+tlong
+wh24
+tway
+wh24
+tfrom
+wh24
+tfinished
+wh24
+tand
+wh48
+tpolished.
+wh72
+tWe
+wh48
+tdo
+n40 0
+V1520
+H0
+tappreciate
+wh24
+tcriticism,
+wh24
+tcomments,
+wh24
+tbugreports,
+wh24
+tpatches,
+wh24
+tetc.
+n40 0
+V1600
+H0
+tPlease
+wh24
+tsend
+wh24
+tyour
+wh24
+te-mail
+wh24
+tto
+wh24
+tone
+wh24
+tof
+wh24
+tthe
+wh24
+tMAILING
+wh24
+tLISTS
+n40 0
+V1680
+H0
+tand
+wh48
+tnot
+wh48
+tto
+wh48
+tus
+wh24
+tpersonally.
+wh48
+tSee
+wf3
+h24
+tDocumentation/links.yo
+wf1
+h24
+tfor
+n40 0
+V1720
+H0
+tmore
+wh24
+tinfo.
+n40 0
+f3
+V1840
+H0
+t6:
+wh24
+tWINDOWS
+wh24
+t32
+n40 0
+f1
+V1960
+H0
+tIf
+wh24
+tyou
+wh24
+thave
+wh24
+treceived
+wh24
+tthis
+wh24
+tfile
+wh24
+tas
+wh48
+tpart
+wh48
+tof
+wh48
+ta
+wh48
+tDOS/Window32
+n40 0
+V2000
+H0
+tdistribution
+wh48
+t(lilypond-*.zip),
+wh24
+tthen
+wh24
+tit
+wh24
+tis
+wh24
+tadvisable
+wh24
+tto
+wh24
+talso
+n40 0
+V2040
+H0
+tdownload
+wh24
+tthe
+wh24
+tsource
+wh24
+tpackage,
+wh24
+tsince
+wh48
+tit
+wh48
+tmight
+wh48
+tcontain
+wh48
+tmore
+n40 0
+V2080
+H0
+tdocumentation
+wh24
+tftp://ftp.cs.uu.nl/pub/GNU/LilyPond/
+n40 0
+V2160
+H0
+tIf
+wh24
+tyou
+wh24
+tdecide
+wh24
+tto
+wh24
+tbuild
+wh24
+tLilyPond
+wh24
+tfrom
+wh24
+tsource,
+wh24
+tplease
+wh24
+tread
+wh24
+tthe
+n40 0
+V2200
+H0
+tINSTALL.txt
+wh24
+tdocument
+wh24
+tfirst,
+wh48
+tespecially
+wh48
+tthe
+wh48
+tWindows
+wh48
+tNT/95
+n40 0
+V2240
+H0
+tsection.
+n40 0
+V2560
+H1440
+n40 0
+V2640
+p3
+x font 1 R
+f1
+s10
+V160
+H696
+t-3-
+h672
+n40 0
+x font 3 B
+f3
+V280
+H0
+t7:
+wh24
+tCAVEATS
+n40 0
+f1
+V400
+H0
+t*
+wh48
+tPlease
+wh24
+tread
+wh24
+tthe
+wh24
+tfile
+wh24
+tBUGS
+wh24
+tfor
+wh24
+tsome
+wh24
+tugly
+wh24
+tbugs.
+wh48
+tThis
+wh24
+tespe
+Chy
+h24
+n40 0
+V440
+H0
+tcially
+wh24
+tapplies
+wh24
+tLinux-Intel
+wh24
+tunix
+wh24
+tusers.
+n40 0
+V520
+H0
+t*
+wh24
+tIf
+wh24
+tyou
+wh24
+thave
+wh24
+tinstalled
+wh48
+ta
+wh48
+tprevious
+wh48
+tversion,
+wh48
+tbe
+wh48
+tsure
+wh48
+tto
+n40 0
+V560
+H0
+tremove
+wh24
+told
+wh24
+tfont
+wh24
+tfiles,
+wh24
+teg
+n40 0
+V760
+H120
+trm
+wh24
+t`find
+wh24
+t/var/lib/texmf/fonts
+wh24
+t-name
+wh24
+Caa
+h24
+tfeta*
+Caa
+h24
+t`
+n40 0
+V960
+H0
+ta
+wh48
+tscript
+wh48
+tto
+wh48
+tdo
+wh48
+tthis
+wh48
+tfor
+wh48
+tyou
+wh48
+tis
+wh24
+tin
+wf3
+h24
+tbuildscripts/clean-
+n40 0
+V1000
+H0
+tfonts.sh
+n40 0
+V1120
+H0
+t8:
+wh24
+tCDROM
+wh24
+tDISTRIBUTIONS
+n40 0
+f1
+V1240
+H0
+tIf
+wh24
+tyou
+wh24
+thave
+wh24
+treceived
+wh24
+tLilyPond
+wh24
+ton
+wh24
+ta
+wh24
+tcdrom,
+wh24
+tchances
+wh48
+tare
+wh48
+tthat
+n40 0
+V1280
+H0
+tdevelopment
+wh48
+thas
+wh48
+tmoved
+wh24
+ta
+wh24
+tsome
+wh24
+tpatchlevels
+wh24
+tup.
+wh48
+tIf
+wh24
+tpossible,
+n40 0
+V1320
+H0
+tplease
+wh24
+tcheck
+wh24
+tthe
+wh24
+tlatest
+wh24
+tversion
+wh24
+tof
+wh24
+tLilyPond
+wh24
+tbefore
+wh24
+treporting
+n40 0
+V1360
+H0
+tbugs.
+n40 0
+V2560
+H1440
+n40 0
+x trailer
+V2640
+x stop
mentioned here. This is an assorted collection of stuff that will be
done, might be 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/urg
+Most of the items are marked in the code as well
+Grep for TODO and ugh/ugr/urg.
.* BUGS
. * .ly files
. * fix singleStaffBracket
. * \shape 1st dim skipped?
. * turn slope-damping on/off
-. * c4 \! \> c4
. * tremolo stuff
. * fix height of / collisions with lyrics (chords),
see input/test/vertical-text.ly; input/test/repeat.ly
. * We need feta-din*.mf files for more sizes than 10.
. * latex bla.tex broken (titles / \lilyfooter stuff?)
. * fix dynamics decently, ie. use kerning & ligatures.
-. * fix "I've been drinking too much"
. * support_l_arr_ empty in staff-margin's G_staff_side_item
. * minVerticalAlign for StaffGroups.
. * declaring \score
-. * is \break broken? input/test/hara-kiri.ly
. * fix OrchestralScore and Hara-kiri (i.e., fix Coriolan)
. * Phrasing: Indicating the textual underlay of a piece, or
otherwise dividing a piece into phrases.
. * Check gcc 2.8.1 compatibility
. * make "in-between" engraver (Tie, Extender)
. * use Drul_array for Interval.
+. * compulsory hshift
. * ties to tie only notes of the same pitch, so that
< a~ a,> a
works as you'd expect it to.
. * do --safe for PS output?
. * convert-mudela --output
. * Staff_margin (with a partial measure.)
-. * fix "I've been drinking too much"
. * fix pletvisibility properties:
. * bracket on/off/no-bracket-when-beam
. * num on/off/no-num-when-beam
. * capitalization/use of underscores in property names
. * fix SkipBars -> skipBars
-. * fix marks/barnumbers/marginal notes
. * broken scripts:
lbheel = \script { "bheel" 0 0 -1 0 0 }
rbheel = \script { "bheel" 0 0 1 0 0 }
. * deps for ly2dvi
.* STUFF
. * check out legal/(c) matters for scores.
-. * check out GCC signatures?
. * Align_element::padding ?
. * uniformise property names...
. * ydirection <-> yDirection
{\voicetwo cis,4 r r | r2. | r1 }> |
}
. * try to use template<Type> iso MACRO(Type)
-. * NEWS: ... Musical_pitch (analogous to Duration and Rhythmic_req)
+. * Musical_pitch (analogous to Duration and Rhythmic_req)
think about, analogous to pitch:
* { a4 a16 } c <-- duration of c?
* < a4 b8 > c <-- duration of c?
in the middle:
. * the bracket is ugly (wings are too parabolic, should be more circular)
. * better hshift (dots, distance, head dependent)
- * clefs (AG): The "8" should appear closer to the actual clef,
- touching it.
+. * clefs (AG): The "8" should appear closer to the actual clef,
+touching it.
. * put errorlevel in Input class
. * junk nesting slurs
. * integrate midi-elts from mi2mu and lily?
.* 3RD PARTY BUGS
. * GNU diff 2.7: diff -rN does not see a new directory with empty file
+. * check out GCC signatures?
. * glibc 2.0:
f = fopen ("/dev/null", "r")
assert (feof (f))
. * fontlock: \melodic \melodic
. * use properties for:
-. * plet?
. * Staff_sym size
. * default tempo.
-. * font size
-. * bartypes (get rid of derived Span_bar_engravers)
. * cadenza mode?
. * page handling:
. * quiet/ignore-version options
. * logfile output
-. * elaborate Staff_side baseclass:
-. * scripts
-. * text
-. * slur start/end
-
. * PS
. * speed up PS code.
. * PS lines to .eps files
. * write custom prolog
-. * Output an output format independent (ofi) typeset file; and
- make ofi2 TeX, MusiXTex, Display PostScript, PostScript,
- Ascii... interpreters. (difficult)
-
. * NIFF ?
. * Common Music Notation
. * PostScript output (esp. Beams, Slurs, etc)
. * Rewrite Stem, Beam and Rhythmic_grouping (hairy)
. * [c8. c32 c32]
- **** doc on Rhythmic_grouping
+. * doc on Rhythmic_grouping
. * general shaving on Beam and Stem
. * use plet grouping
. * separate visual from rhythmic info even more
. * beams over bars
. * lines:
-. * Ledger lines, should be separate item: Ledger_lines, Ledger_lines
+. * Ledger lines, should be separate item: Ledger_lines
. * set different line sizes / thicknesses
. * beam stem showthrough, inter beam sizes (french vs german style)
. * caching breakpoints
. * saving them
. * specify number of lines
+
.* INPUTLANGUAGE
. * c4 4 4 4 for c4 c4 c4 c4?
-. * neatly (and readably) expressing concurrent
- voices
. * <c f a>4 ?
. * Viola mode?
@A c g e g
for
cis gis e gis
-. * relative mode for pitch entering
. * configure pitch_byte
. * rest name configurable
.* SMALLISH PROJECTS
-. * limit memory usage; the full coriolan takes up too much resources.
-
. * fix confusing naming in Engraver vs Engraver_group_engraver (context)
. * progress when creating MIDI elts.
. * handle EOF graciously in error messages.
-. * declare notenametab?
-
. * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
. * stafftypes: voice names/ instrument names.
. * lily \tempo
-. * C meter iso 4/4, idem for alla breve, etc.
-
-. * textspanner: center position
-
- * % toe to bheel four to five
+. * % toe to bheel four to five
% ^_u 4_5
% -
% --|x-- --|x--
. * clean solution for staffsize in items.
. * revise calcideal
+
.* IDEAS
. * Output data structures of Mudela in XML/SGML.
. * create libmudela, or liblily_frontend
. * caching breakpoints
. * used fixedpoint arithmetic for min. energy.
. * move towards incremental algorithms.
-. * far fetched language ideas
-. * design meta-language like TeX and Metafont
-. * programming/macros input
. * versioning stuff (cvt mudela, mudela, etc.)
-. * Klavarskribo?
. * dynamic loading of engravers?
.* SMOBS
Han-Wen Nienhuys <hanwen@cs.uu.nl> writes:
PACKAGE_NAME=LilyPond
MAJOR_VERSION=1
MINOR_VERSION=1
-PATCH_LEVEL=31
-MY_PATCH_LEVEL=mb2
+PATCH_LEVEL=32
+MY_PATCH_LEVEL=
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
TFMDIR=`kpsewhich cmr10.tfm`
ln -sf `dirname $TFMDIR` tfm
mkdir -p $prefix/share/
-ln -sf $prefix/lilypond/ $sources/lilypond
-
+if [ ! -x $prefix/share/lilypond ]; then
+ echo ln -sf $sources/lilypond $prefix/share
+ ln -sf $sources/lilypond $prefix/
+fi
if [ -f ../.gdbinit ];
then
ln ../.gdbinit .
datadir = @datadir@
localedir = @localedir@
EXTRA_LIBES = @EXTRA_LIBES@ @LIBS@
+TEX_TFMDIR = @TEX_TFMDIR@
RANLIB = @RANLIB@
DEFS = @DEFS@
#SET_MAKE = @SET_MAKE@
+echo $ac_n "checking Checking TFM directory""... $ac_c" 1>&6
+echo "configure:2851: checking Checking TFM directory" >&5
+CMR10=`kpsewhich tfm cmr10.tfm`
+TEX_TFMDIR=`dirname $CMR10`
+echo "$ac_t""$TEX_TFMDIR" 1>&6
+
+
+
trap '' 1 2 15
cat > confcache <<\EOF
# This file is a shell script that caches the results of configure
s%@GUILE_LDFLAGS@%$GUILE_LDFLAGS%g
s%@LIBOBJS@%$LIBOBJS%g
s%@MAKEINFO@%$MAKEINFO%g
+s%@TEX_TFMDIR@%$TEX_TFMDIR%g
CEOF
EOF
chmod 444 GNUmakefile
+
AC_CHECK_SEARCH_RESULT($YODL2TEXINFO, yodl,
You should install Yodl 1.30.2 or newer)
+
+AC_MSG_CHECKING(Checking TFM directory)
+CMR10=`kpsewhich tfm cmr10.tfm`
+TEX_TFMDIR=`dirname $CMR10`
+AC_MSG_RESULT($TEX_TFMDIR)
+
+AC_SUBST(TEX_TFMDIR)
AC_STEPMAKE_END
+
--- /dev/null
+/*
+ direction.hh -- declare Direction
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+*/
+
+
+#ifndef DIRECTION_HH
+#define DIRECTION_HH
+
+#include "axes.hh"
+
+enum Direction
+{
+ UP=1,
+ DOWN=-1,
+ LEFT=-1,
+ RIGHT=1,
+ MIN=-1,
+ MAX=1,
+ CENTER=0,
+ SMALLER=-1,
+ BIGGER=1,
+ START = -1,
+ STOP = 1
+};
+
+inline Direction
+other_dir (Direction const d)
+{
+ return (Direction)(-d);
+}
+
+inline Direction
+operator - (Direction const d)
+{
+ return other_dir (d);
+}
+
+// huh?
+inline Direction
+flip (Direction *i) {
+ if (*i == (Direction)1)
+ *i = (Direction)-1;
+ else if (*i == (Direction)-1)
+ *i = (Direction)1;
+ return *i;
+}
+
+/**
+ if d > 0: the max operator
+ if d < 0: the min operator
+ */
+template<class T> T minmax (Direction d, T, T);
+
+// String direction_str (Direction, Axis);
+
+#endif // DIRECTION_HH
--- /dev/null
+/*
+ drul-array.hh -- declare Drul_array
+
+ source file of the GNU LilyPond music typesetter
+
+ (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+*/
+
+
+#ifndef DRUL_ARRAY_HH
+#define DRUL_ARRAY_HH
+
+#include "direction.hh"
+
+#include <assert.h>
+
+/**
+ Left/right or Up/down arrays. Drul is nicer sounding than udlr
+ */
+template<class T>
+struct Drul_array
+{
+ T array_[2];
+ T &elem (Direction d)
+ {
+ assert (d==1 || d== -1);
+ return array_[(d+1)/2];
+
+ }
+ T &operator[] (Direction d)
+ {
+ return elem (d);
+ }
+ T elem (Direction d) const
+ {
+ assert (d==1 || d== -1);
+ return array_[(d+1)/2];
+ }
+
+ T operator[] (Direction d) const
+ {
+ return elem (d);
+ }
+ Drul_array ()
+ {}
+ Drul_array (T t1, T t2)
+ {
+ array_[0] = t1;
+ array_[1] = t2;
+ }
+};
+
+#endif // DRUL_ARRAY_HH
#include <assert.h>
#include "fproto.hh"
#include "real.hh"
-
+#include "drul-array.hh"
/** a T interval. this represents the closed interval [left,right].
No invariants. T must be a totally ordered ring (with division, anyway ..)
*/
template<class T>
-struct Interval_t {
- T left, right;
+struct Interval_t : public Drul_array<T> {
/* ************** */
static T infinity() ;
static String T_to_str (T arg);
- // ugh, egcs 1.02 ices on this
-// T center() { return (left + right) / T(2);}
- // and can't handle this either
- // anyone want to make a bug report?
- // better make one soon, egcs in rh5.1 barfs on this!
- T center() {
- T two (2);
-// return (left + right) / two;
- T result ((left + right) / two);
- return result;
- }
- void translate (T t) {
- left += t;
- right += t;
- }
- T& idx (int j) {
- if (j==-1)
- return left;
- else if (j==1)
- return right;
- else
- assert (false);
- return left;
- }
- T& operator[](int j) {
- return idx (j);
- }
- T operator[](int j) const {
- return ((Interval_t<T> *)this)->idx (j);
- }
- T &max() { return right;}
- T max() const { return right;}
- T min() const{ return left; }
- T &min(){ return left; }
+ /*
+ ugh, egcs 1.02 ices on this
+ */
+ T center() { return (elem (LEFT) + elem (RIGHT)) / T(2);}
+ void translate (T t)
+ {
+ elem (LEFT) += t;
+ elem (RIGHT) += t;
+ }
+
+ /*
+ junk us
+ */
+ T &max() { return elem (RIGHT);}
+ T max() const { return elem (RIGHT);}
+ T min() const{ return elem (LEFT); }
+ T &min(){ return elem (LEFT); }
/**
PRE
*this and h are comparable
T length() const;
void set_empty() ;
- bool empty_b() const { return left > right; }
+ bool empty_b() const { return elem (LEFT) > elem (RIGHT); }
bool contains_b (Interval_t<T> const&) const;
Interval_t() {
set_empty();
}
- Interval_t (T m, T M) {
- left =m;
- right = M;
- }
+ Interval_t (T m, T M) : Drul_array<T> (m,M)
+ {}
Interval_t<T> &operator -= (T r) {
*this += -r;
return *this;
}
Interval_t<T> &operator += (T r) {
- left += r;
- right +=r;
+ elem (LEFT) += r;
+ elem (RIGHT) +=r;
return *this;
}
Interval_t<T> &operator *=(T r) {
- left *= r;
- right *= r;
+ elem (LEFT) *= r;
+ elem (RIGHT) *= r;
if (r < T(0)) {
- T t = left;
- left = right;
- right = t;
+ T t = elem (LEFT);
+ elem (LEFT) = elem (RIGHT);
+ elem (RIGHT) = t;
}
return *this;
}
void print () const;
bool elem_b (T r);
void negate () {
- T r = -left;
- T l = -right;
- left = l;
- right =r;
+ T r = -elem (LEFT);
+ T l = -elem (RIGHT);
+ elem (LEFT) = l;
+ elem (RIGHT) =r;
}
};
// again? see fproto.hh
typedef Interval_t<Real> Interval;
-typedef Interval_t<int> Slice;
+typedef Interval_t<int> Slice; // weird name
#endif // INTERVAL_HH
int
_Interval__compare (const Interval_t<T>&a,Interval_t<T> const&b)
{
- if (a.left == b.left && a.right == b.right)
+ if (a.elem (LEFT) == b.elem (LEFT) && a.elem (RIGHT) == b.elem (RIGHT))
return 0;
- if (a.left <= b.left && a.right >= b.right)
+ if (a.elem (LEFT) <= b.elem (LEFT) && a.elem (RIGHT) >= b.elem (RIGHT))
return 1;
- if (a.left >= b.left && a.right <= b.right)
+ if (a.elem (LEFT) >= b.elem (LEFT) && a.elem (RIGHT) <= b.elem (RIGHT))
return -1;
return -2;
void
Interval_t<T>::set_empty()
{
- left = (T) infinity();
- right = (T) -infinity();
+ elem (LEFT) = (T) infinity();
+ elem (RIGHT) = (T) -infinity();
}
template<class T>
T
Interval_t<T>::length() const
{
- if (right < left)
+ if (elem (RIGHT) < elem (LEFT))
return 0;
else
- return right-left;
+ return elem (RIGHT)-elem (LEFT);
}
+/**
+ smallest Interval which includes *this and #h#
+ */
template<class T>
void
Interval_t<T>::unite (Interval_t<T> h)
{
- if (h.left<left)
- left = h.left;
- if (h.right>right)
- right = h.right;
+ elem (LEFT) = h.elem (LEFT) <? elem (LEFT);
+ elem (RIGHT) = h.elem (RIGHT) >?elem (RIGHT);
+
+#if 0
+ if (h.elem (LEFT)<elem (LEFT))
+ elem (LEFT) = h.elem (LEFT);
+ if (h.elem (RIGHT)>elem (RIGHT))
+ elem (RIGHT) = h.elem (RIGHT);
+#endif
}
-/**
- smallest Interval which includes *this and #h#
- */
template<class T>
void
Interval_t<T>::intersect (Interval_t<T> h)
{
#if defined (__GNUG__) && ! defined (__STRICT_ANSI__)
- left = h.left >? left;
- right = h.right <?right;
+ elem (LEFT) = h.elem (LEFT) >? elem (LEFT);
+ elem (RIGHT) = h.elem (RIGHT) <?elem (RIGHT);
#else
- left = max (h.left, left);
- right = min (h.right, right);
+ elem (LEFT) = max (h.elem (LEFT), elem (LEFT));
+ elem (RIGHT) = min (h.elem (RIGHT), elem (RIGHT));
#endif
}
return "[empty]";
String s ("[");
- return s + T_to_str (left) + String ("," ) + T_to_str (right ) + String ("]" );
+ return s + T_to_str (elem (LEFT)) + String ("," ) + T_to_str (elem (RIGHT) ) + String ("]" );
}
template<class T>
bool
Interval_t<T>::elem_b (T r)
{
- return r >= left && r <= right;
+ return r >= elem (LEFT) && r <= elem (RIGHT);
}
-
-\version "1.0.14";
-
\score{
- \notes\relative c'' {
- % set either property -> core dump: two autobeams?
-% \property Voice.fontsize= "-2"
- \property Voice.pletvisibility = 0
-
- % strange staffs, but no core dump
- \times 2/3 { [ c16 c c] } c4 c2
- }
- \paper {
- \translator { \VoiceContext
-% \remove Auto_beam_engraver;
- }
+ \notes \type Voice {
+ \times 2/3 {[c16 c16 c16]}
}
}
+++ /dev/null
-\score{
- \notes\relative c'' {
- <
- \property Voice.textstyle = "large" s4^"Moderato"
- r4
- >
- }
-}
>
>
\paper{
- \paper_sixteen;
+ \paper_sixteen
textheight = 230.\mm;
linewidth= 180.\mm;
\translator {
--- /dev/null
+%{
+do a memory stress test.
+%}
+
+
+bla = \notes {
+ c1(((( c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break c1 \break ))))c1}
+
+\score { \type Score <
+ \bla \bla \bla \bla \bla \bla \bla
+ >
+ \paper { Gourlay_maxmeaures = 2.; }
+}
}
void
-Abbreviation::do_substitute_dependent (Score_element*o, Score_element*n)
+Abbreviation::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
if (stem_l_ == o)
stem_l_ = dynamic_cast<Stem*> (n);
}
void
-Align_element::do_substitute_dependency (Score_element*o,
+Align_element::do_substitute_element_pointer (Score_element*o,
Score_element*n)
{
int i;
Auto_beam_engraver::begin_beam ()
{
DOUT << String ("starting autobeam at: ") + now_mom ().str () + "\n";
+ assert (!beam_p_);
beam_p_ = new Beam;
grouping_p_ = new Rhythmic_grouping;
/* this piece doesn't know where it belongs.
Find out if it was broken, and use the broken remains
*/
- Spanner * sp =dynamic_cast <Spanner *> (elt);
+
Item *it = dynamic_cast <Item *> (elt) ;
- if (sp)
+ if (Spanner * sp =dynamic_cast <Spanner *> (elt))
{
- for (int j =0; j < broken_into_l_arr_.size(); j++)
+ for (int j =0; j < sp->broken_info_.size(); j++)
{
+ Line_of_score *l = sp->broken_info_[j].line_l_;
+
Axis_group_spanner * my_broken_l
- = dynamic_cast<Axis_group_spanner*>(broken_into_l_arr_[j]);
-
+ = dynamic_cast<Axis_group_spanner*>(find_broken_piece (l));
+
Spanner * broken_span_l
- = sp->find_broken_piece (dynamic_cast<Score_element*>(my_broken_l)->line_l());
+ = sp->find_broken_piece (l);
if (broken_span_l)
my_broken_l->add_element (broken_span_l);
-
}
}
else if (it && it->breakable_b_ && it->break_status_dir () == 0)
Item * i =0;
if (hang_on_clef_b_)
{
- Clef_item * c = dynamic_cast<Clef_item*> (e);
- if (c && c->default_b_)
- {
- i = c;
- }
+ i = dynamic_cast<Clef_item*> (e);
}
else
{
{
if (text_p_)
{
- text_p_->breakable_b_ = true; // ugh
typeset_element (text_p_);
text_p_ =0;
}
if (staff_side_p_)
{
- staff_side_p_->breakable_b_ = true; // ugh
typeset_element (staff_side_p_);
staff_side_p_ = 0;
}
staff_side_p_ = new G_staff_side_item;
staff_side_p_->axis_ = axis_;
+ staff_side_p_->breakable_b_ = true; // ugh
+
text_p_ = new G_text_item;
+ text_p_->breakable_b_ = true; // ugh
Scalar prop = get_property (type_ + "Direction", 0);
if (prop.isnum_b ())
}
void
-Beam::do_substitute_dependent (Score_element*o,Score_element*n)
+Beam::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
if (Stem * os = dynamic_cast<Stem*> (o))
stems_.substitute (os,
{
static int i = 1;
cout << "******" << i++ << "******" << endl;
- // gcc 2.7.2: ices
-// cout << "c0.y: " << c[0].y << endl;
cout << "c0.y: " << c[0].y () << endl;
cout << "c3.y: " << c[3].y () << endl;
cout << "dy: " << dy << endl;
/*
-
- ugh . Control points are too crude measures.
+ Ugh. Control points are too crude measures.
*/
Interval
Bow::do_height () const
return iv;
}
-#if 0
-Interval
-Bow::do_width () const
-{
- Interval i = Spanner::do_width ();
- Real dx = i.length();
- return Interval (0, dx);
-}
-#endif
Array<Offset>
Bow::get_controls () const
/* **************************************************************** */
-Line_of_cols
-Break_algorithm::all_cols () const
-{
- Line_of_cols retval;
- for (PCursor<Paper_column*> c (pscore_l_->col_p_list_.top ());
- c.ok (); c++)
- {
-
- retval.push (c);
- }
- return retval;
-}
Array<int>
Break_algorithm::find_break_indices () const
{
- Line_of_cols all (all_cols ());
+ Line_of_cols all (pscore_l_->col_l_arr_);
Array<int> retval;
for (int i=0; i < all.size (); i++)
Line_of_cols
Break_algorithm::find_breaks () const
{
- Line_of_cols all (all_cols ());
+ Line_of_cols all (pscore_l_->col_l_arr_);
Line_of_cols retval;
for (int i=0; i < all.size (); i++)
void
Break_algorithm::problem_OK () const
{
- if (!pscore_l_->col_p_list_.size ())
+ if (pscore_l_->col_l_arr_.empty ())
error (_("score does not have any columns"));
OK ();
}
Break_algorithm::OK () const
{
#ifndef NDEBUG
- iter_top (pscore_l_->col_p_list_,start);
+ #if 0
+ iter_top (pscore_l_->col_p_list_,start);
PCursor<Paper_column *> end (pscore_l_->col_p_list_.bottom ());
assert (start->breakable_b_);
assert (end->breakable_b_);
+ #endif
#endif
}
void
-Collision::do_substitute_dependency (Score_element*o_l,Score_element*n_l)
+Collision::do_substitute_element_pointer (Score_element*o_l,Score_element*n_l)
{
if (o_l)
{
#include "direction.hh"
+#if 0
String direction_str (Direction d, Axis a)
{
String s("center");
}
return s;
}
+#endif
}
void
-Dot_column::do_substitute_dependency (Score_element*o,Score_element*n)
+Dot_column::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
Item *oi =dynamic_cast <Item *> (o);
*/
#include "proto.hh"
-#include "plist.hh"
#include "engraver-group.hh"
#include "engraver.hh"
#include "debug.hh"
}
void
-Extender_spanner::do_substitute_dependency (Score_element* o, Score_element* n)
+Extender_spanner::do_substitute_element_pointer (Score_element* o, Score_element* n)
{
Item* new_l = n ? dynamic_cast<Item *> (n) : 0;
if (dynamic_cast <Item *> (o) == item_l_drul_[LEFT])
void
-G_staff_side_item::do_substitute_dependency (Score_element*o, Score_element*n)
+G_staff_side_item::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
if (o == to_position_l_)
to_position_l_ = n;
#include "p-score.hh"
#include "paper-def.hh"
+#include "killing-cons.tcc"
+
+/// How often to print operator pacification marks?
const int HAPPY_DOTS_I = 3;
/**
};
/**
- This algorithms is adapted from
+ This algorithms is adapted from the OSU Tech report on breaking lines.
+
*/
Array<Column_x_positions>
Gourlay_breaking::do_solve () const
{
Array<Break_node> optimal_paths;
- Line_of_cols all = all_cols ();
+ Line_of_cols all = pscore_l_->col_l_arr_ ;
Array<int> breaks = find_break_indices ();
optimal_paths.set_size (breaks.size ());
{
Array<int> candidates;
Array<Column_x_positions> candidate_lines;
- Pointer_list<Line_spacer*> spacer_p_list;
+ Cons_list<Line_spacer> spacer_p_list;
/*
start with a short line, add measures. At some point
approx.spacer_l_ = generate_spacing_problem (line,
pscore_l_->paper_l_->line_dimensions_int (optimal_paths[start_idx].line_i_));
- spacer_p_list.bottom ().add (approx.spacer_l_);
+ spacer_p_list.append (new Killing_cons<Line_spacer> (approx.spacer_l_,0));
( (Break_algorithm*)this)->approx_stats_.add (approx.cols);
approx.approximate_solve_line ();
if (! (break_idx % HAPPY_DOTS_I))
*mlog << "[" << break_idx << "]" << flush;
+
+ spacer_p_list.junk ();
}
if (break_idx % HAPPY_DOTS_I)
}
void
-Hara_kiri_vertical_group_spanner::do_substitute_dependency (Score_element*o, Score_element*n)
+Hara_kiri_vertical_group_spanner::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
if (Item *it = dynamic_cast<Item *> (o))
interesting_items_.substitute (it, dynamic_cast<Item *> (n));
protected:
virtual void do_print () const;
virtual Molecule *do_brew_molecule_p () const;
- virtual void do_substitute_dependent (Score_element*, Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*, Score_element*);
public:
int abbrev_flags_i_;
Abbreviation ();
protected:
virtual void do_print() const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual void do_post_processing() ;
virtual void do_pre_processing ();
virtual void do_side_processing ();
#include "lily-proto.hh"
#include "lily-guile.hh"
+
#ifdef ATOM_SMOB
/// a symbol which can be translated, and freely copied
#include "item.hh"
/**
A vertical bar.
-
- TODO: connections with pre and postbreak
*/
class Bar:public Item {
public:
void set_steminfo ();
virtual void do_pre_processing ();
virtual void do_post_processing ();
- virtual void do_substitute_dependent (Score_element*, Score_element*);
-
+ virtual void do_substitute_element_pointer (Score_element*, Score_element*);
virtual void do_print() const;
-
virtual void quantise_left_y (bool extend_b);
virtual Molecule stem_beams (Stem *here, Stem *next, Stem *prev) const;
virtual void calculate_slope ();
Bow ();
Offset center () const;
-
-
int dash_i_;
Real interstaff_f_;
Drul_array<Real> vertical_align_drul_;
/// search all pcols which are breakable.
Line_of_cols find_breaks() const;
- Line_of_cols all_cols() const;
Array<int> find_break_indices() const;
*/
class Collision : public Horizontal_vertical_group_item {
protected:
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual void do_pre_processing();
public:
Link_array<Note_column> clash_l_arr_;
#ifndef CONS_HH
#define CONS_HH
-#if 0
-template<class T, class U>
-class NCons
-{
-public:
- T car_;
- U cdr_;
- NCons (T t, U u) : car_ (t), cdr_ (u) {}
- virtual ~NCons () {}
-};
-
-template<class T>
-class Pointer_cons : public NCons<T, NCons*>
-{
- Pointer_cons () : Cons<T, Cons*> (0,0){}
- Pointer_cons (T t, Pointer_cons<T>*c)
- : Cons<T, Cons*> (t,c)
- {
- car_ = t;
- next_ = c;
- }
-};
-#endif
template<class T>
public:
T * car_;
Cons * next_;
- Cons () {
- car_=0;
- next_ =0;
- }
+ Cons ()
+ {
+ car_=0;
+ next_ =0;
+ }
Cons (T*t, Cons<T>*c)
{
car_ = t;
};
+/// remove the link pointed to by *p.
+template<class T>
+Cons<T> *remove_cons (Cons<T> **pp)
+{
+ Cons<T> *knip = *pp;
+ *pp = (*pp)->next_;
+ knip->next_ = 0;
+ return knip;
+}
+
+
template<class T>
class Cons_list
{
Cons<T> * head_;
Cons<T> ** tail_;
Cons_list () { head_ =0; tail_ = &head_; }
+ void append (Cons<T> *c)
+ {
+ assert (!c->next_);
+ *tail_ = c;
+ while (*tail_)
+ tail_ = &(*tail_)->next_;
+ }
+ Cons<T> *remove_cons (Cons<T> **pp)
+ {
+ if (&(*pp)->next_ == tail_)
+ tail_ = pp;
+
+ return ::remove_cons (pp);
+ }
+ void junk ()
+ {
+ delete head_;
+ head_ =0;
+ }
+ ~Cons_list () { junk (); }
};
template<class T>
-Cons_list<T> copy_killing_cons_list (Cons<T> *src);
+void copy_killing_cons_list (Cons_list<T>&, Cons<T> *src);
template<class T>
-Cons_list<T> clone_killing_cons_list (Cons<T> *src);
+void
+clone_killing_cons_list (Cons_list<T>&, Cons<T> *src);
#endif /* CONS_HH */
+++ /dev/null
-/*
- direction.hh -- declare Direction
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef DIRECTION_HH
-#define DIRECTION_HH
-
-#include "axes.hh"
-
-enum Direction
-{
- UP=1,
- DOWN=-1,
- LEFT=-1,
- RIGHT=1,
- MIN=-1,
- MAX=1,
- CENTER=0,
- SMALLER=-1,
- BIGGER=1,
- START = -1,
- STOP = 1
-};
-
-inline Direction
-other_dir (Direction const d)
-{
- return (Direction)(-d);
-}
-
-inline Direction
-operator - (Direction const d)
-{
- return other_dir (d);
-}
-
-// huh?
-inline Direction
-flip (Direction *i) {
- if (*i == (Direction)1)
- *i = (Direction)-1;
- else if (*i == (Direction)-1)
- *i = (Direction)1;
- return *i;
-}
-
-/**
- if d > 0: the max operator
- if d < 0: the min operator
- */
-template<class T> T minmax (Direction d, T, T);
-
-String direction_str (Direction, Axis);
-
-#endif // DIRECTION_HH
protected:
virtual void do_pre_processing ();
- virtual void do_substitute_dependency (Score_element *o, Score_element*n);
+ virtual void do_substitute_element_pointer (Score_element *o, Score_element*n);
};
#endif // DOT_COLUMN_HH
+++ /dev/null
-/*
- drul-array.hh -- declare Drul_array
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef DRUL_ARRAY_HH
-#define DRUL_ARRAY_HH
-
-#include "direction.hh"
-
-#include <assert.h>
-
-/**
- Left/right or Up/down arrays. Drul is nicer sounding than udlr
- */
-template<class T>
-struct Drul_array
-{
- T array_[2];
- T &operator[] (Direction d)
- {
- assert (d==1 || d== -1);
- return array_[(d+1)/2];
- }
- T operator[] (Direction d) const
- {
- assert (d==1 || d== -1);
- return array_[(d+1)/2];
- }
-};
-
-#endif // DRUL_ARRAY_HH
virtual Molecule* do_brew_molecule_p () const;
void do_add_processing ();
Interval do_height () const;
- void do_substitute_dependency (Score_element* o, Score_element* n);
+ void do_substitute_element_pointer (Score_element* o, Score_element* n);
void do_post_processing ();
VIRTUAL_COPY_CONS (Score_element);
virtual void set_default_direction ();
VIRTUAL_COPY_CONS(Score_element);
protected:
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual void do_pre_processing ();
virtual void do_post_processing ();
};
protected:
VIRTUAL_COPY_CONS(Score_element);
- virtual void do_substitute_dependency (Score_element*, Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*, Score_element*);
virtual void do_print ()const;
Link_array<Item> interesting_items_;
#ifndef KILLING_CONS_TCC
#define KILLING_CONS_TCC
+#include "cons.hh"
template<class T>
Killing_cons<T>::~Killing_cons ()
}
template<class T>
-Cons_list<T>
-copy_killing_cons_list (Cons<T> *src)
+void
+copy_killing_cons_list (Cons_list<T> &dest, Cons<T> *src)
{
- Cons_list<T> kl;
-
for (; src; src = src->next_)
{
T *t = new T(*src->car_);
- *kl.tail_ = new Killing_cons<T> (t, 0);
- kl.tail_ = &(*kl.tail_)->next_;
+ dest.append ( new Killing_cons<T> (t, 0));
}
-
- return kl;
}
template<class T>
-Cons_list<T>
-clone_killing_cons_list (Cons<T> *src)
+void
+clone_killing_cons_list (Cons_list<T> & dest, Cons<T> *src)
{
- Cons_list<T> kl;
-
for (; src; src = src->next_)
{
T *t = src->car_->clone ();
- *kl.tail_ = new Killing_cons<T> (t, 0);
- kl.tail_ = &(*kl.pp)->next_;
+ dest.append (new Killing_cons<T> (t, 0));
}
-
- return kl;
}
void add (Musical_pitch);
protected:
virtual void do_pre_processing();
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual Molecule* do_brew_molecule_p() const;
};
#endif // LOCALKEYITEM_HH
virtual void do_add_processing ();
virtual void do_post_processing ();
virtual void do_print () const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
- Array<Rod> get_rods () const;
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
};
#endif /* MULTI_MEASURE_REST_HH */
#include "interpretation-context-handle.hh"
/** Walk through music and deliver music to translation units, synced
- in time. This classa provides both the implementation of the shared
+ in time. This class provides both the implementation of the shared
code, and the public interface.
Derived classes should only have a public constructor.
protected:
virtual void do_pre_processing();
virtual void do_print () const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
public:
/** The relative position of the "voice" containing this
chord. Normally this would be the same as the stem direction,
#include "colhpos.hh"
#include "parray.hh"
#include "lily-proto.hh"
-#include "plist.hh"
#include "music-output.hh"
/** all stuff which goes onto paper. notes, signs, symbols in a score
class Paper_score : public Music_output
{
+ /// crescs etc; no particular order
+ Link_array<Spanner> span_p_arr_;
+
+ /// other elements
+ Link_array<Score_element> elem_p_arr_;
+
+
public:
Paper_def *paper_l_;
/// the columns, ordered left to right
- Link_list<Paper_column *> col_p_list_;
-
- /// crescs etc; no particular order
- Pointer_list<Spanner *> span_p_list_;
+ Link_array<Paper_column> col_l_arr_;
- /// other elements
- Pointer_list<Score_element*> elem_p_list_;
-
Paper_outputter *outputter_l_;
Line_of_score * line_l_;
void add_column (Paper_column*);
/**
- @return argument as a cursor of the list
+ @return index of argument.
*/
- PCursor<Paper_column *> find_col (Paper_column const *) const;
+ int find_col_idx (Paper_column const *) const;
- Link_array<Paper_column> col_range (Paper_column *left_l, Paper_column *right_l) const;
- Link_array<Paper_column> breakable_col_range (Paper_column*,Paper_column*) const;
Link_array<Item> broken_col_range (Item const*,Item const*) const;
/* MAIN ROUTINES */
virtual void process();
-// can't instantiate template with cygnus' gcc...
-// virtual ~Paper_score();
private:
- void remove_line (Line_of_score*);
+
+ Link_array<Score_element> remove_line (Line_of_score*);
+ Link_array<Score_element> remove_break_helpers ();
+
/// before calc_breaking
void preprocess();
/// after calc_breaking
void postprocess();
-
- /// delete unused columns
- void clean_cols();
+ Paper_score (Paper_score const &);
};
#endif
virtual void do_post_processing();
virtual void do_pre_processing();
virtual void do_print() const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
};
#endif // REST_COLLISION_HH
protected:
virtual void do_add_processing ();
virtual void do_print () const;
- virtual void do_substitute_dependent (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
};
#endif // RHYTHMIC_HEAD_HH
/*
- score-element.hh -- part of GNU LilyPond
+ score-element.hh -- declare Score_element
- (c) 1996,97 Han-Wen Nienhuys
+ (c) 1996-1999 Han-Wen Nienhuys
*/
#ifndef STAFFELEM_HH
(elem) */
class Score_element : private Directed_graph_node, public virtual Graphical_element {
public:
+ /// delete after linebreak calculation.
+ bool break_helper_only_b_;
Paper_score *pscore_l_;
Molecule * output_p_;
Score_element ();
/// do calculations after determining horizontal spacing
virtual void do_post_processing ();
- virtual void do_substitute_dependency (Score_element * , Score_element *);
- virtual void do_substitute_dependent (Score_element *, Score_element *);
+ virtual void do_substitute_element_pointer (Score_element * , Score_element *);
virtual void do_break_processing ();
virtual void handle_broken_dependencies ();
virtual void handle_prebroken_dependencies ();
virtual Link_array<Score_element> get_extra_dependencies () const;
virtual void do_unlink ();
virtual void do_junk_links ();
-
};
protected:
virtual void do_print() const;
- virtual void do_substitute_dependency (Score_element*, Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*, Score_element*);
virtual void do_pre_processing() ;
public:
Link_array<Script> script_l_arr_;
protected:
Molecule *do_brew_molecule_p() const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual void do_print() const;
virtual Interval symbol_height() const;
virtual void do_pre_processing();
/*
- separating-group-spanner.hh -- declare
+ separating-group-spanner.hh -- declare Separating_group_spanner
source file of the GNU LilyPond music typesetter
{
Link_array<Single_malt_grouping_item> spacing_unit_l_arr_;
public:
-
+ Separating_group_spanner ();
void add_spacing_unit (Single_malt_grouping_item*);
protected:
VIRTUAL_COPY_CONS(Score_element);
virtual Array<Rod> get_rods () const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
};
#endif /* SEPARATING_GROUP_SPANNER_HH */
+++ /dev/null
-/*
- simple-spacer.hh -- declare
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1998--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#ifndef SIMPLE_SPACER_HH
-#define SIMPLE_SPACER_HH
-
-#include "real.hh"
-#include "array.hh"
-#include "lily-proto.hh"
-#include "list.hh"
-#include "drul-array.hh"
-
-struct Rod_info {
- Real distance_f_;
- Drul_array<int> cols_;
-};
-
-struct Spring_info {
- /// the ideal distance
- Real space_f_;
-
- /// Hooke's constant: how strong are the "springs" attached to columns
- Real hooke_f_;
-
- Real blocking_stretch_f_;
- Rod_info * blocking_rod_l_;
- void set (Idealspacing *);
- Spring_info();
-};
-
-
-class Simple_spring_spacer {
- Array<Spring_info> springs_;
- Pointer_list<Rod_info*> rods_;
-
- void init ();
- Array<Real> solve ();
-
-};
-
-#endif /* SIMPLE_SPACER_HH */
-
#ifndef SIMULTANEOUS_MUSIC_ITERATOR_HH
#define SIMULTANEOUS_MUSIC_ITERATOR_HH
+#include "cons.hh"
#include "music-list-iterator.hh"
class Simultaneous_music_iterator : public Music_list_iterator
virtual void do_process_and_next (Moment);
private:
- Pointer_list<Music_iterator*> children_p_list_;
+ Cons_list<Music_iterator> children_p_list_;
};
#endif // SIMULTANEOUS_MUSIC_ITERATOR_HH
#include "item.hh"
/** Calc dimensions for the Separating_group_spanner; this has to be
- an itme to get dependencies correct. It can't be an element_group
- since these usually are in a different X_group
+ an item to get dependencies correct. It can't be an element_group
+ since these usually are in a different X_group
- It's 1 30 am. Naming suggestions appreciated. */
+ It's 1:30 am. Naming suggestions appreciated.
+*/
class Single_malt_grouping_item : public Item
{
VIRTUAL_COPY_CONS(Score_element);
void add_item (Item*);
protected:
- virtual void do_substitute_dependency (Score_element*, Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*, Score_element*);
virtual void do_print () const;
};
/*
- slur.hh -- part of GNU LilyPond
+ slur.hh -- declare Slur
(c) 1996--1999 Han-Wen Nienhuys
*/
virtual void do_post_processing ();
virtual void do_add_processing ();
virtual void do_pre_processing ();
- virtual void do_substitute_dependency (Score_element*, Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*, Score_element*);
Array<Rod> get_rods () const;
};
#include "bar.hh"
-class Span_bar : public virtual Bar
+class Span_bar : public Bar
{
Link_array<Score_element> spanning_l_arr_;
Interval get_spanned_interval () const;
virtual void do_pre_processing();
virtual void do_post_processing();
virtual Interval do_height () const;
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual Molecule * do_brew_molecule_p() const;
};
#include "drul-array.hh"
#include "rod.hh"
+struct Breaking_information
+{
+ Line_of_score *line_l_;
+ Spanner * broken_spanner_l_;
+ Drul_array<Item*> bounds_;
+ Breaking_information ()
+ {
+ line_l_ =0;
+ broken_spanner_l_ =0;
+ bounds_[LEFT] = bounds_[RIGHT] =0;
+ }
+};
+
+class Axis_group_spanner;
/** A symbol which is attached between two columns. A spanner is a
symbol which spans across several columns, so its final appearance
can only be calculated after the breaking problem is solved.
Spanner (Spanner const &);
bool broken_b () const;
virtual Array<Rod> get_rods () const;
- Spanner* find_broken_piece (Line_of_score*) const;
+ virtual Spanner* find_broken_piece (Line_of_score*) const;
protected:
void set_my_columns ();
VIRTUAL_COPY_CONS(Score_element);
*/
virtual void break_into_pieces ();
- Link_array<Spanner> broken_into_l_arr_;
+ Array<Breaking_information> broken_info_;
+ friend Axis_group_spanner; // UGH
+
Spanner * unbroken_original_l_;
virtual void do_unlink ();
#define SPRING_SPACER_HH
#include "line-spacer.hh"
-#include "plist.hh"
+#include "cons.hh"
#include "col-info.hh"
#include "colhpos.hh"
#include "moment.hh"
class Spring_spacer : public Line_spacer {
friend class Durations_iter;
- Pointer_list<Idealspacing *> ideal_p_list_;
+ Cons<Idealspacing> *ideal_p_list_;
Array<Column_info> cols_;
Array<Column_info> loose_col_arr_;
virtual Interval symbol_height () const;
Interval symbol_extent () const;
virtual Real get_position_f () const;
- virtual void do_substitute_dependency (Score_element *, Score_element*);
+ virtual void do_substitute_element_pointer (Score_element *, Score_element*);
virtual void do_pre_processing ();
virtual void do_post_processing ();
Interval support_extent () const;
Interval_t<int> head_positions() const;
virtual ~Stem ();
protected:
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual void do_pre_processing();
virtual Interval do_width() const;
virtual Molecule* do_brew_molecule_p() const;
VIRTUAL_COPY_CONS(Score_element);
~Text_spanner();
virtual void do_add_processing ();
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual void do_pre_processing();
virtual void do_post_processing();
virtual Interval height() const ;
virtual void do_add_processing ();
virtual void do_post_processing ();
virtual void set_default_dir();
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
virtual Array<Rod> get_rods () const;
Array<Offset> get_controls () const;
#include "lily-proto.hh"
#include "virtual-methods.hh"
#include "translator.hh"
-#include "plist.hh"
+#include "cons.hh"
#include "parray.hh"
// egcs
int iterator_count_;
friend class Interpretation_context_handle;
+ Cons_list<Translator> trans_p_list_;
public:
Scalar get_property (String type_str, Translator_group **where_found_l) const;
void set_property (String var_name, Scalar value);
- Pointer_list<Translator *> trans_p_list_;
String id_str_;
virtual void do_add_processing ();
virtual void do_post_processing ();
virtual void set_default_dir ();
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
};
#endif // Tuplet_spanner_HH
virtual void do_add_processing ();
virtual Interval do_height () const;
virtual void do_post_processing ();
- virtual void do_substitute_dependency (Score_element*,Score_element*);
+ virtual void do_substitute_element_pointer (Score_element*,Score_element*);
};
#endif // VOLTA_SPANNER_HH
Item::breakable_b () const
{
return !unbroken_original_l_
- && dynamic_cast<Item*>(parent_l (X_AXIS))->breakable_b ();
+ && dynamic_cast<Item*> (parent_l (X_AXIS))->breakable_b ();
}
void
{
Score_element * dolly = clone();
Item * item_p = dynamic_cast<Item*>(dolly);
-
+ item_p->unbroken_original_l_ = this;
item_p->break_status_dir_ = i;
pscore_l_->typeset_element (item_p);
new_copies[i] =item_p;
}
Item*
-Item::find_prebroken_piece (Direction breakstatus) const
+Item::find_prebroken_piece (Direction d) const
{
- if (!breakstatus)
+ if (!d)
return (Item *) (this); // ugh
else
- return dynamic_cast<Item*> (broken_to_drul_[breakstatus]);
+ return dynamic_cast<Item*> (broken_to_drul_[d]);
}
void
Item::Item (Item const &s)
: Score_element (s)
{
- unbroken_original_l_ = &s;
+ unbroken_original_l_ = 0;
/* do not copy attached_span_l_arr_ */
breakable_b_ = s.breakable_b_;
visibility_lambda_ = s.visibility_lambda_;
+++ /dev/null
-/*
- lexerinit.cc -- implement some stuff
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include <iostream.h>
-#include <strstream.h>
-#include "proto.hh"
-#include "plist.hh"
-#include "my-lily-lexer.hh"
-#include "debug.hh"
-#include "main.hh"
-#include "source-file.hh"
-#include "source.hh"
-
-My_lily_lexer *lexer=0;
-
-int
-yylex() {
- return lexer->yylex();
-}
-
-bool
-busy_parsing()
-{
- return lexer;
-}
void
-Local_key_item::do_substitute_dependency (Score_element*o,Score_element*n)
+Local_key_item::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
Item* o_l = dynamic_cast <Item *> (o);
Item* n_l = n?dynamic_cast <Item *> (n):0;
{0,0}
};
-// Magic numbers from Knuths plain.tex:
+/**
+ Magnification steps. These are powers of 1.2. The numbers are
+ taken from Knuth's plain.tex: */
static Real mag_steps[] = {1, 1, 1.200, 1.440, 1.7280, 2.074, 2.488};
static Dictionary<char const *> cmr_dict (cmr_init);
#include "all-fonts.hh"
#include "proto.hh"
#include "dimensions.hh"
-#include "plist.hh"
#include "getopt-long.hh"
#include "misc.hh"
#include "string.hh"
void
Molecule::add_molecule (Molecule const &m)
{
- Cons_list<Atom> al (copy_killing_cons_list (m.atom_list_));
+ Cons_list<Atom> al;
+ copy_killing_cons_list (al, m.atom_list_);
if (al.head_)
{
*al.tail_ = atom_list_;
atom_list_ = al.head_;
+ al.head_ =0;
}
dim_.unite (m.dim_);
}
}
void
-Multi_measure_rest::do_substitute_dependency (Score_element* o, Score_element* n)
+Multi_measure_rest::do_substitute_element_pointer (Score_element* o, Score_element* n)
{
if (Bar* c = dynamic_cast <Bar*> (o))
column_arr_.substitute (c, dynamic_cast<Bar*> (n));
add_dependency (c);
}
-
-Array<Rod>
-Multi_measure_rest::get_rods () const
-{
- Array<Rod> a;
- Rod r;
- r.item_l_drul_ = spanned_drul_;
- r.distance_f_ = paper ()->get_var ("mmrest_x_minimum");
- a.push (r);
- return a;
-}
}
void
-Note_column::do_substitute_dependency (Score_element*o, Score_element*n)
+Note_column::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
if (stem_l_ == o)
{
head_l_arr_.substitute (dynamic_cast<Note_head *> (o),
(n)? dynamic_cast<Note_head *> (n) : 0);
}
- Script_column::do_substitute_dependency (o,n);
+ Script_column::do_substitute_element_pointer (o,n);
if (dynamic_cast<Rest *> (o))
{
rest_l_arr_.substitute (dynamic_cast<Rest *> (o),
+++ /dev/null
-/*
- could use cleanup
- */
-#include <ctype.h>
-
-#include "my-lily-lexer.hh"
-#include "string.hh"
-#include "real.hh"
-#include "debug.hh"
-#include "musical-request.hh"
-#include "command-request.hh"
-#include "music-list.hh"
-#include "identifier.hh"
-#include "array.hh"
-#include "text-def.hh"
-#include "parseconstruct.hh"
-
-
-
-/*
- SHOULD JUNK THIS.
- */
-String *
-get_scriptdef (char c)
-{
- String s;
- switch (c)
- {
- case '^' : s = "marcato";
- break;
- case '+' : s = "stopped";
- break;
- case '-' : s = "tenuto";
- break;
- case '|': s = "staccatissimo";
- break;
- case 'o' : s = "";
- break;
- case '>' : s = "accent";
- break;
- case 'v' : s = "";
- break;
- case '.' : s = "staccato";
- break;
- default:
- assert (false);
- }
- return new String (s);
-}
-
-Request*
-get_script_req (int d , General_script_def*def)
-{
- Musical_script_req* script_req_p = new Musical_script_req;
- script_req_p->dir_ =(Direction)d;
- script_req_p->scriptdef_p_=def;
- return script_req_p;
-}
-
-
-
-
-
-Request*
-get_grouping_req (Array<int> i_arr)
-{
- Measure_grouping_req * mr_p = new Measure_grouping_req;
- for (int i=0; i <i_arr.size();)
- {
- mr_p->elt_length_arr_.push (Moment (1, i_arr[i++]));
- mr_p->beat_i_arr_.push (i_arr[i++]);
- }
- return mr_p;
-}
Paper_column::set_rank (int i)
{
rank_i_ = i;
- if (prebreak_l())
- prebreak_l()->rank_i_ = i;
- if (postbreak_l())
- postbreak_l()->rank_i_ = i;
}
void
#include "spanner.hh"
#include "paper-def.hh"
#include "line-of-score.hh"
-#include "pcursor.hh"
-#include "plist.hh"
#include "p-col.hh"
#include "p-score.hh"
#include "p-col.hh"
#include "file-results.hh"
#include "misc.hh"
-#if 1 // has w32 advanced?
- // nope (cygwin-b20)
-
-// sucking Cygnus egcs - w32
-#include "list.tcc"
-#include "cursor.tcc"
-
-#endif
-
Paper_score::Paper_score ()
{
outputter_l_ =0;
line_l_ = line_p;
}
+Paper_score::Paper_score (Paper_score const &s)
+ : Music_output (s)
+{
+ assert (false);
+}
+
Paper_score::~Paper_score ()
{
+ for (int i=0; i < span_p_arr_.size (); i++)
+ delete span_p_arr_[i];
+ for (int i=0; i < elem_p_arr_.size (); i++)
+ delete elem_p_arr_[i];
}
void
Paper_score::typeset_element (Score_element * elem_p)
{
- elem_p_list_.bottom ().add (elem_p);
+ elem_p_arr_.push (elem_p);
elem_p->pscore_l_ = this;
elem_p->add_processing ();
}
-void
-Paper_score::typeset_broken_spanner (Spanner*span_p)
-{
- typeset_element (span_p);
-}
-
void
Paper_score::typeset_unbroken_spanner (Spanner*span_p)
{
- span_p_list_.bottom ().add (span_p);
+ span_p_arr_.push (span_p);
span_p->pscore_l_=this;
-
- // do not init start/stop fields. These are for broken spans only.
span_p->add_processing ();
}
-
-void
-Paper_score::clean_cols ()
-{
- int rank_i = 0;
- for (iter_top (col_p_list_,c); c.ok ();)
- {
- c->set_rank (rank_i++);
- c++;
- }
-}
-
void
Paper_score::add_column (Paper_column *p)
{
- col_p_list_.bottom ().add (p);
+ p->set_rank (col_l_arr_.size ());
+ col_l_arr_.push (p);
typeset_element(p);
}
return ;
DOUT << "Paper_score { ";
DOUT << "\n elements: ";
- for (iter_top (elem_p_list_,cc); cc.ok (); cc++)
- cc->print ();
- DOUT << "\n unbroken spanners: ";
- for (iter (span_p_list_.top (), i); i.ok (); i++)
- i->print ();
-
+ for (int i=0; i < span_p_arr_.size (); i++)
+ span_p_arr_[i]->print ();
+ for (int i=0; i < elem_p_arr_.size (); i++)
+ elem_p_arr_[i]->print();
+
DOUT << "}\n";
#endif
}
-PCursor<Paper_column *>
-Paper_score::find_col (Paper_column const *c) const
+int
+Paper_score::find_col_idx (Paper_column const *c) const
{
Paper_column const *what = c;
- return col_p_list_.find ((Paper_column*)what);
+ return col_l_arr_.find_i ((Paper_column*)what);
}
-
-
-
Array<Column_x_positions>
Paper_score::calc_breaking ()
{
Break_algorithm *algorithm_p=0;
Array<Column_x_positions> sol;
- bool try_wrap = ! paper_l_->get_var ("castingalgorithm");
+ bool try_wrap = !paper_l_->get_var ("castingalgorithm");
if (!try_wrap)
{
+void delete_array_contents (Link_array<Score_element> const&to_remove, Dictionary<int> &type_stats)
+{
+ for (int i=0; i < to_remove.size (); i++)
+ {
+ Score_element * e = to_remove[i];
+ String nm = e->name();
+ if (type_stats.elem_b (nm))
+ type_stats[nm] ++;
+ else
+ type_stats[nm] = 1;
+
+ if (dynamic_cast<Item*> (e))
+ type_stats["Item"] ++;
+ else if (dynamic_cast<Spanner*>(e))
+ type_stats["Spanner"] ++;
+ type_stats["Total"] ++;
+
+ e->unlink ();
+ assert (!e->linked_b ());
+ delete e;
+ }
+
+}
+Link_array<Score_element>
+Paper_score::remove_break_helpers ()
+{
+ Link_array<Score_element> to_remove;
+ Link_array<Score_element> keep;
+ for (int i=0; i < elem_p_arr_.size (); i++)
+ {
+ Score_element*e = elem_p_arr_[i];
+ if (e->break_helper_only_b_)
+ to_remove.push (e);
+ else
+ keep.push (e);
+ }
+
+ elem_p_arr_ = keep;
+ Link_array<Spanner> keeps;
+ for (int i=0; i<span_p_arr_.size ();i++)
+ {
+ Spanner *s = span_p_arr_[i];
+ Score_element *e = s;
+ if (e->break_helper_only_b_)
+ to_remove.push (e);
+ else
+ keeps.push (s);
+ }
+
+
+ span_p_arr_ =keeps;
+
+ return to_remove;
+}
+
void
Paper_score::process ()
{
- clean_cols ();
+ Dictionary<int> type_stats;
+ type_stats["Item"] =0;
+ type_stats["Spanner"] =0;
+ type_stats["Total"]=0;
+
print ();
*mlog << _ ("Preprocessing elements...") << " " << flush;
- line_l_->breakable_col_processing ();
+ line_l_->breakable_col_processing ();
line_l_->pre_processing ();
*mlog << '\n' << _ ("Calculating column positions...") << " " << flush;
Array<Column_x_positions> breaking = calc_breaking ();
+ delete_array_contents (remove_break_helpers(), type_stats);
+
Paper_stream* paper_stream_p = paper_l_->paper_stream_p ();
outputter_l_ = paper_l_->paper_outputter_p (paper_stream_p, header_l_, origin_str_);
Line_of_score *line_l = line_l_->set_breaking (breaking, i);
lines.push (line_l);
if (line_l != line_l_)
- typeset_broken_spanner (line_l);
-
+ typeset_element (line_l);
}
+ if (experimental_features_global_b)
+ *mlog << elem_p_arr_.size () + span_p_arr_.size () << " elements. ";
*mlog << "\nLine ... ";
for (int i=0; i < lines.size (); i++)
{
line_l->post_processing ();
*mlog << i << flush;
line_l->output_all ();
- *mlog << ']' << flush;
- remove_line (line_l);
+
+ if (experimental_features_global_b)
+ *mlog << '(' << elem_p_arr_.size () + span_p_arr_.size () << ')';
+
+ *mlog << ']' << flush;
+ Link_array<Score_element> to_remove (remove_line (line_l));
+
+ delete_array_contents (to_remove, type_stats);
}
// huh?
delete paper_stream_p;
outputter_l_ = 0;
+
+ /*
+ todo: sort output
+ */
+ if (experimental_features_global_b)
+ {
+ for (Dictionary_iter<int> i(type_stats); i.ok(); i++)
+ {
+ *mlog << i.key () << ": " << i.val () << " objects\n";
+ }
+ }
*mlog << '\n' << flush;
+
}
-void
+
+Link_array<Score_element>
Paper_score::remove_line (Line_of_score *l)
{
Link_array<Score_element> to_remove;
- for (PCursor<Score_element*> i(elem_p_list_.top ()); i.ok (); )
+ Link_array<Score_element> keep;
+ for (int i=0; i < elem_p_arr_.size (); i++)
{
- if (i->line_l () == l)
- to_remove.push (i.remove_p ());
+ Score_element*e = elem_p_arr_[i];
+ if (e->line_l () == l)
+ to_remove.push (e);
else
- i++;
+ keep.push (e);
}
- for (PCursor<Spanner*> i (span_p_list_.top ()); i.ok (); )
+ elem_p_arr_ = keep;
+ Link_array<Spanner> keeps;
+ for (int i=0; i<span_p_arr_.size ();i++)
{
- Score_element *e = i.ptr ();
+ Spanner *s = span_p_arr_[i];
+ Score_element *e = s;
if (e->line_l () == l)
- to_remove.push (i.remove_p ());
+ to_remove.push (e);
else
- i++;
+ keeps.push (s);
}
- // l->unlink_all ();
- for (int i=0; i < to_remove.size (); i++)
- {
- to_remove[i]->unlink ();
- assert (!to_remove[i]->linked_b ());
- delete to_remove [i];
- }
-}
-/** Get all breakable columns between l and r, (not counting l and r). */
-Link_array<Paper_column>
-Paper_score::breakable_col_range (Paper_column*l, Paper_column*r) const
-{
- Link_array<Paper_column> ret;
-
- PCursor<Paper_column*> start (l ? find_col (l)+1 : col_p_list_.top ());
- PCursor<Paper_column*> stop (r ? find_col (r) : col_p_list_.bottom ());
-
- /*
- ugh! windows-suck-suck-suck.
- */
- while (PCursor<Paper_column*>::compare (start,stop) < 0)
- {
- if (start->breakable_b_)
- ret.push (start);
- start++;
- }
-
- return ret;
-}
-
-
-Link_array<Paper_column>
-Paper_score::col_range (Paper_column*l, Paper_column*r) const
-{
- Link_array<Paper_column> ret;
-
- PCursor<Paper_column*> start (l ? find_col (l)+1 : col_p_list_.top ());
- PCursor<Paper_column*> stop (r ? find_col (r) : col_p_list_.bottom ());
- ret.push (l);
-
- /*
- ugh! windows-suck-suck-suck.
- */
- while (PCursor<Paper_column*>::compare (start,stop) < 0)
- ret.push (start++);
- ret.push (r);
- return ret;
+ span_p_arr_ =keeps;
+ return to_remove;
}
Link_array<Item>
-Paper_score::broken_col_range (Item const*l_item_l, Item const*r_item_l) const
+Paper_score::broken_col_range (Item const*l, Item const*r) const
{
Link_array<Item> ret;
- Item const*l=l_item_l;
- Item const*r=r_item_l;
-
- // huh? see Item::left_right_compare ()
- /*
- while (! (dynamic_cast<Paper_column const *> (l)))
- l = dynamic_cast<Item*> (l->axis_group_l_a_[X_AXIS]);
- while (! (dynamic_cast<Paper_column const *> (r)))
- r = dynamic_cast<Item*>(r->axis_group_l_a_[X_AXIS]);
- */
l = l->column_l ();
r = r->column_l ();
- PCursor<Paper_column*> start (l ? find_col ((Paper_column*)l)+1 : col_p_list_.top ());
- PCursor<Paper_column*> stop (r ? find_col ((Paper_column*)r) : col_p_list_.bottom ());
+ int start = l
+ ? find_col_idx (dynamic_cast<Paper_column*> ((Item*)l))+1
+ : 0;
- /*
- ugh! windows-suck-suck-suck.
- */
- while (PCursor<Paper_column*>::compare (start,stop) < 0)
+ int stop = r
+ ? find_col_idx (dynamic_cast<Paper_column*>((Item*)r))
+ : col_l_arr_.size ();
+
+ while (start < stop)
{
- if (start->breakable_b_ && !start->line_l_)
- ret.push (start);
+ Paper_column *c = col_l_arr_[start];
+ if (c->breakable_b_ && !c->line_l_)
+ ret.push (c);
start++;
}
%type <i> int unsigned
%type <i> script_dir
%type <i> optional_modality
-%type <id> identifier_init simple_identifier_init block_identifier
+%type <id> identifier_init
%type <duration> steno_duration notemode_duration
%type <duration> entered_notemode_duration explicit_duration
%type <intvec> intastint_list int_list
%type <music> property_def translator_change
%type <music_list> Music_list
%type <paper> paper_block paper_def_body
-%type <real> real_expression real dimension
+%type <real> real_expression real real_with_dimension
%type <request> abbrev_command_req
%type <request> post_request structured_post_request
%type <request> command_req verbose_command_req
%type <script> script_definition script_body mudela_script gen_script_def
%type <textdef> text_def finger
%type <string> script_abbreviation
-%type <trans> translator_spec translator_spec_body
+%type <trans> translator_spec_block translator_spec_body
%type <tempo> tempo_request
%type <notenametab> notenames_body notenames_block chordmodifiers_block
;
-simple_identifier_init: identifier_init
- ;
identifier_init:
- block_identifier
- ;
-
-block_identifier:
score_block {
$$ = new Score_identifier ($1, SCORE_IDENTIFIER);
$$ = new Midi_def_identifier ($1, MIDI_IDENTIFIER);
}
- | translator_spec {
+ | translator_spec_block {
$$ = new Translator_identifier ($1, TRANS_IDENTIFIER);
}
| Music {
}
;
-translator_spec:
+translator_spec_block:
TRANSLATOR '{' translator_spec_body '}'
{ $$ = $3; }
;
$$ = t;
delete $2;
}
- | translator_spec_body STRING '=' simple_identifier_init ';' {
+ | translator_spec_body STRING '=' identifier_init ';' {
Identifier* id = $4;
String_identifier *s = dynamic_cast<String_identifier*> (id);
Real_identifier *r= dynamic_cast<Real_identifier*>(id);
}
;
-optional_semicolon:
- /* empty */
- | ';'
- ;
-
optional_dot:
/* empty */
| '.'
THIS-> lexer_p_-> scope_l_arr_.push (p->scope_p_);
$$ = p;
}
- | PAPER_IDENTIFIER optional_semicolon {
+ | PAPER_IDENTIFIER {
Paper_def *p = $1->access_content_Paper_def (true);
THIS->lexer_p_->scope_l_arr_.push (p->scope_p_);
$$ = p;
| paper_def_body assignment ';' {
}
- | paper_def_body translator_spec {
+ | paper_def_body translator_spec_block {
$$->assign_translator ($2);
}
| paper_def_body SHAPE '=' shape_array ';' {
;
-dimension:
+real_with_dimension:
REAL CM_T {
$$ = $1 CM;
}
REAL {
$$ = $1;
}
- | dimension
+ | real_with_dimension
| REAL_IDENTIFIER {
$$= *$1->access_content_Real (false);
}
| MIDI_IDENTIFIER {
$$ = $1-> access_content_Midi_def (true);
}
- | midi_body translator_spec {
+ | midi_body translator_spec_block {
$$-> assign_translator ($2);
}
| midi_body tempo_request ';' {
delete $2;
}
| GROUPING intastint_list {
- $$ = get_grouping_req (*$2); delete $2;
+ Measure_grouping_req * mr_p = new Measure_grouping_req;
+ for (int i=0; i < $2->size();)
+ {
+ mr_p->elt_length_arr_.push (Moment (1, $2->elem(i++)));
+ mr_p->beat_i_arr_.push ($2->elem(i++));
+ }
+
+
+ $$ = mr_p;
+ delete $2;
}
;
;
script_abbreviation:
- '^' { $$ = get_scriptdef ('^'); }
- | '+' { $$ = get_scriptdef ('+'); }
- | '-' { $$ = get_scriptdef ('-'); }
- | '|' { $$ = get_scriptdef ('|'); }
- | 'o' { $$ = get_scriptdef ('o'); }
- | '>' { $$ = get_scriptdef ('>'); }
+ '^' {
+ $$ = THIS->lexer_p_
+ ->lookup_identifier ("dash-hat")->access_content_String (true)
+
+ }
+ | '+' {
+ $$ = THIS->lexer_p_
+ ->lookup_identifier ("dash-plus")->access_content_String (true)
+ }
+ | '-' {
+ $$ = THIS->lexer_p_
+ ->lookup_identifier ("dash-dash")->access_content_String (true)
+ }
+ | '|' {
+ $$ = THIS->lexer_p_
+ ->lookup_identifier ("dash-bar")->access_content_String (true)
+ }
+ | '>' {
+ $$ = THIS->lexer_p_
+ ->lookup_identifier ("dash-larger")->access_content_String (true)
+ }
| '.' {
- $$ = get_scriptdef ('.');
+ $$ = THIS->lexer_p_
+ ->lookup_identifier ("dash-dot")->access_content_String (true);
}
;
;
script_dir:
- '_' { $$ = -1; }
- | '^' { $$ = 1; }
- | '-' { $$ = 0; }
+ '_' { $$ = DOWN; }
+ | '^' { $$ = CENTER; }
+ | '-' { $$ = UP; }
;
pre_requests:
else
{
// int dir_i = - ncol_l_arr_[0]->dir_;
- int dir_i = rest_l_arr_[0]->dir_;
+ Direction dir = rest_l_arr_[0]->dir_;
// minimum move
int minpos = 4;
for (int j = 0; j < ncol_l_arr_[i]->head_l_arr_.size(); j++)
{
int stem = (int)((ncol_l_arr_[i]->stem_l_->extent
- (Y_AXIS)[dir_i]) / internote_f);
- minpos = minpos >? (dir_i * stem + sep_i);
+ (Y_AXIS)[dir]) / internote_f);
+ minpos = minpos >? (dir * stem + sep_i);
}
}
- rest_l_arr_[0]->translate_rests (dir_i * minpos);
+ rest_l_arr_[0]->translate_rests (dir * minpos);
}
}
}
void
-Rest_collision::do_substitute_dependency (Score_element*o,Score_element*n)
+Rest_collision::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
if (Note_column *onl = dynamic_cast<Note_column *> (o))
{
{
children[i]->OK();
if (i>0)
- assert (children[i-1]->interval().right ==
- children[i]->interval().left);
+ assert (children[i-1]->interval()[RIGHT] ==
+ children[i]->interval()[LEFT]);
}
#endif
}
return *interval_;
else
return
- MInterval (children[0]->interval().left,
- children.top()->interval ().right);
+ MInterval (children[0]->interval()[LEFT],
+ children.top()->interval ()[RIGHT]);
}
void
{
MInterval i (interval());
MInterval r1(i), r2(i);
- r1.right = r2.left = i.center();
+ r1[RIGHT] = r2[LEFT] = i.center();
r.push (r1); r.push (r2);
}
else
break;
assert (
- children[starti]->interval().left== splitpoints[startj].left);
- if (children[i]->interval().right < splitpoints[j].right)
+ children[starti]->interval()[LEFT]== splitpoints[startj][LEFT]);
+ if (children[i]->interval()[RIGHT] < splitpoints[j][RIGHT])
{
i ++;
}
- else if (children[i]->interval().right > splitpoints[j].right)
+ else if (children[i]->interval()[RIGHT] > splitpoints[j][RIGHT])
{
j ++;
}
return;
}
Moment dt = t.length ()/Moment (n);
- MInterval basic = MInterval (t.left, t.left+dt);
+ MInterval basic = MInterval (t[LEFT], t[LEFT]+dt);
for (int i= 0; i < n; i++)
children.push (new Rhythmic_grouping (dt*Moment (i) + basic));
}
Rhythmic_grouping::child_fit_b (Moment start)
{
if (children.size())
- return (children.top()->interval ().right== start);
+ return (children.top()->interval ()[RIGHT]== start);
return true;
}
void
Rhythmic_grouping::extend (MInterval m) const
{
- assert (m.left >= interval().left);
- while (m.right >interval().right)
+ assert (m[LEFT] >= interval()[LEFT]);
+ while (m[RIGHT] >interval()[RIGHT])
{
Link_array<Rhythmic_grouping> a (children);
for (int i=0; i < a.size(); i++)
{
a[i] =new Rhythmic_grouping (*children[i]);
- a[i]->translate (children.top()->interval ().right);
+ a[i]->translate (children.top()->interval ()[RIGHT]);
}
((Rhythmic_grouping*)this)->children.concat (a);
}
- assert (m.right <= interval().right);
+ assert (m[RIGHT] <= interval()[RIGHT]);
OK();
}
}
void
-Rhythmic_head::do_substitute_dependent (Score_element*o,Score_element*n)
+Rhythmic_head::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
if (o == dots_l_)
dots_l_ = n ? dynamic_cast<Dots *> (n) :0;
Score_element::Score_element()
{
output_p_ =0;
+ break_helper_only_b_ = false;
transparent_b_ = false;
size_i_ = 0;
pscore_l_=0;
*/
copy_edges_out (s);
output_p_ =0;
+ break_helper_only_b_ = s.break_helper_only_b_;
transparent_b_ = s.transparent_b_;
status_i_ = s.status_i_;
pscore_l_ = s.pscore_l_;
{
delete output_p_;
assert (status_i_ >=0);
+ status_i_ = -1;
}
Score_element*
Paper_def*
Score_element::paper() const
{
- assert (pscore_l_);
return pscore_l_->paper_l_;
}
void
Score_element::add_processing()
{
+ assert (status_i_ >=0);
if (status_i_)
return;
status_i_ ++;
Score_element::calculate_dependencies (int final, int busy,
Score_element_method_pointer funcptr)
{
+ assert (status_i_ >=0);
+
if (status_i_ >= final)
return;
}
void
-Score_element::do_substitute_dependency (Score_element*,Score_element*)
-{
-}
-void
-Score_element::do_substitute_dependent (Score_element*,Score_element*)
+Score_element::do_substitute_element_pointer (Score_element*,Score_element*)
{
}
void
Score_element::substitute_dependency (Score_element* old, Score_element* new_l)
{
- do_substitute_dependency (old,new_l);
- old->do_substitute_dependent (this, 0);
+ do_substitute_element_pointer (old,new_l);
+ old->do_substitute_element_pointer (this, 0);
}
void
do_unlink();
while (dependency_size())
{
- do_substitute_dependency (dependency (0),0);
+ do_substitute_element_pointer (dependency (0),0);
remove_edge_out_idx (0);
}
while (dependent_size())
}
void
-Script_column::do_substitute_dependency (Score_element*o,Score_element*n)
+Script_column::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
if (dynamic_cast <Item *> (o))
{
}
void
-Script::do_substitute_dependency (Score_element*o,Score_element*n)
+Script::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
- Staff_side::do_substitute_dependency (o,n);
+ Staff_side::do_substitute_element_pointer (o,n);
if (o == stem_l_)
{
stem_l_ = dynamic_cast<Stem *> (n);
}
void
-Separating_group_spanner::do_substitute_dependency (Score_element*o, Score_element*n)
+Separating_group_spanner::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
if (dynamic_cast<Single_malt_grouping_item *> (o))
{
}
}
+Separating_group_spanner::Separating_group_spanner()
+{
+ break_helper_only_b_ = true;
+}
Separating_line_group_engraver::do_creation_processing ()
{
sep_span_p_ = new Separating_group_spanner;
- announce_element ( Score_element_info (sep_span_p_, 0));
+ announce_element (Score_element_info (sep_span_p_, 0));
sep_span_p_->set_bounds (LEFT, get_staff_info ().command_pcol_l ());
}
+++ /dev/null
-#include "simple-spacer.hh"
-#include "idealspacing.hh"
-// #include ""
-
-
-void
-Spring_info::set(Idealspacing *i)
-{
- space_f_ = i->space_f_;
- hooke_f_ = i->hooke_f_;
-}
-
-Spring_info::Spring_info()
-{
- space_f_ = 0.0;
- hooke_f_ = 1.0;
- blocking_stretch_f_ = infinity_f;
- blocking_rod_l_ = 0;
-}
-
-
-
-void
-Simple_spring_spacer::init ()
-{
- for (PCursor<Rod_info*> i(rods_.top()); i.ok (); i++)
- {
- Real hooke=0.0;
- Real dist= i->distance_f_;
-
- hooke =0.0;
-
- for (int j = i->cols_[LEFT]; j < i->cols_[RIGHT]; j++)
- {
- hooke += 1/springs_[j].hooke_f_;
- dist -= springs_[j].space_f_;
- }
-
- hooke = 1/hooke;
-
- for (int j = i->cols_[LEFT]; j < i->cols_[RIGHT]; j++)
- {
- Real block_stretch = hooke * dist / (springs_[j].space_f_ *
- springs_[j].hooke_f_ );
-
- if (block_stretch < springs_[j].blocking_stretch_f_)
- {
- springs_[j].blocking_stretch_f_ = block_stretch;
- springs_[j].blocking_rod_l_ = i.ptr ();
- }
- }
- }
-}
-
-Array<Real>
-Simple_spring_spacer::solve ()
-{
- Real start_force = 0.0;
-
- for (int i=0; i< springs_.size (); i++)
- {
- start_force = start_force >?
- springs_[i].blocking_stretch_f_ * springs_[i].hooke_f_;
- }
-
- Array<Real> stretch_factors;
- Array<bool> blocked;
- int blocked_count=0;
- Real current_len =0.0;
- for (int i=0; i < springs_.size (); i++)
- {
- Real stretch = start_force / (springs_[i].hooke_f_ * springs_[i].space_f_);
- stretch_factors.push (stretch);
- current_len += (1 + stretch) * springs_[i].space_f_;
- blocked.push(false);
- }
-
-
- while (blocked_count < blocked.size ())
- {
- Real next_stretch = -1.0;
- int block_index;
- for (int i=0; i< stretch_factors.size (); i++)
- {
- if (!blocked[i])
- {
- next_stretch = next_stretch >? springs_[i].blocking_stretch_f_;
-
- if (next_stretch < springs_[i].blocking_stretch_f_)
- {
- next_stretch = springs_[i].blocking_stretch_f_;
- block_index = i;
- }
- }
- }
- current_len = 0.0;
-
- Real force = next_stretch * (springs_[block_index].space_f_* springs_[block_index].hooke_f_);
- for (int i=0; i< stretch_factors.size (); i++)
- {
- if (!blocked[i])
- {
- stretch_factors[i] = force / (springs_[i].space_f_ * springs_[i].hooke_f_);
- }
- current_len += (1.0 + stretch_factors[i]) * springs_[i].space_f_;
- }
-
- Rod_info *blockrod = springs_[block_index].blocking_rod_l_;
- for (int j = blockrod->cols_ [LEFT]; j < blockrod->cols_ [RIGHT]; j++)
- {
- blocked[j] = true;
- blocked_count ++;
- }
- }
-
-
- Array<Real> distances;
- for (int i=0; i < stretch_factors.size (); i++)
- {
- distances.push (stretch_factors[i] * springs_[i].space_f_);
- }
- return distances;
-}
-
#include "translator-group.hh"
#include "debug.hh"
#include "simultaneous-music-iterator.hh"
-
#include "music-list.hh"
+#include "killing-cons.tcc"
Simultaneous_music_iterator::Simultaneous_music_iterator ()
{
Simultaneous_music_iterator::~Simultaneous_music_iterator ()
{
+ children_p_list_.junk ();
}
void
{
if (sim->translator_type_str_.empty_b ())
set_translator (mi->report_to_l()->ancestor_l (0)); // huh?
- children_p_list_.bottom().add (mi);
+ children_p_list_.append (new Killing_cons<Music_iterator> (mi,0));
}
- else
+ else
delete mi;
}
}
Simultaneous_music_iterator::do_print() const
{
#ifndef NPRINT
- for (PCursor<Music_iterator*> i (children_p_list_.top()); i.ok (); i++)
- {
- i->print();
- }
+ for (Cons<Music_iterator> *p = children_p_list_.head_; p; p = p->next_)
+ p->car_->print();
#endif
}
void
Simultaneous_music_iterator::do_process_and_next (Moment until)
{
- for (PCursor<Music_iterator*> i (children_p_list_.top()); i.ok ();)
+ for (Cons<Music_iterator> **pp = &children_p_list_.head_; *pp; )
{
+ Music_iterator * i = (*pp)->car_;
if (i->next_moment() == until)
{
i->process_and_next (until);
}
- if (!i->ok())
- delete i.remove_p();
+ if (!i->ok())
+ delete children_p_list_.remove_cons (pp);
else
- i++;
+ pp = &(*pp)->next_;
}
Music_iterator::do_process_and_next (until);
}
{
Moment next;
next.set_infinite (1);
- for (PCursor<Music_iterator*> i (children_p_list_.top()); i.ok (); i++)
- next = next <? i->next_moment() ;
+
+ for (Cons<Music_iterator> *p = children_p_list_.head_; p; p = p->next_)
+ next = next <? p->car_->next_moment() ;
return next;
}
bool
Simultaneous_music_iterator::ok() const
{
- return children_p_list_.size();
+ return children_p_list_.head_;
}
Single_malt_grouping_item ::Single_malt_grouping_item()
{
+ break_helper_only_b_ = true;
transparent_b_ = true;
set_empty (true);
}
void
-Single_malt_grouping_item::do_substitute_dependency (Score_element*o, Score_element*n)
+Single_malt_grouping_item::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
if (dynamic_cast <Item *> (o))
{
*/
#include "proto.hh"
-#include "plist.hh"
#include "musical-request.hh"
#include "slur-engraver.hh"
#include "slur.hh"
}
void
-Slur::do_substitute_dependency (Score_element*o, Score_element*n)
+Slur::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
int i;
while ((i = encompass_arr_.find_i (dynamic_cast<Note_column *> (o))) >=0)
}
void
-Span_bar::do_substitute_dependency (Score_element*o, Score_element*n)
+Span_bar::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
spanning_l_arr_.unordered_substitute (o, n);
}
#ifndef NPRINT
DOUT << "Between " << classname (spanned_drul_[LEFT])
<< " and " << classname (spanned_drul_[RIGHT]) << '\n';
- if (broken_into_l_arr_.size())
+ /* if (broken_into_l_arr_.size())
{
DOUT << "with broken pieces:\n";
for (int i=0; i < broken_into_l_arr_.size (); i++)
broken_into_l_arr_[i]->print ();
- }
+ }*/
#endif
}
void
Spanner::break_into_pieces ()
{
- if (broken_into_l_arr_.size())
+ if (broken_b ())
return;
Item * left = spanned_drul_[LEFT];
return;
}
- Link_array<Item> break_cols = pscore_l_->broken_col_range (left,right);
+ Link_array<Item> break_points = pscore_l_->broken_col_range (left,right);
Link_array<Spanner> broken_into_l_arr;
- break_cols.insert (left,0);
- break_cols.push (right);
+ break_points.insert (left,0);
+ break_points.push (right);
- for (int i=1; i < break_cols.size(); i++)
+
+ for (int i=1; i < break_points.size(); i++)
{
- Spanner* span_p = dynamic_cast<Spanner*> (clone());
- Item *left = break_cols[i-1];
- Item *right = break_cols[i];
- if (!right->line_l())
- right = right->find_prebroken_piece(LEFT);
- if (!left->line_l())
- left = left->find_prebroken_piece(RIGHT);
-
- assert (left&&right && left->line_l() == right->line_l());
-
- span_p->set_bounds(LEFT,left);
- span_p->set_bounds(RIGHT,right);
-
- pscore_l_->typeset_broken_spanner (span_p);
- broken_into_l_arr.push (span_p);
+ Breaking_information info;
+ info.bounds_[LEFT] = break_points[i-1];
+ info.bounds_[RIGHT] = break_points[i];
+ Direction d = LEFT;
+ do
+ {
+ Item *&pc_l = info.bounds_[d] ;
+ if (!pc_l->line_l())
+ pc_l = pc_l->find_prebroken_piece(- d);
+
+ assert (pc_l);
+ if (!info.line_l_)
+ info.line_l_ = pc_l-> line_l ();
+ else
+ assert( info.line_l_ = pc_l->line_l ());
+
+ }
+ while ((flip(&d))!= LEFT);
+ info.broken_spanner_l_ = 0;
+ broken_info_.push (info);
}
-
- broken_into_l_arr_ = broken_into_l_arr;
}
void
Spanner::do_break_processing()
{
if (!line_l())
- {
- break_into_pieces ();
- for (int i=0; i < broken_into_l_arr_.size(); i++)
- {
- broken_into_l_arr_[i]->handle_broken_dependencies();
- }
- }
+ break_into_pieces ();
else
- {
- handle_broken_dependencies();
- }
+ handle_broken_dependencies();
}
Spanner::Spanner ()
:Score_element (s)
{
spanned_drul_[LEFT] = spanned_drul_[RIGHT] =0;
- unbroken_original_l_ = &s;
+ unbroken_original_l_ = 0;
}
void
Interval
Spanner::do_width() const
-{
-
-
+{
Real l = spanned_drul_[LEFT]->absolute_coordinate (X_AXIS);
Real r = spanned_drul_[RIGHT]->absolute_coordinate (X_AXIS);
Spanner*
Spanner::find_broken_piece (Line_of_score*l) const
{
- for (int i=0; i < broken_into_l_arr_.size(); i++)
- if (broken_into_l_arr_[i]->line_l() == l)
- return broken_into_l_arr_[i];
+ for (int i=0; i < broken_info_.size (); i++)
+ {
+ Spanner *me =(Spanner*) this;
+ Breaking_information &info = me->broken_info_[i];
+ if (info.line_l_ == l)
+ {
+ if (!info.broken_spanner_l_)
+ {
+ Spanner *span_p = dynamic_cast<Spanner*>(clone ());
+ span_p -> unbroken_original_l_ =(Spanner*)this;
+ span_p->set_bounds(LEFT,info.bounds_[LEFT]);
+ span_p->set_bounds(RIGHT,info.bounds_[RIGHT]);
+ pscore_l_->typeset_element (span_p);
+
+
+ info.broken_spanner_l_ = span_p;
+ /* if (Axis_group_spanner *ags
+ = dynamic_cast<Axis_group_spanner*> (span_p))
+ {
+ do something
+ }
+ */
+ span_p->handle_broken_dependencies();
+
+ }
+ return info.broken_spanner_l_;
+ }
+ }
+
return 0;
-
}
bool
Spanner::broken_b() const
{
- return broken_into_l_arr_.size();
+ return broken_info_.size();
}
void
if (unbroken_original_l_)
{
- unbroken_original_l_->broken_into_l_arr_.substitute (this, 0);
- unbroken_original_l_ =0;
+ for (int i=0; i < unbroken_original_l_->broken_info_.size (); i++)
+ {
+ if (unbroken_original_l_->broken_info_[i].broken_spanner_l_ == this)
+ unbroken_original_l_->broken_info_[i].broken_spanner_l_ = 0;
+ }
+
}
}
source file of the GNU LilyPond music typesetter
- (c) 1996, 1997--1999, 1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1996--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include <math.h>
#include <limits.h>
+#include "killing-cons.tcc"
#include "spring-spacer.hh"
#include "p-col.hh"
#include "debug.hh"
Vector
Spring_spacer::default_solution() const
{
- return try_initial_solution() ;
+ return try_initial_solution();
}
Score_column*
{
Union_find connected (cols_.size());
Array<int> fixed;
- for (PCursor<Idealspacing*> i (ideal_p_list_.top()); i.ok (); i++)
+
+ for (Cons<Idealspacing> *i = ideal_p_list_; i; i = i->next_)
{
- connected.connect (i->cols_drul_[LEFT],i->cols_drul_[RIGHT]);
+ connected.connect (i->car_->cols_drul_[LEFT],i->car_->cols_drul_[RIGHT]);
}
for (int i = 0; i < cols_.size(); i++)
if (cols_[i].fixed_b())
lin.fill (0);
c = 0;
- for (PCursor<Idealspacing*> i (ideal_p_list_.top()); i.ok (); i++)
+ for (Cons<Idealspacing> *p =ideal_p_list_; p; p = p->next_)
{
+ Idealspacing *i = p->car_;
int l = i->cols_drul_[LEFT];
int r = i->cols_drul_[RIGHT];
Spring_spacer::calculate_energy_f (Vector solution) const
{
Real e = 0.0;
- for (PCursor<Idealspacing*> i (ideal_p_list_.top()); i.ok(); i++)
+ for (Cons<Idealspacing>*p =ideal_p_list_; p; p = p->next_)
{
+ Idealspacing * i = p->car_;
e += i->energy_f(solution(i->cols_drul_[RIGHT]) - solution(i->cols_drul_[LEFT]));
}
Spring_spacer::Spring_spacer ()
{
+ ideal_p_list_ =0;
energy_normalisation_f_ = 1.0;
}
}
return retval;
}
-
+/*
+ Ugh. Should junk this.
+ */
void
-Spring_spacer::loosen_column (int i)
+Spring_spacer::loosen_column (int idx)
{
- Column_info c=cols_.get (i);
- for (PCursor<Idealspacing*> j (ideal_p_list_.top()); j.ok (); j++)
+ Column_info c=cols_.get (idx);
+
+ Cons<Idealspacing> **pp = &ideal_p_list_;
+
+ while (*pp)
{
- if (j->cols_drul_[LEFT] == i|| j->cols_drul_[RIGHT] == i)
- j.del();
+ Idealspacing *j = (*pp)->car_;
+ if (j->cols_drul_[LEFT] == idx|| j->cols_drul_[RIGHT] == idx)
+ {
+ delete remove_cons (pp);
+ }
else
- j++;
+ {
+ pp = &(*pp)->next_;
+ }
}
c.ugh_b_ = true;
DOUT << "col " << i << " ";
cols_[i].print();
}
- for (PCursor<Idealspacing*> i (ideal_p_list_.top()); i.ok (); i++)
+
+ for (Cons<Idealspacing> *p =ideal_p_list_; p; p = p->next_)
{
- i->print();
+ p->car_->print();
}
#endif
}
s->space_f_ = d;
s->hooke_f_ = h;
- ideal_p_list_.bottom().add (s);
+ ideal_p_list_ = new Killing_cons<Idealspacing> (s, ideal_p_list_);
}
}
void
-Staff_side::do_substitute_dependency (Score_element*o, Score_element*n)
+Staff_side::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
support_l_arr_.unordered_substitute (o,n);
}
}
/*
- TODO: head_l_arr_/rest_l_arr_ in do_substitute_dependent ()
+ TODO: head_l_arr_/rest_l_arr_ in
*/
void
-Stem::do_substitute_dependency (Score_element*o,Score_element*n)
+Stem::do_substitute_element_pointer (Score_element*o,Score_element*n)
{
if (Note_head*h=dynamic_cast<Note_head*> (o))
head_l_arr_.substitute (h, dynamic_cast<Note_head*>(n));
+++ /dev/null
-/*
- template1.cc -- instantiate some List classes
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1996, 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "proto.hh"
-#include "idealspacing.hh"
-#include "plist.hh"
-#include "p-col.hh"
-#include "item.hh"
-#include "musical-request.hh"
-#include "spanner.hh"
-#include "cursor.tcc"
-#include "pcursor.tcc"
-#include "plist.tcc"
-
-
-#define IPLC_INSTANTIATE(a) POINTERLIST_INSTANTIATE(a)
-
-IPLC_INSTANTIATE(Score_element);
-IPLC_INSTANTIATE(Spanner);
-IPLC_INSTANTIATE(Idealspacing);
+++ /dev/null
-/*
- template2.cc -- Instantiate some list templates.
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "line-spacer.hh"
-#include "cursor.tcc"
-#include "pcursor.tcc"
-#include "plist.tcc"
-
-POINTERLIST_INSTANTIATE(Line_spacer);
+++ /dev/null
-#include "proto.hh"
-#include "cursor.tcc"
-#include "pcursor.tcc"
-#include "plist.tcc"
-#include "translator.hh"
-
-POINTERLIST_INSTANTIATE(Translator);
-
#include "plist.tcc"
#include "music-list.hh"
-#include "music-iterator.hh"
POINTERLIST_INSTANTIATE(Music);
-POINTERLIST_INSTANTIATE(Music_iterator);
+
text->style_str_ = p;
text->text_str_ = t->text_str_;
- Scalar padding = get_property ("textScriptPadding", 0);
- if (padding.length_i() && padding.isnum_b ())
- {
- ss->padding_f_ = Real(padding);
- }
-
announce_element (Score_element_info (text, r));
announce_element (Score_element_info (ss, r));
}
void
-Text_spanner::do_substitute_dependency (Score_element* o, Score_element*n)
+Text_spanner::do_substitute_element_pointer (Score_element* o, Score_element*n)
{
if (support_span_l_ == o)
support_span_l_ = (Directional_spanner*) (n?dynamic_cast <Spanner *> (n):0);
}
void
-Tie::do_substitute_dependency (Score_element*o, Score_element*n)
+Tie::do_substitute_element_pointer (Score_element*o, Score_element*n)
{
Note_head *new_l =n?dynamic_cast<Note_head *> (n):0;
if (dynamic_cast <Item *> (o) == head_l_drul_[LEFT])
*/
#include "proto.hh"
-#include "plist.hh"
#include "translator.hh"
#include "dictionary.hh"
#include "debug.hh"
#include "translator-group.hh"
#include "translator.hh"
#include "debug.hh"
-#include "pcursor.hh"
#include "rational.hh"
#include "dictionary-iter.hh"
+#include "killing-cons.tcc"
+
Translator_group::Translator_group (Translator_group const&s)
: Translator(s)
{
accepts_str_arr_ = s.accepts_str_arr_;
iterator_count_ =0;
properties_dict_ = s.properties_dict_;
-
}
Translator_group::~Translator_group ()
{
assert (removable_b());
+ trans_p_list_.junk ();
}
void
Translator_group::add_translator (Translator *trans_p)
{
- trans_p_list_.bottom().add (trans_p);
+ trans_p_list_.append (new Killing_cons<Translator> (trans_p,0));
+
trans_p->daddy_trans_l_ = this;
trans_p->output_def_l_ = output_def_l_;
trans_p->add_processing ();
bool
Translator_group::removable_b() const
{
- for (PCursor<Translator*> i (trans_p_list_.top ()); i.ok (); i++)
+ for (Cons<Translator> *p = trans_p_list_.head_; p; p = p->next_)
{
- if (dynamic_cast <Translator_group *> (i.ptr ()))
+ if (dynamic_cast <Translator_group *> (p->car_))
return false;
}
Translator_group::group_l_arr () const
{
Link_array<Translator_group> groups;
- for (PCursor<Translator*> i (trans_p_list_.top ()); i.ok (); i++)
+ for (Cons<Translator> *p = trans_p_list_.head_; p; p = p->next_)
{
- if (dynamic_cast <Translator_group *> (i.ptr ()))
- groups.push (dynamic_cast <Translator_group *> (i.ptr ()));
+ if (dynamic_cast <Translator_group *> (p->car_))
+ groups.push (dynamic_cast <Translator_group *> (p->car_));
}
return groups;
}
Translator_group::nongroup_l_arr () const
{
Link_array<Translator> groups;
- for (PCursor<Translator*> i (trans_p_list_.top ()); i.ok (); i++)
+ for (Cons<Translator> *p = trans_p_list_.head_; p; p = p->next_)
{
- if (!dynamic_cast <Translator_group *> (i.ptr ()))
- groups.push (i.ptr ());
+ if (!dynamic_cast <Translator_group *> (p->car_))
+ groups.push (p->car_);
}
return groups;
}
+/**
+ End translator: call "destructor", remove from hierarchy, and delete
+ */
void
Translator_group::terminate_translator (Translator*r_l)
delete trans_p;
}
+
+/**
+ Remove a translator from the hierarchy.
+ */
Translator *
Translator_group::remove_translator_p (Translator*trans_l)
{
assert (trans_l);
- PCursor<Translator*> trans_cur (trans_p_list_.find (trans_l));
- Translator * t = trans_cur.remove_p();
- /*
- For elegant design, we would do this too. Alas, it does not work yet..
+ for (Cons<Translator> **pp = &trans_p_list_.head_; *pp; pp = &(*pp)->next_)
+ if ((*pp)->car_ == trans_l)
+ {
+ Cons<Translator> *r = trans_p_list_.remove_cons (pp);
+ r->car_ =0;
+ trans_l->daddy_trans_l_ =0;
+ delete r;
+ return trans_l;
+ }
- t-> removal_processing ();
- */
- t-> daddy_trans_l_ = 0;
- return t;
+ return 0;
}
void
Translator_group::each (Method_pointer method)
{
- for (PCursor<Translator*> i (trans_p_list_.top ()); i.ok (); i++)
- (i.ptr()->*method) ();
+ for (Cons<Translator> *p = trans_p_list_.head_; p; p = p->next_)
+ (p->car_->*method) ();
}
+
void
Translator_group::each (Const_method_pointer method) const
{
- for (PCursor<Translator*> i (trans_p_list_.top ()); i.ok (); i++)
- (i.ptr()->*method) ();
+ for (Cons<Translator> *p = trans_p_list_.head_; p; p = p->next_)
+ (p->car_->*method) ();
}
void
if (properties_dict_.elem_b (id))
{
if (where_l)
- *where_l = this;
+ *where_l = (Translator_group*) this; // ugh
return properties_dict_[id];
}
if (column_arr_.size())
translate_axis (column_arr_[0]->extent (Y_AXIS)[dir_], Y_AXIS);
- if (!broken_into_l_arr_.size () && beam_l_
+ if (!broken_b () && beam_l_
&& spanned_drul_[LEFT]->column_l () == beam_l_->spanned_drul_[LEFT]->column_l ()
&& spanned_drul_[RIGHT]->column_l () == beam_l_->spanned_drul_[RIGHT]->column_l ())
bracket_visibility_b_ = false;
}
void
-Tuplet_spanner::do_substitute_dependency (Score_element* o, Score_element* n)
+Tuplet_spanner::do_substitute_element_pointer (Score_element* o, Score_element* n)
{
if (Note_column *onc = dynamic_cast <Note_column *> (o))
column_arr_.substitute (onc, dynamic_cast<Note_column*> (n));
- else if (Beam *b = dynamic_cast<Beam *> (o))
+ else if (o == beam_l_)
{
- if (b == beam_l_)
- beam_l_ = dynamic_cast<Beam*> (n);
+ beam_l_ = dynamic_cast<Beam*> (n);
}
}
void
Tuplet_spanner::set_beam (Beam *b)
{
+ assert(!beam_l_);
beam_l_ = b;
add_dependency (b);
}
}
void
-Volta_spanner::do_substitute_dependency (Score_element* o, Score_element* n)
+Volta_spanner::do_substitute_element_pointer (Score_element* o, Score_element* n)
{
if (Note_column* c = dynamic_cast <Note_column*> (o))
note_column_arr_.substitute (c, dynamic_cast<Note_column*> (n));
*/
#include "proto.hh"
-#include "plist.hh"
#include "debug.hh"
#include "my-lily-lexer.hh"
#include "moment.hh"
#include "spring-spacer.hh"
-/** el stupido.
+/** El stupido. Add a measure until we're past the optimum.
A Dynamic Programming type of algorithm
{
problem_OK();
- PCursor<Paper_column*> curcol (pscore_l_->col_p_list_.top());
+ Line_of_cols &allcols (pscore_l_->col_l_arr_);
+ int curcol_idx = 0;
+
Array<Column_x_positions> breaking;
Line_of_cols breakpoints (find_breaks());
assert (breakpoints.size()>=2);
- int break_idx_i=0;
- int line_no_i = 0;
- while (break_idx_i < breakpoints.size() -1)
+ int break_idx=0;
+ int line_no = 0;
+ while (break_idx < breakpoints.size() -1)
{
Column_x_positions minimum;
Column_x_positions current;
+
// do another line
- line_no_i ++;
- Paper_column *post = breakpoints[break_idx_i]->postbreak_l();
- int start_break_idx = break_idx_i;
+ line_no ++;
+ Paper_column *post = breakpoints[break_idx]->postbreak_l();
+ int start_break_idx = break_idx;
current.add_paper_column (post);
- curcol++; // skip the breakable.
- break_idx_i++;
+ curcol_idx++; // skip the breakable.
+ break_idx++;
- while (break_idx_i < breakpoints.size())
+ while (break_idx < breakpoints.size())
{
-
// add another measure.
- while (breakpoints[break_idx_i] != curcol.ptr())
+ while (breakpoints[break_idx] != allcols[curcol_idx])
{
- current.add_paper_column (curcol);
- curcol++;
+ current.add_paper_column (allcols[curcol_idx]);
+ curcol_idx++;
}
- current.add_paper_column (breakpoints[break_idx_i]->prebreak_l());
+
+ current.add_paper_column (breakpoints[break_idx]->prebreak_l());
current.spacer_l_ = generate_spacing_problem (current.cols,
- pscore_l_->paper_l_->line_dimensions_int (line_no_i));
+ pscore_l_->paper_l_->line_dimensions_int (line_no));
// try to solve
if (!feasible (current.cols))
if (!minimum.cols.size())
{
warning (_ ("ugh, this measure is too long")
- + ", " + _f ("breakpoint: %d", break_idx_i)
+ + ", " + _f ("breakpoint: %d", break_idx)
+ "(" + _ ("generating stupido solution") + ")");
current.stupid_solution();
current.energy_f_ = - 1; // make sure we break out.
delete current.spacer_l_;
current.spacer_l_ =0;
- if (!current.satisfies_constraints_b_ && start_break_idx == break_idx_i - 1)
+ if (!current.satisfies_constraints_b_ && start_break_idx == break_idx - 1)
{
warning ( _ ("I don't fit; put me on Montignac"));
minimum = current;
minimum = current;
}
else { // we're one col too far.
- break_idx_i--;
- while (curcol.ptr() != breakpoints[break_idx_i])
- curcol --;
+ break_idx--;
+ while (allcols[curcol_idx] != breakpoints[break_idx])
+ curcol_idx --;
break; // do the next line.
}
// add nobreak version of breakable column
- current.cols.top()=breakpoints[break_idx_i];
- curcol ++;
- break_idx_i++;
+ current.cols.top()=breakpoints[break_idx];
+ curcol_idx ++;
+ break_idx++;
}
- *mlog << "[" << break_idx_i << "]" << flush;
+ *mlog << "[" << break_idx << "]" << flush;
breaking.push (minimum);
}
return breaking;
extender_height = 0.8*\staffline;
-% Multi-measure rests
-mmrest_x_minimum = 2.0*\staffheight;
\include "engraver.ly";
prallmordent =\script { "prallmordent" 0 0 1 0 0 }
upprall =\script { "upprall" 0 0 1 0 0 }
downprall =\script { "downprall" 0 0 1 0 0 }
+
+"dash-hat" = "marcato"
+"dash-plus" = "stopped"
+"dash-dash" = "tenuto"
+"dash-bar" = "staccatissimo"
+"dash-larger" = "accent"
+"dash-dot" = "staccato"
export PATH:=$(topdir)/lily/out:$(topdir)/buildscripts/out:$(PATH)
export MFINPUTS:=$(topdir)/mf/$(PATHSEP)$(MFINPUTS)$(PATHSEP)$(PATHSEP)
export TEXINPUTS:=$(topdir)/tex/$(PATHSEP)$(topdir)/ps/$(PATHSEP)$(TEXINPUTS)$(PATHSEP)..$(PATHSEP)$(PATHSEP)
-export LILYINCLUDE:=$(topdir)/scm$(PATHSEP)$(topdir)/ly$(PATHSEP)$(topdir)/mf/out$(PATHSEP)$(PATHSEP)$(topdir)/tfm:$(LILYINCLUDE)
+export LILYINCLUDE:=$(topdir)/scm$(PATHSEP)$(topdir)/ly$(PATHSEP)$(topdir)/mf/out$(PATHSEP)$(PATHSEP)$(TEX_TFMDIR)$(PATHSEP)$(LILYINCLUDE)
Begin3
Titel: LilyPond
-Versie: 1.1.31
-Inschrijf datum: 17FEB99
+Versie: 1.1.32
+Inschrijf datum: 22FEB99
Beschrijving: @FLAPTEKST@
Trefwoorden: muziek typezetten midi notatie
Auteur: hanwen@stack.nl (Han-Wen Nienhuys)
janneke@gnu.org (Jan Nieuwenhuizen)
Onderhouden door: hanwen@cs.ruu.nl (Han-Wen Nienhuys)
Voornaamste plek: sunsite.unc.edu /pub/Linux/apps
- 770k lilypond-1.1.31.tar.gz
+ 770k lilypond-1.1.32.tar.gz
Oorspronkelijke plek: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
- 770k lilypond-1.1.31.tar.gz
+ 770k lilypond-1.1.32.tar.gz
Copi-eer voorwaarden: GPL
End
Begin3
Title: LilyPond
-Version: 1.1.31
-Entered-date: 17FEB99
+Version: 1.1.32
+Entered-date: 22FEB99
Description:
LilyPond is the GNU Project music typesetter. This program can print
beautiful sheet music from a music definition file. It can also play
janneke@gnu.org (Jan Nieuwenhuizen)
Maintained-by: hanwen@stack.nl (Han-Wen Nienhuys)
Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
- 770k lilypond-1.1.31.tar.gz
+ 770k lilypond-1.1.32.tar.gz
Original-site: ftp.cs.uu.nl /pub/GNU/LilyPond/development/
- 770k lilypond-1.1.31.tar.gz
+ 770k lilypond-1.1.32.tar.gz
Copying-policy: GPL
End
Name: lilypond
-Version: 1.1.31
+Version: 1.1.32
Release: 1
Copyright: GPL
Group: Applications/Publishing
-Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.1.31.tar.gz
+Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-1.1.32.tar.gz
Summary: A program for printing sheet music.
URL: http://www.cs.uu.nl/~hanwen/lilypond
Packager: Han-Wen Nienhuys <hanwen@cs.uu.nl>
strip lily/out/lilypond mi2mu/out/mi2mu
make prefix="$RPM_BUILD_ROOT/usr" install
+gzip -9fn $RPM_BUILD_ROOT/usr/info/* || true
mkdir -p $RPM_BUILD_ROOT/etc/profile.d
cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT/etc/profile.d/lilypond.sh
cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT/etc/profile.d/lilypond.csh
-%files
+%post
+
+touch /tmp/.lilypond-install
+rm `find /var/lib/texmf -name 'feta*pk -print' -or -name 'feta*tfm -print'` /tmp/.lilypond-install
+/sbin/install-info /usr/info/lilypond.info.gz /usr/info/dir || true
+
+%preun
+if [ $1 = 0 ]; then
+ /sbin/install-info --delete /usr/info/lilypond.info.gz /usr/info/dir || true
+fi
+
+%files
%doc htmldocs/
# hairy to hook it in (possibly non-existing) emacs
/usr/bin/ly2dvi
/usr/bin/lilypond
/usr/bin/mi2mu
+/usr/info/*
/usr/man/man1/mi2mu.1
/usr/man/man1/lilypond.1
/usr/man/man1/mudela-book.1
/usr/share/locale/*/LC_MESSAGES/lilypond.mo
/etc/profile.d/lilypond.*
-%post
-
-touch /tmp/.lilypond-install
-rm `find /var/lib/texmf -name 'feta*pk -print' -or -name 'feta*tfm -print'` /tmp/.lilypond-install
$(MAKE) CONFIGSUFFIX='www' -C mutopia WWW
tar --exclude='*.dvi' --exclude='*.tex' --exclude='*.ps' --exclude='*.ppm' -czf $(outdir)/examples.tar.gz `find input mutopia -type d -name 'out-www' -print`
-CMR10DIR=$(dir $(shell kpsewhich tfm cmr10.tfm))#ugh! Need kpsewhich
-TEX_TFMDIR=$(CMR10DIR)
localinstall:
mkdir -p $(datadir)
ln -s $(TEX_TFMDIR) $(datadir)/tfm
depth = ..
-SUBDIRS = J.S.Bach Coriolan W.A.Mozart F.Schubert D.Zipoli Hymns D.Scarlatti L.Mozart E.Satie N.W.Gade
+SUBDIRS = J.S.Bach Coriolan W.A.Mozart F.Schubert D.Zipoli Hymns D.Scarlatti L.Mozart E.Satie
examples= gallina
LOCALSTEPMAKE_TEMPLATES=mutopia
+++ /dev/null
-#
-
-depth = ../..
-
-examples=
-LOCALSTEPMAKE_TEMPLATES=mutopia
-
-include $(depth)/make/stepmake.make
-
-
+++ /dev/null
-\version "1.0.14";
-
-corI=\notes\relative c'' {
-\key c;
-
-\property Staff."midi_instrument" = "french horn"
-
-[g8. \f ( a16 ] ) g2 |
-[g8. ( a16 ] ) g2_"dim." |
-c2. \p ( |
-) g2 g4 ( |
-) c2. ( |
-) g4 [g8. ( a16 ] ) g4 |
-c2. \p ( |
-) g2 g4 |
-\tiny g8*1/2 \normalsize c2 \< ( *7/8 ~ [ \! c8 \> \! ) g ] | % grace note g8 c2
-g2 \p r4 |
-g \mf ( d' c~ |
-c ) b r |
-R2. |
-r4 r c \p ( |
-) g r r |
-g [g8. ( a16 ] ) g4 |
-R2. |
-r4 r [g8^""^"solo" \mf \< () \! e' ] |
-\tiny d8*1/2 \normalsize g2 \> ( *7/8 [ \! e8. c16 ] | % grace note d8 g2
-) g2 r4 |
-R2. |
-r4 r \times 2/3 {[e'8 \f ( g, ) g'] } |
-g4 () e r |
-r r \times 2/3 {[g8 \f ( e ) g] }
-d4 () g r |
-r r [d16 \f ( g, e' d ] |
-[g, d' e ) d ] g,4 r |
-r \tiny g8 \f *1/2 \normalsize d'2 \> ( *7/8| % grace note g8 d2
-[g,8. a16 g8. a16 \! g8. ) a16 ] |
-g4 r r |
-R2. |
-r4 r^\fermata r8^\fermata r |
-R2*8 |
-d'8-. \pp r c-. r |
-d r c g |
-[g-. \< g-. g-. \! g-. ] |
-g4.:8 g8 \f ( |
-) c4. r8 |
-c4. r8 |
-c4. r8 |
-c4 () b8 r |
-e,4. r8 |
-e'4. r8 |
-e,4. r8 |
-e'4. r8 |
-e r e r |
-e r e r |
-c4 \sfz r |
-R2*12 |
-r4 r8 g' ( |
-) g,4. \f g8 ( |
-[ ) d' d16-> ( e ] ) d8 r |
-R2 |
-r4 r8 g \f ( |
-) g,4. g8 ( |
-[ ) d' d16 ( e ] [) d8 d ] ~ |
-d4.-> d8 ~ |
-d4.-> r8 |
-r4 r8 e ( |
-) d4. \f d8 ~ |
-d4.-> d8 ~ |
-d4.-> r8 |
-r4 r8 e \f ( |
-[ ) d d16 ( e ] ) d8 r |
-R2*4 |
-d4. \f r8 |
-R2 |
-d4. \sfz r8 |
-d4. \sfz r8 |
-d4 d-> ~ |
-d4 d-> ~ |
-d g ( |
-[ ) d8 d16 ( e] ) d8 r |
-d4 d ~ |
-d4 d ~ |
-d g ( |
-[ ) d8 d16 ( e] ) d8 r |
-d4 d ~ |
-d4_"dim." d ~ |
-d4 d ~ |
-d4 d ~ |
-d8 r r4 |
-R2*35 |
-c,2 \pp ~ |
-c4. r8 |
-R2*2 |
-d'2 \pp ~ |
-d4. r8 |
-d8 r c r |
-d-. r c-. g |
-g2:8 \< |
-\! g4.:8 g8 \f ( |
-) e'4. r8 |
-c4. r8 |
-c4. c8 |
-c2:8 |
-c4. r8 |
-d4 () c8 r |
-d4 () c8 r |
-f4 () e8 r |
-c4 r |
-e r |
-c r |
-e r |
-c8 r d r |
-es r d r |
-d \sfz r r4 |
-R2*2 |
-d4 ( \p \< e |
-\! f g \> ~ |
-g ) \! e8 r |
-R2 |
-d4 ( \p \< e |
-\! ) f2 |
-b,4_"dim." ( c |
-) d r |
-R2*3 |
-[c8 ( \f c16 d ][es8 d16 ) c ] |
-d4. r8 |
-R2*2 |
-[c8 ( c16 d ][es8 d16 ) c ] |
-d4. c8 ( |
-) g'4.-> c,8 ( |
-) g'4.-> r8 |
-R2 |
-r4 r8 g \f ~ |
-g4. g8 ~ |
-g4. r8 |
-r4 r8 d ( |
-[ ) g g16 ( a ] ) g8 r |
-R2 |
-r4 r8 g, \p |
-[g-. \< g-. g-. \! g-.] |
-[g-. \< g-. g-. \! g ( ] |
-) e'4. r8 |
-R2 |
-d4. \f r8 |
-d4. g,8 ( |
-) e' r d4 ( |
-) e8 r d4 ( |
-) e8 r c4 ( |
-[) d8 f-. f-. d-. ] |
-e r d4 ( |
-) e8 r d4 ( |
-) e8 r c4 ( |
-[) d8 f-. f-. d-. ] |
-e r d4 ( |
-) e8 r d4_"dim." ( |
-) c8 r g4 |
-g8 r [g'8.^""^"solo" ( \< \! a16 ] |
-g4. \> \! ) e8 |
-c4 ( d |
-e d |
-) c [g'8. ( \< \! a16 ] |
-g4. \> \! ) e8 |
-c4 ( d |
-e d |
-) c [c8. ( d16 ] |
-) c2 ( |
-) g ~ |
-g_"dim." ~ |
-g ~ |
-g \p ~ |
-g ~ |
-g ~ |
-g |
-R2*2 |
-d'2 \sfz \> ( |
-) \! g, ~ |
-g \p ~ |
-g |
-c \< ~ |
-\! c |
-c4. \f r8 |
-d4. r8 |
-d4. r8 |
-d4. r8 |
-c2 ~ |
-c4. r8 |
-c2 ~ |
-c4. r8 |
-d4. r8 |
-d4. d8 |
-[e-. d-. e-. d-.] |
-[e-. d-. e-. d-.] |
-e r d r |
-c r d r |
-c r e r |
-g r e r |
-c4 r8 g ( |
-) e'4 r8 g,8 ( |
-) c4 r8 g ( |
-) e'4 r8 g,8 ( |
-) c4 r |
-R2 |
-e4 \sfz r^\fermata
-}
-
-corIhelp=\notes\relative c''' {
-\key c;
-\tiny
-
-s2.*32 |
-s2*33 |
-r4 r8 [g16^"oboe" \p ( a ] |
-[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] |
-[ ) f8-. e16 ( f ] ) e8-. s |
-s2*66 |
-[f,,16^"Vlc." ( g f g][f g f8 ] |
-) e4 r |
-[f16 ( g f_"dim." g][f g f8 ] |
-) e4 r |
-}
-
-corIIhelp=\notes\relative c'' {
-\key c;
-\tiny
-
-[c8.^"Oboe" ( d16] ) c2 |
-[c8. ( d16] ) c2 |
-s2.*15 |
-r4 r [g8^"Cor. I" ( ) e'] |
-g2 ( [e8. ) c16 ] |
-g2 s4 |
-s2.*12 |
-s2*35 |
-r4 r8 g'8^"Cor. I" ( |
-) g,4. s8 |
-s2*65 |
-[f,16^"Vlc." ( g f g][f g f8 ] |
-) e4 r |
-[f16 ( g f_"dim." g][f g f8 ] |
-) e4 r |
-s2*35 |
-r4 r8 a''^"Oboe" |
-a-. [ gis-. gis-. \< g-.] |
-[g-. fis-. \! fis-. f-. ] |
-}
-
-corII=\notes\relative c'' {
-\key c;
-
-\property Staff."midi_instrument" = "french horn"
-
-R2.*19 |
-r4 r [g8^"solo" \p (\< \! ) e'] |
-\tiny d8*1/2 \normalsize g2 \> ( *7/8 [e8. ) \! c16 ] | % grace note d8 () g2
-g2 r 4 |
-r r \times 2/3 {[e'8 \p ( g, ) g' ]} |
-g4 \> () \! e r |
-r r \times 2/3 {[g8 \p ( e ) g ]} |
-d4 \> () \! g r |
-r r [g,16 ( \p d' e d ] |
-) g,4 r r |
-R2. |
-[g8. ( a16 g8. a16 g8. a16] |
-[g8._"dim." a16 ] g4. a8 |
-[g8. a16] ) g4^\fermata \pp r8^\fermata r |
-R2*8 |
-g8-. \pp r c,-. r |
-g'-. r c,-. r |
-R2 |
-r4 r8 e \f ~ |
-e4. r8 |
-c4. r8 |
-c4. r8 |
-e4. r8 |
-c4. r8 |
-g'4. r8 |
-c,4. r8 |
-g'4. r8 |
-e r e r |
-e r e r |
-fis4 \sfz r |
-R2*13 |
-r4 r8 g \f ( |
-) g,4. r8 |
-R2*2 |
-r4 r8 g' ( |
-) g,4.-> g'8 ( |
-) g,4.-> g'8 ( |
-) g,4.-> r8 |
-R2 |
-r4 r8 g' ( |
-) g,4.-> g'8 ( |
-) g,4.-> r8 |
-R2*6 |
-d''4. \f r8 |
-R2 |
-c4. \sfz r8 |
-c4. \sfz r8 |
-g4 g,-> ~ |
-g g-> ~ |
-g g ~ |
-g r |
-g4 g-> ~ |
-g g-> ~ |
-g g-> ~ |
-g r |
-g4 g ~ |
-g_"dim." g ~ |
-g g ~ |
-g g ~ |
-g8 r r4 |
-R2*35 |
-c2 \pp ~ |
-c4. r8 |
-R2*4 |
-g'8-. \pp r c,-. r |
-g'-. r c,-. r |
-R2 |
-r4 r8 e \f ( |
-) g4. r8 |
-c,4. r8 |
-c4. c8 |
-c2:8 |
-c'4. r8 |
-d4 () c8 r |
-d4 () c8 r |
-d4 () c8 r |
-c,4 r |
-e r |
-c r |
-e r |
-c'8 r d r |
-es r d r |
-g, \sfz r r4 |
-R2*13 |
-c,4. \f c8 ( |
-)c,4. r8 |
-R2*2 |
-c'4. \f c8 ( |
-)c,4. c''8 |
-c,4. c'8 |
-c,4. r8 |
-R2 |
-r4 r8 c' \f ~ |
-c4. c8 ~ |
-c4. r8 |
-R2*3 |
-r4 r8 c,8 \p |
-c2:8 |
-c4.:8 e8 ( |
-) g4. \f r8 |
-R2 |
-g4. \sfz r8 |
-g4. g8 ( |
-) c r g4 ( |
-) c8 r g4 ( |
-) c8 r c,4 ( |
-[ ) g'8 d'-. d-. g,-. ] |
-c r g4 ( |
-) c8 r g4 ( |
-) c8 r c,4 ( |
-[ ) g'8 d'-. d-. g,-. ] |
-c r g4 ( |
-) c8 r g4_"dim." ( |
-) c,8 r c4 ~ |
-c8 r r4 |
-R2*4 |
-c2 \p ~ |
-c ~ |
-c4 r |
-r [c'8. \f ( d16 ] |
-) c2 ( |
-) g ~ |
-g_"dim." ~ |
-g ~ |
-g \pp ~ |
-g ~ |
-g ~ |
-g |
-R2*2 |
-g \sfz ~ |
-g ~ |
-g ~ |
-g |
-c, \< |
-c |
-\! c4. r8 |
-d'4. r8 |
-g,4. r8 |
-g4. r8 |
-c2 ( |
-) c,4. r8 |
-c'2 ( |
-) c,4. r8 |
-d'4. r8 |
-g,4. g8 |
-[c-. g-. c-. g-. ] |
-[c-. g-. c-. g-. ] |
-c r g r |
-c, r g' r |
-c r g r |
-e r g r |
-e4 r8 g ( |
-) c,4 r8 g'8 ( |
-) e4 r8 g ( |
-) c,4 r8 g'8 ( |
-) e4 r |
-R2 |
-c'4-. \sfz r^\fermata
-}
-
-trpI=\notes\relative c'' {
-\key c;
-
-\property Staff."midi_instrument" = "trumpet"
-
-[d8. ( \f e16 ] ) d2 |
-R2.*30 |
-r4 r^\fermata r8 ^\fermata r |
-R2*12 |
-g,2 \f ~ |
-g4 r |
-g r |
-g () fis8 r |
-R2 |
-d'4 r |
-R2 |
-d4 r |
-R2*2 |
-e8 r r4 |
-R2*19 |
-c4. \f r8 |
-c4. r8 |
-R2*2 |
-c4. \f r8 |
-c4. r8 |
-R2*8 |
-e4. \f r8 |
-e4. r8 |
-r4 e-> ~ |
-d8 r e4-> ~ |
-d8 r d4 ~ |
-e8 r r4 |
-r e ~ |
-d8 r e4 ~ |
-d8 r d4 ~ |
-e8 r r4 |
-r e_"dim." ~ |
-d8 r e4 ~ |
-d8 r r4 |
-R2*47 |
-g,2 \f ~ |
-g4 r |
-g r8 g |
-g2:8 |
-c4. r8 |
-c4. r8 |
-c4. r8 |
-e4. r8 |
-e,4. r8 |
-e'4. r8 |
-e,4. r8 |
-e'4. r8 |
-e8 r e r |
-e r e r |
-d \sfz r r4 |
-R2*13 |
-r4 g,8 \f r |
-[d'-. d16 ( e ] ) d8 r |
-R2*2 |
-r4 g,8 \f r |
-[d'-. d16 ( e ] ) d8 r |
-g,4. \f r8 |
-g4. r8 |
-R2*2 |
-g4. \f r8 |
-g4. r8 |
-R2*6 |
-d'4. \f r8 |
-R2 |
-c4. \f r8 |
-c4. r8 |
-g4 r |
-g r |
-g8 r g r |
-[d' d16 ( e ] ) d8 r |
-g,4 r |
-g r |
-g8 r g r |
-[d' d16 ( e ] ) d8 r |
-g,4 \p r |
-g_"dim." r |
-g r |
-R2*25 |
-c4 \f r |
-e r |
-d r |
-d r |
-g, r |
-e' ~ d8 r |
-g,4 r |
-e' ~ d8 r |
-e4-. r |
-d-. r |
-d8-. r d-. r |
-d-. r d-. r |
-d-. r d-. r |
-d-. r d-. r |
-d r d r |
-d r d r |
-g,4 r |
-d'-. r |
-d-. r |
-d-. r |
-g, r |
-R2 |
-g4 \sfz r^\fermata
-}
-
-trpIhelp=\notes\relative c'' {
-\tiny
-
-s2.*32 |
-s2*9 |
-r4 r8 c-.^"Clar. I" |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] r8 |
-s2*23 |
-r4 r8 g''8^"Cor. I" ( |
-) g,4. g8 ( |
-[) d' d16 ( e ] )d8 s |
-s2*75 |
-r4 r8 c-.^"Clar. I" |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] s8 |
-s2*25
-r4 r8 a''^"Oboe" |
-a-. [ gis-. gis-. \< g-.] |
-[g-. fis-. \! fis-. f-. ] |
-s2*53 |
-r4 r8 [c'16^"Flauto" ( d] |
-) c8 [b16 ( c ] ) b8 [bes16 ( c ] |
-)bes8 [a16 ( bes ] ) a8 [c16 ( d] |
-) c8 [b16 ( c ] ) b8 [bes16 ( c ] |
-)bes8 [a16 ( bes ] ) a8
-}
-
-trpIIhelp=\notes\relative c'' {
-\tiny
-
-s2.*32 |
-s2*9 |
-r4 r8 c-.^"Clar. I" |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] r8 |
-s2*23 |
-r4 r8 g''8^"Cor. I" ( |
-) g,4. g8 ( |
-[) d' d16 ( e ] )d8 s |
-s2*75 |
-r4 r8 c-.^"Clar. I" |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] s8 |
-s2*28
-r4 g'8^"Trp. I" \f r |
-[d'-. d16 ( e ] ) d8 r |
-s2*51 |
-r4 r8 [c'16^"Flauto" ( d] |
-) c8 [b16 ( c ] ) b8 [bes16 ( c ] |
-)bes8 [a16 ( bes ] ) a8 [c16 ( d] |
-) c8 [b16 ( c ] ) b8 [bes16 ( c ] |
-)bes8 [a16 ( bes ] ) a8
-}
-
-trpII=\notes\relative c' {
-\key c;
-
-\property Staff."midi_instrument" = "trumpet"
-
-R2.*31 |
-r4 r^\fermata r8 ^\fermata r |
-R2*12 |
-g2 \f ~ |
-g4 r |
-g r |
-g' ~ fis8 r |
-R2 |
-d'4 r |
-R2 |
-d4 r |
-R2*2 |
-e,8 r r4 |
-R2*19 |
-c4. \f r8 |
-c4. r8 |
-R2*2 |
-c4. \f r8 |
-c4. r8 |
-R2*8 |
-e4. \f r8 |
-e4. r8 |
-r4 g4 ~ |
-fis8 r g4 ~ |
-fis8 r d'4 ~ |
-e8 r r4 |
-r g, ~ |
-fis8 r g4 ~ |
-fis8 r d'4 ~ |
-e8 r r4 |
-r g, ~ |
-fis8_"dim." r g4 ~ |
-fis8 r r4 |
-R2*47 |
-g,2 \f ~ |
-g4. r8 |
-g4 r |
-R2 |
-c4. r8 |
-c4. r8 |
-c4. r8 |
-e4. r8 |
-c4. r8 |
-g'4. r8 |
-c,4. r8 |
-g'4. r8 |
-e r e r |
-e r e r |
-c' r r4 |
-R2*19 |
-g4. \f r8 |
-g4. r8 |
-R2*2 |
-g,4. \f r8 |
-g4. r8 |
-R2*6 |
-d''4. r8 |
-R2 |
-c,4. \f r8 |
-c4. r8 |
-g4. r8 |
-g4 r |
-g8 r r4 |
-R2 |
-g4 r |
-g r |
-g8 r r4 |
-R2 |
-g4 r |
-g_"dim." r |
-g r |
-R2*25 |
-c4 \f r |
-e r |
-d' r |
-d r |
-g,, r |
-c' ~ g8 r |
-g,4 r |
-c' ~ g8 r |
-g4 r |
-fis r |
-g8-. r g-. r | % Staccato copied from trp. I
-g-. r g-. r |
-g-. r d'-. r |
-g,-. r d'-. r |
-g, r g r |
-g r g r |
-g4-. r |
-g-. r |
-g-. r |
-g-. r |
-g r |
-R2 |
-g4 \sfz r^\fermata
-}
-
-timpani=\notes\relative c, {
-\clef "bass";
-
-\property Staff."midi_instrument" = "timpani"
-
-R2.*6 |
-f2.:32 \pp ~ |
-f2.:32 ~ |
-f2.:32 ~ |
-f2.:32 ~ |
-c'4 r r |
-R2.*3 |
-c2.:32 \pp |
-c2.:32 |
-c2.:32 |
-c2.:32 |
-c4 r r |
-R2.*7 |
-c2.:32 \pp |
-c2.:32 |
-c2.:32 |
-c2.:32 |
-c4 r r |
-r r^\fermata r8^\fermata r |
-R2*12 |
-f,2:32 \f ~ |
-f4 r |
-f r |
-R2 |
-f8 r r4 |
-R2 |
-f8 r r4 |
-R2*16 |
-r4 r8 c' \p |
-[c-. \< c-. c-. \! c-.] |
-c4.:8 \f r8 |
-R2 |
-r4 r8 c \p |
-c2:8 \< |
-\! c4.:8 \f r8 |
-c4:32 ~ c8 r |
-c4:32 ~ c8 r |
-R2*2 |
-f,4:32 \f ~ f8 r |
-f4:32 ~ f8 r |
-R2*3 |
-r4 r8 c' \p |
-c2:8 \< |
-\! c4.:8 r8 |
-R2*4 |
-c4 \f r |
-c4 r |
-c2:32 |
-c8 r r4 |
-c4 r |
-c4_"dim." r |
-c2:32 ~ |
-c8 r r4 |
-c4_"dim." r |
-c4 r |
-c4 r |
-c4 r |
-c8 r r4 |
-R2*45 |
-f,2:32 \f ~ |
-f4 r |
-f4 r |
-R2 |
-f4 r |
-R2*3 |
-f8 r r4 |
-R2 |
-f8 r r4 |
-R2*3 |
-c'4 \sfz r |
-R2*12 |
-r4 r8 f, \p |
-[f \< f f \! f ] |
-f4.:8 \f r8 |
-R2 |
-r4 r8 f \p |
-f2:8 \< |
-\! f4.:8 \f r8 |
-f4:32 \f ~ f8 r |
-f4:32 ~ f8 r |
-R2*2 |
-f4:32 \f ~ f8 r |
-f4:32 ~ f8 r |
-R2*3 |
-r4 r8 f \p |
-f2:8 |
-f4.:8 r8 |
-R2*2 |
-c'4 \f r |
-c r |
-f, r |
-f r |
-f2:32 ~ |
-f8 r r4 |
-f r |
-f r |
-f2:32 ~ |
-f8 r r4 |
-f r |
-f_"dim." r |
-f r |
-R2*28 |
-r4 r8 c' \f |
-f,2:32^\trill ~ |
-f4 r8 c' |
-f,2:32^\trill ~ |
-f4 r |
-f r |
-c' r8 c-. |
-[f,-. c'-. f,-. c'-.] |
-[f,-. c'-. f,-. c'-.] |
-f, r c' r |
-f, r c' r |
-f, r c' r |
-f, r c' r |
-f,2:32 \ff ~ |
-f2:32 ~ |
-f2:32 ~ |
-f2:32 ~ |
-f8 r r4 |
-r2 |
-f4 \sfz r^\fermata
-}
-
-timphelp=\notes\relative c' {
-\tiny
-
-[c8.^"Oboe, \\okt" ( d16] ) c2 |
-[c8. ( d16] ) c2 |
-s2.*30 |
-s2*9 |
-r4 r8 \clef "treble"; c'-.^"Clar. I" |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] r8 \clef "bass"; |
-s2*21 |
-r4 r8 \clef "treble"; [g''16^"oboe" \p ( a ] |
-[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] |
-[ ) f8-. e16 ( f ] ) e8-. \clef "bass"; s |
-s2*77 |
-r4 r8 \clef "treble"; c-.^"Clar. I" |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] r8 \clef "bass"; |
-s2*25
-r4 r8 \clef "treble"; a''^"Oboe" |
-a-. [ gis-. gis-. \< g-.] |
-[g-. fis-. \! fis-. ] \clef "bass"; s8 |
-s2*57 |
-r4 r8 \clef "treble"; bes,^"Vi. I" ( ] |
-) bes'4. d,8 ( |
-) d'4. c,8 ( |
-) c'4. e,8 ( |
-) e'4. \clef "bass"; s8 |
-}
\ No newline at end of file
+++ /dev/null
-
-globalNoKey=\notes {
-\time 3/4;
-\skip 2.*31;
-s2 s8 \bar "||"; \break
-s8
-\time 2/4;
-\skip 2*225;
-\bar "|.";
-}
-
-global=\notes {
-\key f;
-\globalNoKey
-}
-
-marks=\notes {
-\time 3/4;
-\property Voice.textstyle = "Large"
-\skip 2.*31;
-s2 s8 s^"\\Allegromoltovivace"
-\time 2/4;
-\skip 2*12;
-\mark "A";
-\skip 2*12;
-\mark "B";
-\skip 2*26;
-\mark "C";
-\skip 2*24;
-\mark "D";
-\skip 2*32;
-\mark "E";
-\skip 2*10;
-\mark "F";
-\skip 2*26;
-\mark "G";
-\skip 2*16;
-\mark "H";
-\skip 2*20;
-\mark "I";
-\skip 2*12;
-\mark "K";
-\skip 2*16;
-\mark "L";
-\skip 2*8;
-\mark "M";
-\skip 2*11;
-%slut
-}
+++ /dev/null
-\header{
-title = "Imellan Fjeldene. Ouverture";
-composer = "Niels W Gade";
-enteredby = "Mats Bengtsson";
-latexheaders = "\\input global";
-copyright = "Mats Bengtsson, 1999. Non-commersial copying welcome.\\\\" +
- "Typeset from handwritten parts at Statens Musikbibliotek, " +
- "Stockholm, Sweden";
-}
-
-\version "1.0.14";
-
-\include "global.ly"
-\include "wood.ly"
-\include "brass.ly"
-\include "strings.ly"
-
-my_paper = \paper {
- textheight = 275.0 \mm;
- \translator {
- \OrchestralPartStaffContext
- textScriptPadding = 5.0;
- }
-\translator{\VoiceContext
-\remove Auto_beam_engraver;
-}
- \translator {
- \ScoreContext
- SkipBars = 1;
- markScriptPadding = "6.0";
- textstyle = "italic";
- }
-}
-%{
-\score{
- \type Staff <
- \global
- \marks
- \oboe
- \oboehelp
- >
- \header{
- instrument = "Oboe";
- }
- \paper{
- \my_paper;
- output = "oboe";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
- \flauto
- \flautohelp
- >
- \header{
- instrument = "Flauto";
- }
- \paper{
- \my_paper;
- output = "flauto";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \clarI
- >
- \header{
- instrument = "Clarinetto I in B\\textflat";
- }
- \paper{
- \my_paper;
- output = "clarI";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \clarII
- >
- \header{
- instrument = "Clarinetto II in B\\textflat";
- }
- \paper{
- \my_paper;
- output = "clarII";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
- \fagotto
- >
- \header{
- instrument = "Fagotto";
- }
- \paper{
- \my_paper;
- output = "fagotto";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \corI
- \corIhelp
- >
- \header{
- instrument = "Corno I in F";
- }
- \paper{
- \my_paper;
- output = "corI";
- }
- \midi {
- \tempo 4=120;
- }
-}
-%}
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \corII
- \corIIhelp
- >
- \header{
- instrument = "Corno II in F";
- }
- \paper{
- \my_paper;
- output = "corII";
- }
- \midi {
- \tempo 4=120;
- }
-}
-%{
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \trpI
- \trpIhelp
- >
- \header{
- instrument = "Tromba I in B\\textflat";
- }
- \paper{
- \my_paper;
- output = "trpI";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \trpII
- \trpIIhelp
- >
- \header{
- instrument = "Tromba II in B\\textflat";
- }
- \paper{
- \my_paper;
- output = "trpII";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \globalNoKey
- \marks
- \timpani
- \timphelp
- >
- \header{
- instrument = "Timpani";
- }
- \paper{
- \my_paper;
- output = "timpani";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
- \viI
- >
- \header{
- instrument = "Violino I";
- }
- \paper{
- \my_paper;
- output = "viI";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
-% \notes{s2.*32 s2*141 \break}
- \viII
- >
- \header{
- instrument = "Violino II";
- }
- \paper{
- \my_paper;
- output = "viII";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
- \notes{s2.*32 s2*142 \break}
- \vla
- >
- \header{
- instrument = "Viola";
- }
- \paper{
- \my_paper;
- output = "viola";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
- \vlc
- >
- \header{
- instrument = "Violoncello";
- }
- \paper{
- \my_paper;
- output = "violoncello";
- }
- \midi {
- \tempo 4=120;
- }
-}
-
-\score{
- \type Staff <
- \global
- \marks
- \cb
- >
- \header{
- instrument = "Contrabasso";
- }
- \paper{
- \my_paper;
- output = "cb";
- }
- \midi {
- \tempo 4=120;
- }
-}
-%}
\ No newline at end of file
+++ /dev/null
-\header{
-title = "Imellan Fjeldene. Ouverture";
-composer = "Niels W Gade";
-enteredby = "Mats Bengtsson";
-latexheaders = "\\input global";
-copyright = "Mats Bengtsson, 1999. Non-commersial copying welcome.\\\\" +
- "Typeset from handwritten parts at Statens Musikbibliotek, " +
- "Stockholm, Sweden";
-}
-
-\version "1.0.14";
-
-\include "global.ly"
-\include "wood.ly"
-\include "brass.ly"
-\include "strings.ly"
-\include "paper16.ly";
-
-
-\score{ <
- \type StaffGroup = wood <
- \type Staff = flauto <
- \property Staff.instrument = "Flauto"
- \property Staff.instr = "Fl."
- \global
- \flauto
- >
- \type Staff = oboe <
- \property Staff.instrument = "Oboe"
- \property Staff.instr = "Ob."
- \global
- \marks
- \oboe
- >
- \type Staff = clarI <
- \property Staff.instrument = "Clarinetto I"
- \property Staff.instr = "Cl. I"
- \global
- \clarI
- >
- \type Staff = clarII <
- \property Staff.instrument = "Clarinetto II"
- \property Staff.instr = "Cl. II"
- \global
- \clarII
- >
- \type Staff = fagotto <
- \property Staff.instrument = "Fagotto"
- \property Staff.instr = "Fg."
- \global
- \fagotto
- >
- >
- \type StaffGroup = brass <
- \type Staff = cor <
- \global
- \property Staff.instrument = "2 Corni in F"
- \property Staff.instr = "Cor."
- \type Voice = corI { \stemup \corI }
- \type Voice = corII { \stemdown \corII }
- >
- \type Staff = trp <
- \global
- \property Staff.instrument = "2 Trp. in B\\textflat "
- \property Staff.instr = "Trp."
- \type Voice = trpI { \stemup \trpI }
- \type Voice = trpII { \stemdown \trpII }
- >
- >
- \type StaffGroup = percussion <\type Staff = timpani <
- \property Staff.instrument = "Timpani"
- \property Staff.instr = "Timp."
- \global
- \timpani
- >
- >
- \type StaffGroup = strings <
- \type GrandStaff = violins <
- \type Staff = viI <
- \property Staff.instrument = "Violin I"
- \property Staff.instr = "Vi. I"
- \global
- \viI
- >
- \type Staff = viII <
- \property Staff.instrument = "Violin II"
- \property Staff.instr = "Vi. II"
- \global
- \viII
- >
- >
- \type Staff = vla <
- \property Staff.instrument = "Viola"
- \property Staff.instr = "Vla."
- \global
- \vla
- >
- \type Staff = vlc <
- \property Staff.instrument = "Violoncello"
- \property Staff.instr = "Vlc"
- \global
- \vlc
- >
- \type Staff = cb <
- \property Staff.instrument = "Contrabasso"
- \property Staff.instr = "C.B."
- \global
- \cb
- >
- >
->
- \paper {
- \paper_sixteen;
- linewidth = 185.\mm;
- textheight = 260.\mm;
- \translator {
- \OrchestralScoreContext
- minVerticalAlign = 2.5*\staffheight;
- }
- \translator { \StaffContext
- \consists "Staff_margin_engraver";
- marginHangOnClef = 1;
- marginScriptPadding = "13.0";
- textstyle = "italic";
- }
-\translator{\VoiceContext
-\remove Auto_beam_engraver; % Bug workaround!
-}
- }
-}
-
-\score{
- \type StaffGroup <
- \oboe
- \flauto
- \type Staff = cor {\notes \transpose bes <\clarI \clarII >}
- \fagotto
- \type Staff = cor {\notes \transpose f <\corI \corII >}
- \type Staff = cor {\notes \transpose bes <\trpI \trpII >}
- \timpani
- \viI
- \viII
- \vla
- \vlc
- \cb
- >
- \midi {
- \tempo 4=120;
- }
-}
+++ /dev/null
-\version "1.0.14";
-
-viI=\notes\relative c'' {
-
-\property Staff."midi_instrument" = "violin"
-
-r4 r [g8.-> \mf ( a16 ] |
-) g4 r c, \p |
-[c'8. ( d16 ] c4. a8 |
-[f8. e16 ] f4. ) a8 |
-[c8. ( d16 ] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-[c'8. ( d16 ] c4. a8 |
-[f8. e16 ] f4. ) a8 |
-[c8. ( d16 ] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-[c'8. \mf ( \< d16 ] [b8 c] \! ) f4 |
-[ e8. \> ( d16 ] c4 \! ) g \pp |
-[c8. ( \< d16 ] [b8 c] \! ) f4 |
-[ e8. \> ( d16 ] ) \! c2 \p |
-[c8. ( d16 ] c4. a8 |
-[g8. a16 ] f4. ) a8 |
-[c8. ( d16 ] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-g2 \< ( \! f4 |
-e \> \! ) f r |
-r8 [ c ( g' c, f c ] |
-[ bes c a8 c a ) c ] |
-[a ( c a c a c ] |
-[a \pp c a c a ) c ] |
-[bes ( c ] bes4 [a8 c ] |
-[ bes c ] ) bes2 ~ |
-bes r4 |
-R2.*4 |
-r4 r^\fermata r8^\fermata [c'16 \pp ( d] | \time 2/4;
-) c8 r r [c16 ( d] |
-) c8 r r [c16 ( d] |
-[c d c a][f a c d] |
-[f8 d ) c d ( ] |
-[ ) a bes () g d' ( ] |
-[ ) a bes () g ] [d'16 ( es ] |
-[ d es d bes][g bes d es] |
-[ g8 es ) d bes ( ] |
-[) g a () f c' ( ] |
-[) g a () f ][ c'16 ( d ] |
-[ ) c8 c16 ( d ][ ) c8 c16 ( d ] |
-[ ) c8 c16 ( d ][ ) c8 c16 \f ( d ] |
-[c d c a][f a c d] |
-[f8 d ) c f, ( ] |
-[f' d ) c a ( ] |
-[a' f ) e ] [a,,16 ( b ] |
-[c-> d c b ][ ) a8 a'16 ( b ] |
-[c d c b ][ ) a8 a,16 ( b ] |
-[c \> d c \! b ][ ) a8 a'16 ( b ] |
-[c d c b ][ ) a8 a,16 ( b ] |
-[) c8-. b16 ( c][ ) d8-. c16 ( d ] |
-[ es f es ) d ][c8-. d'16 ( e ] |
-[f! \sfz g f e][d \> e d c ] |
-[ b c b \! a][g a g ) fis ] |
-f4 ( \p \< g |
-\! a2 |
-a4 \> [g8 \! f'] |
-[e c a ) g ] |
-f4 ( \< g |
-\! a2~ |
-a4 \> ) g |
-\! a2 ( |
-[a8_"dim." g f d] |
-<{[b g ][a ) g ] |} % grace note b8 b
- \type Voice=x {s8.. \tiny b8}>
-R2 |
-r4 r8 a'-. \mf |
-[a-. \< a-. a-. \! a-. ] |
-b4. \sfz r8 |
-R2 |
-r4 r8 a-. \mf |
-[a-. \< a-. a-. \! a-. ] |
-b4. \f bes8 ( |
-) bes'4.-> bes,8 ( |
-) bes'4.-> a8 |
-[g-. \< f-. e-. \! d-. ] |
-[cis16 ( e d b][ ) g8 \f bes8 (] |
-) bes'4.-> bes,8 ( |
-) bes'4.-> a8 \p |
-[g-. \< f-. e-. \! d-. ] |
-[g, g'16 \f ( a ][ ) g8 g,, \p ] |
-g4 ( a | % added longer slur
-b \tiny [a16*1/2 b*1/2] \normalsize[c8*1/2 ) g ] | % grace notes [a16 ( b][) c
-g4 ( a |
-b \tiny [a16*1/2 b*1/2] \normalsize [) c8*1/2 bes' \f ( ] | % grace notes [a16 ( b][) c
-) bes'4.-> a8 |
-[f-. e-. d-. f, ( ] |
-< ) d'4. \sfz a'> g,8 ( |
-< ) d'4. \sfz g> g,8 ( |
-) e' r g4-> ( |
-) e8 r g4-> ( |
-) e8 r es4 ( |
-[) d8 g16 ( a ] [ ) g8 g, ( ] |
-) e'! r g4-> ( |
-) e8 r g4-> ( |
-) e8 r es4 ( |
-[) d8 g16 ( a ] [ ) g8 g, ( ] |
-) e' r g4_"dim." ( |
-) e8 r d4 ( |
-) e8 r g4 ( |
-) e8 r d4 ( |
-[ ) e8 \p g,-. a-. b-.] |
-c r r4 |
-R2 |
-r4 e,-. \p |
-a ( \< ) e' |
-e-. () \! e-. |
-e \sfz \> [ d8 \! c ] |
-b2 \p | % \p added
-\tiny e8*1/2 \normalsize g4 ( \> *3/4 dis | % grace note e8() g4
-\! e ) b |
-\tiny e8*1/2 \normalsize g4 ( \> *3/4 dis | % grace note e8() g4
-\! e ) b |
-\tiny d8*1/2 \normalsize f2 \sfz ( *7/8 |
-b,4 [c8 ) b] |
-a2-> ~ |
-gis4 e |
-a ( ) e' |
-e-. \< () \! e-. |
-e ( \sfz \> [ d8 \! c ] |
-) b2 \p |
-\tiny e8*1/2 \normalsize g4 ( \> *3/4 dis | % grace note e8() g4
-\! e ) b |
-\tiny e8*1/2 \normalsize g4 ( \> *3/4 dis | % grace note e8() g4
-\! e ) b |
-\tiny d8*1/2 \normalsize f2 \sfz ( *7/8 |
-b,4 [c8 ) b] |
-a2 \p ~ |
-gis |
-\tiny a8*1/2 \normalsize d2 ( \> *7/8 | % grace note a8 () d2
-b4 [ c8 \! b ] |
-a2 \p |
-) gis |
-R2*4 |
-[c16 ( \pp d c a][f a c d] |
-[f8 d ) c d ( ] |
-[ ) a bes () g d' ( ] |
-[ a ) bes g ] [d'16 ( es ] |
-[ d es d bes][g bes d es] |
-[ g8 es ) d bes ( ] |
-[) g a () f c' ( ] |
-[) g a () f ][ c'16 ( d ] |
-[ ) c8 c16 ( d ][ ) c8 c16 ( d ] |
-[ ) c8 c16 ( d ][ ) c8 c16 \ff ( d ] |
-[c d c a][f a c d] |
-[f8 d ) c f, ( ] |
-[f' d ) c ][f,16 ( g] |
-[ ) f8 f16 ( g][ ) f8 f'16 ( g] |
-[f g f d][bes d f g] |
-[bes8 g ) f bes, ( ] |
-[bes'8 g ) f d ( ] |
-[d' bes ) a d,,16 ( e ] |
-[f g f e ][ ) d8 d'16 ( e ] |
-[f-> g f e][ ) d8 d,16 ( e ] |
-[f g f e ][ ) d8 d'16 ( e ] |
-[f g f e][ ) d8 d,16 ( e ] |
-[ ) f8 e16 ( f][ ) g8 f16 ( g ] |
-[as bes as g][ ) f8 g'16 ( a! ] |
-[bes! \sfz c bes a][g a g ) f ] |
-[e ( f e d][c d c ) b ] |
-bes!4 \p ( \< c | % \p added
-\! d2 ~ |
-d4 [c8 bes' \> ] |
-[a f d ) \! c ] |
-bes4 ( \< c |
-\! d2 ~ |
-d4 \> c |
-\! d2 |
-[d8 c][bes g] |
-[e c] \tiny e8*1/4 \normalsize [d *3/4 ) c ] | % grace note e8() d
-R2 |
-r4 r8 d' \mf |
-d2:8 \< |
-\! e4 \f r |
-R2 |
-r4 r8 d |
-d2:8 \< |
-\! e4 \f r8 es ( |
-) es'4.-> es,8 ( |
-) es'4.-> d8 \p |
-[c-. \< bes-. a-. \! g-. ] |
-[fis16 ( a g ) e!] [c8 es8 ( \f ] |
-) es'4.-> es,8 ( |
-) es'4.-> d8 \p |
-[c-. \< bes-. a-. \! g-. ] |
-[c, c'16 ( \f d] [) c8 c,, \p ] |
-c4^\trill ( d^\trill |
-e^\trill \tiny [d16*1/2 e*1/2] \normalsize [f8 *1/2 ) c ] | % grace notes [d16 ( e] )f
-c4^\trill ( d^\trill |
-e^\trill \tiny [d16*1/2 e*1/2] \normalsize [f8 *1/2 ) es' \f ( ] | % grace notes [d16 ( e] )f % \f added
-) es'4. d8 |
-[bes-. a-. g-. bes, ( ] |
-) d'4. \sfz c,8 ( |
-) c'4. \sfz c,8 ( |
-) a' r c4-> ( |
-) a8 r c4-> ( |
-) a8 r as4 ( |
-[) g8 c16 ( d][) c8 c, ( ] |
-) a' r c4 ( |
-) a8 r c4 ( |
-) a8 r as4 ( |
-[) g8 c16 ( d][) c8 c, ( ] |
-) a' r c4_"dim." ( |
-) a8 r g4 ( |
-) f8 r c4 ( |
-) a8 r g4 \p ( |
-) f2 \< ~ |
-\! f2 ( ~ |
-f4 g |
-f ) e |
-es2 ~ |
-d4 r |
-\tiny f'8*1/2 \normalsize a4 \sfz ( *3/4 e | % grace note f8() a
-f b, |
-) c r |
-R2 |
-f,8 \p r r4 | % \p added
-e8 r r [c'16 ( \pp d] |
-[ ) c8-. b16 ( c ][ ) b8-. bes16 ( c ] |
-[ ) bes8-. a16 ( bes ][ ) a8-. c16 ( d ] |
-[ ) c8-. b16 ( c ][ ) b8-. bes16 ( c ] |
-[ ) bes8-. a16 ( bes ][ ) a8-. e'16 ( f ] |
-[ ) e8-. d16 ( e ][ ) d8-. c16 \< ( d ] |
-[ ) c8-. b16 ( \! c ][ ) b8-. bes ] |
-bes'4. \sfz \> a8 |
-[g-. \! f-. ] [e-. c16 ( d ] |
-[ ) c8-. b16 ( c ][ ) b8-. bes16 ( c ] |
-[ ) bes8-. a16 ( bes ][ ) a8-. c16 ( d ] |
-[ ) c8-. b16 ( c ][ ) b8-. bes16 ( c ] |
-[ ) bes8-. a16 \< ( bes ][ ) a8-. \! bes ( ] |
-) bes'4. \f d,8 ( |
-) d'4.-> c,8 ( |
-) c'4.-> e,8 ( |
-) e'4.-> [c16 ( d] |
-[c d c a][f a c d] |
-[f8 d ) c ][ c16 ( d ] |
-[c d c a][f a c d] |
-[f8 d ) c ][f,16 ( g ] |
-[f g f d ][ ) b8 bes'!16 ( c ] |
-[bes c bes g][ ) e8 c'16 ( d ] |
-[) c8 c16 ( d ][) c8-. c16 ( d ] |
-[) c8-. c16 ( d ][) c8-. c16 ( d ] |
-) c8-. r c r |
-a r <e bes> r |
-<a, f'> r a' r |
-c r a r |
-<f4 a,> r8 c ( |
-<a4 ) a'> r8 c ( |
-<a4 ) f'> r8 c ( |
-<a4 ) a'> r8 c, |
-f2 ~ |
-f ( |
-<f4 \sfz c' ) a'> r^\fermata
-
-}
-
-viII=\notes\relative c' {
-
-\property Staff."midi_instrument" = "violin"
-
-r4 r e-> \mf ~ |
-e r e ( \p |
-) f2 f4 ( |
-) c r r |
-f2 f4 ( |
-) e f r |
-f2 f4 ( |
-) c r r |
-f2 f4 ( |
-e \< [f8. d16][c8. \! ) d16] |
-[e8. \mf ( f16][d8 ) e] f4 ~ |
-f ( e [c8 ) e] |
-a2. \pp ( |
-gis4 e ) f |
-g! \p [f8. ( g16] ) f8 r |
-c4 ( ~ [c8. d16] ) c8 r |
-g'4 [f8. ( g16] ) f8 r |
-c4 r r |
-<c2. { s4. \< \! s4. \>}> ~ |
-\! c2._"dim." ~ |
-c \pp ~ |
-c \< ~ |
-\! c \> ~ |
-\! c \pp \< ~ |
-\! c \> ~ |
-\! c \pp ~ |
-c2 r4 |
-R2.*4 |
-r4 r^\fermata r8^\fermata [c'16 \pp ( d] | \time 2/4;
-) c8 r r [c16 ( d] |
-) c8 r r [c16 ( d] |
-[c d c a][f a c d] |
-[f8 d ) c ] r |
-fis,-. r g-. r |
-fis r [g d'16 ( es ] |
-[ d es d bes][g bes d es] |
-[ g8 es ) d ] r |
-e,! r f r |
-e r f r |
-R2 |
-r4 r8 [ c'16 \f ( d ] |
-[c d c a][f a c d] |
-[f8 d ) c f, ( ] |
-[f' d ) c f, ( ] |
-[f' d ) c ] [a,16 ( b ] |
-[c d c b ][ ) a8 a'16 ( b ] |
-[c-> d c b ][ ) a8 a,16 ( b ] |
-[c d c b ][ ) a8 a'16 ( b ] |
-[c-> d c b ][ ) a8 a,16 ( b ] |
-[) c8-. b16 ( c][ ) d8-. c16 ( d ] |
-[ es f es ) d ][c8-. d'16 ( e! ] |
-[f! g f e][d e d c ] |
-) b r r8 r4 |
-<{d,2 ( \p ~ |
- d4 e |
- f2 |
- ) e |
- d ( \p ~ |
- d4 e |
- f2 |
- f |
- ) f4 }
- {b,2 ( ~ |
- b4 c |
- b2 |
- ) c |
- b ( ~ |
- b4 c |
- b2 |
- b4 c |
- ) d \p } > r |
-R2*2 |
-r4 r8 fis-. \mf |
-[fis-. \< fis-. fis-. \! fis-. ] |
-f!4. \f r8 |
-R2 |
-r4 r8 fis-. |
-fis2:8 |
-f!4. \f e8 ( |
-) e'4.-> e,8 ( |
-) e'4.-> c,8 \p |
-[cis-. \< d-. e-. \! f-. ] |
-f4. \f e8 ( |
-) e'4.-> e,8 ( |
-) e'4.-> c,8 \p |
-[cis-. \< d-. e-. \! f-. ] |
-[f \f g16 ( a][ ) g8 g, \p ] |
-g4^\trill ( \< \! a^\trill |
-b^\trill \> \tiny [a16*1/2 b*1/2] \normalsize [ ) c8 *1/2 \! g] | % grace notes [a16 b] [c8
-g4^\trill ( \< \! a^\trill |
-b^\trill \> \tiny [a16*1/2 b*1/2] \normalsize [ ) \! c8 *1/2 g' \f ( ] |
-< ) g4.-> bes> a8 |
-[a a a f ( ] |
-<d'4. \sfz ) a'> g,8 ( |
-<d'4. \sfz ) g> g,8 ( |
-<{ ) e r f4_> ( |
- ) e8 r f4_> ( |
- ) e8 }
- {c'8 s d4 ( |
- ) c8 s d4 ( |
- ) c8 }> r fis4 ( |
-[ ) f!8 g16 ( a][ ) g8 f ( ] |
-<{ ) e! r f4_> ( |
- ) e8 r f4_> ( |
- ) e8 }
- {c'8 s d4 ( |
- ) c8 s d4 ( |
- ) c8 }> r fis4 ( |
-[ ) f!8 g16 ( a][ ) g8 f ( ] |
-<{ ) e r f4 ( |
- ) e8 r f4_"dim." ( |
- ) e8 r f4 ( |
- ) e8 r f4 ( |
- [ ) e8 \p }
- {c'8 s d4 ( |
- ) c8 s b4 ( |
- ) c8 s d4 ( |
- ) c8 s b4 ( |
- [ ) c8 }> g,-. a-. b-. ] |
-c r r4 |
-R2*2 |
-a4:16 \p \< \! b4:16 \> |
-\! c2:16 \< |
-\! b2:16 \> |
-\! b2:16 |
-b4:16 \p \< \! c4:16 \> |
-\! b2:16 |
-b4:16 \p \< \! c4:16 \> |
-\! b2:16 |
-\tiny d8*1/2 \normalsize f2 ( \> *7/8 | % grace note c8 f2 % corrected to d8
-\! ) e |
-b-> ( |
-) e4 r |
-a,4:16 \p b4:16 |
-c2:16 \< |
-\! b2:16 \sfz \> |
-\! b2:16 |
-b4:16 \p \< \! c4:16 \> |
-\! b2:16 |
-b4:16 \p \< \! c4:16 \> |
-\! b2:16 |
-\tiny d8*1/2 \normalsize f2 ( \sfz *7/8 | % grace note d8 f2
-) e |
-[ a,16 ( \p d a d ][a d a d] |
-[ b16 d b d ][b d b ) d] |
-f2 ( \> |
-) \! e |
-[ a,16 ( d a d ][a d a d] |
-[ b16 d b d ][b d b ) d] |
-R2 |
-r8 [e16^"solo" ( f] ) e4 ~ |
-d2_"dim." ~ |
-d ~ |
-c4 r |
-r r8 d' ( |
-[ ) a bes () g d' ( ] |
-[ a ) bes g ] r |
-R2 |
-r4 r8 bes ( |
-[) g a () f c' ( ] |
-[) g a () f ] r |
-R2 |
-r4 r8 [c'16 \sfz ( d ] |
-[c d c a][f a c d] |
-[f8 d ) c f, ( ] |
-[f' d ) c ][f,16 ( g] |
-[ ) f8 f16 ( g][ ) f8 f'16 ( g] |
-[f g f d][bes d f g] |
-[bes8 g ) f bes, ( ] |
-[bes' g ) f bes, ( ] |
-[bes' g ) f d,16 ( e! ] |
-[f-> g f e ][ ) d8 d'16 ( e ] |
-[f g f e][ ) d8 d,16 ( e ] |
-[f g f e ][ ) d8 d'16 ( e ] |
-[f g f e][ ) d8 d,16 ( e ] |
-[ ) f8 e16 ( f][ ) g8 f16 ( g ] |
-[as bes as g][ ) f8 g'16 ( a! ] | % misprint sfz to early
-[bes! \sfz c bes a][g a g ) f ] |
-e r r8 r4 |
-<{e,2 \p ~ |
- e4 \< \! f |
- e2 \> |
- \! f |
- e \< |
- e4 \! f |
- e2 ( |
- ) e4 ( f |
- ) g4 \p }
- {g2 ( ~ |
- g4 a |
- bes2 |
- ) a |
- g2 |
- g4 a |
- bes2 (
- ) bes2 (
- ) bes4}> r |
-R2*2 |
-r4 r8 b \p |
-b2:8 \< |
-< \! g4 bes! \sfz > r |
-R2 |
-r4 r8 b \p |
-b2:8 \< |
-< \! g4 bes! \f > r8 a ( |
-<c4._> ) a'> a8 ( |
-<c4._> ) a'> f,8 \p |
-[fis-. g-. a-. bes-.] |
-bes4. a8 ( \f |
-<c4._> ) a'> a8 ( |
-<c4._> ) a'> f,8 \p |
-[fis-. \< g-. a-. \! bes-.] |
-[bes \f c16 ( d][)c8 c, \p ] |
-c4^\trill ( d^\trill |
-e^\trill \tiny [d16*1/2 e*1/2] \normalsize [ f8 *1/2 ) c ] | % grace notes [d16 ( e] )f
-c4^\trill ( d^\trill |
-e^\trill \tiny [d16*1/2 e*1/2] \normalsize [ ) f8 *1/2 a ( \f ] | % grace notes [d16 ( e] )f
-<a4. ) c4.> d8 |
-[d d d bes \f (] |
-<bes4. ) g'4.> bes8 (|
-<bes4. \f ) g'4.> bes8 (|
-<{a r bes4 ( |
- ) a8 r bes4 ( |
- ) a8}
- { ) f' r g4^> ( |
- ) f8 r g4^> ( |
- ) f8}> r b4 ( |
-[ ) bes!8 c16 ( d][ ) c8 bes ( ] |
-<{a r bes4 ( |
- ) a8 r bes4 ( |
- ) a8}
- {) f' r g4 ( |
- ) f8 r g4 ( |
- ) f8}> r b4 ( |
-[ ) bes!8 c16 ( d][ ) c8 bes ( ] |
-<{a r bes4_"dim." ( |
- ) a8 r bes4 ( |
- ) a8}
- {) f' r g4 ( |
- ) f8 r e4 ( |
- ) f8}> r g4 ( |
-) c,8 r e4 \p |
-es2 ( |
-) d4 \< \! des |
-c2 \> ~ |
-\! c |
-a4 ( \< c |
-d \! des |
-c \f \> \! ) bes |
-a ( \> g |
-\! ) a r |
-R2 |
-c8 \p r r4 |
-c8 r r4 |
-R2 |
-r4 r8 c \p ~ |
-c d4 e8 ~ |
-e f4 c8 ~ |
-c d4 e8 ~ |
-e \< e4 \! e8 ( |
-) bes'!4. \sfz \> \! a8 |
-[g-. f-. e-.] r |
-R2 |
-r4 r8 es \p ~ |
-es es4 es8 ~ |
-es \< es4 \! d8 \f |
- d'4.-> <{bes8 ( |
- ) g'4. bes,8 ( |
- ) g'4. bes,8 ( |
- ) g'4. }
- {d,8 |
- bes'4. g8 |
- bes4._> g8 |
- bes4._> }> [c,16 ( d] |
-[c d c a][f a c d] |
-[f8 d ) c ][ c16 ( d ] |
-[c d c a][f a c ) d] |
-[f8 ( d ) c ][f16 ( g ] |
-[f g f d ][ ) b8 bes!16 ( c ] |
-[bes c bes g][ ) e8 < bes' g'^. > ] |
-<{[a bes a bes] |
- [a bes a bes] |
- [a}
- {[f'-. g-. f-. g-.] |
- [f-. g-. f-. g-.] |
- [ f}> c16 ( d ][ ) c8-. c16 ( d ] |
-[ ) c8-. c16 ( d ][ ) c8-. c16 ( d ] |
-) c8-. r <c f,> r |
- <c f,> r <c f,> r |
-<a4 f> r8 c ( |
-<a4 ) a'> r8 c ( |
-<a4 ) f'> r8 c ( |
-<a4 ) a'> r8 c, |
-[a16 ( gis a gis][a gis a gis] |
-[a gis a gis][a gis a gis] |
-<) a4 f' \sfz > r^\fermata
-}
-
-vla=\notes\relative c' {
-\clef "alto";
-
-\property Staff."midi_instrument" = "viola"
-
-[c8. \f ( d16 ] ) c2_"dim." |
-\type Staff <{\voiceone s4 c2 |
- c2. ~ |
- c2. ~ |
- c2. ~ |
- c2. ~ |
- c2. ~ |
- c2. ~ |
- c2. ~ | }
- { \voicetwo [c8. ( d16 ] c4 ) bes |
- [a8 \p ( bes ] a4. ) c8 | % added \p
- [a8 ( bes ] a4. ) c8 |
- [a8 ( bes ] a4. ) c8 |
- [c8 ( bes ] ) a2 |
- [a8 ( bes ] a4. ) c8 |
- [a8 ( bes ] a4. ) c8 |
- [a8 ( bes ] a4. ) c8 |} >
-[c8. ( \< bes16 ] ) \! a2 |
-g2 \mf [a8 \< ( \! d ] |
-[ c \> b \! c g e ) c] |
-[e'8. \pp ( f16 d8 e f d ] |
-b4 [c8 \< a f \! ) a ] |
-c,2 \p ~ c'4 |
-c,2 ~ c'4 |
-c,2 ~ c'4 |
-c, ~ c' r |
-[c,8 ( g' ][ c g c a ] |
-[bes c ] ) a4 r |
-R2. |
-r4 r dis, \< ~ |
-\! e r dis' \pp ~ |
-e r r |
-R2. |
-r4 r c, \pp ~ |
-c2. ~ |
-c4 r r |
-R2.*3 |
-r4 r^\fermata r8^\fermata r8 |
-R2*4 |
-c'8-. \pp r bes-. r |
-c-. r bes-. r |
-R2*2 |
-bes8-. r a-. r |
-bes-. r [a-. c16 ( d ] |
-[ ) c8 c16 ( d ] [ ) c8 c16 ( d ] |
-[ ) c8 c16 ( d ] [ ) c8 c16 () f ] |
-[c ( \f f c f][ c f c ) f ] |
-[d ( f d f][ c f c ) f ] |
-[d ( f d f][ c f c ) f ] |
-[d ( f d f] ) a8 r |
-f,4.-> [a16 ( b] |
-[c d c b] ) a8 r |
-f4. [a16 ( b] |
-[c d c b] ) a8 r |
-<f8 a> r <f a> r |
-<fis a> r <fis a> r |
-[<g \sfz d'> d'16 ( e][f g f e ] |
-[d e d c] ) b8 r |
-[as16 ( \p g as g] [fis g fis ) g ] |
-[f! ( g f g][e g e ) g] |
-d4 \> \! g |
-[c,16 ( g' a g ] [a g a ) g ] |
-[as16 ( \p g as g] [fis g fis ) g ] |
-[f! ( g f g][e g e ) g] |
-[d ( g d g ][d g d g ] |
-[d g d g ] [c, g' c, g' ]
-) d4 r |
-r r8 <c \p g'> |
-<c2:8 g'2:8 > |
-<c2:8 g'2:8 \< > |
-< \! c2:8 \f g'2:8 > |
-<{[c8 c c c \p ]}{[g' g g g]}> |
-<c2:8 g'2:8 > |
-<c2:8 g'2:8 > |
-<c2:8 \f g'2:8 > |
-<{[c8 c c c ] |
- c'4.-> c,8 |
- c'4. }
- {[g8 g g g (] |
- ) g'4. g,8 ( |
- ) g'4. }
- > a'8-. \p |
-[g-. \< f-. e-. \! d-. ] |
-b4. <{c,8 \f |
- c'4.-> c,8 |
- c'4. }
- { g8 ( |
- ) g'4. g,8 ( |
- ) g'4. }> a'8-. \p |
-[g-. \< f-. e-. \! d-. ] |
-b4 r8 <c, \p g'> |
-<c2:8 g'2:8 > |
-<c2:8 g'2:8 \< > |
-< c2:8 g'2:8 > |
-<{[ \! c8 c c cis \f (]}{[g' g g s ]}> |
-) cis'4.-> cis8 |
-[d a d <d ( g,> ] |
-<f4. ) d' \sfz > <d8 ( g,> |
-<f4. ) d' \sfz > g,8 ( |
-[c,16 g' fis ) g] [c, (g' fis ) g ] |
-[c, ( g' fis ) g] [c, (g' fis ) g ] |
-[c, ( g' fis ) g] [c, (a' gis ) a ] |
-[b ( c d ) b ][g ( a f ) d ] |
-[c ( g' fis ) g] [c, (g' fis ) g ] |
-[c, ( g' fis ) g] [c, (g' fis ) g ] |
-[c, ( g' fis ) g] [c, (a' gis ) a ] |
-[b ( c d ) b ][g ( a f ) d ] |
-[c ( g' fis ) g] [c, (g' fis ) g ] |
-[c,_"dim." ( g' fis ) g] [c, (g' fis ) g ] |
-[c, ( g' fis ) g] [c, (g' fis ) g ] |
-[c, ( g' fis ) g] [c, (g' fis ) g ] |
-c,8 \p r r4 |
-r8 [g'-. a-. b-.] |
-c r r4 |
-r8 <{[b c d] | c }{gis-. a-. b!-. | a}>
- r r4 |
-R2*2 |
-g'4 \p ( [fis8 \< dis ] |
-\! e4 fis |
-g \> [fis8 ) \! dis ] |
-e4 \< ( \! fis |
-g \> [fis8 ) \! dis ] |
-<d!2 \sfz e, > ~ |
-<d2 e, > |
-<d b > ~ |
-<d b > |
-c4 r |
-R2*2 |
-g'4 \p ( [fis8 \< dis ] |
-\! e4 fis |
-g \> [fis8 ) \! dis ] |
-e4 \< ( \! fis |
-g \> [fis8 ) \! dis ] |
-<d!2 \f e, > ~ |
-<d e, > |
-d \p ~ |
-d |
-<d a \> > ~ |
-<d \! gis, > |
-d \p ~ |
-d ~ |
-d ~ |
-d_"dim." ~ |
-d4 r |
-r8 [e16 ( f ] e4 |
-) es \pp r |
-R2*3 |
-g,2 ~ |
-g4. r8 |
-R2 |
-r4 r8 [c16 \p ( d ] |
-[ ) c8 c16 ( d ] [ ) c8 c16 ( d ] |
-[ ) c8 c16 ( d ] [ ) c8 c16 ( f ] |
-[c \sfz f c f][ c f c ) f ] |
-[d ( f d f][ c f c ) f ] |
-[d ( f d f] ) c8 r |
-r4 r8 [ f16 () g ] |
-<d2:16 f2:16> |
-<es4:16 g4:16> <d4:16 f4:16> |
-<es4:16 g4:16> <d4:16 f4:16> |
-<g4:16 bes4:16> <f!8 a> r |
-bes,4.-> [d16 ( e ] |
-[f g f e ] ) d8 r |
-bes4.-> [d16 ( e ] |
-[f g f e ] ) d8 r |
-<bes d> r <bes d> r |
-<b d> r <b d> r |
-[<c \sfz e^. > g'16 ( a ] [bes! \> c \! bes a ] |
-[g a g f ] ) e r r8 |
-[des16 ( \p c des c ] [ b c b c ] |
-[bes! \< c bes c ] [ \! a c a ) c ] |
-g4 \> \! c, ( |
-[f16 c' d c][d c d ) c] |
-[des16 ( \p c des c ] [ b c b c ] |
-[bes! \< c bes c ] [ \! a c a ) c ] |
-[g \> ( c g c][g c g \! c ] |
-[g c g c][f, c' f, ) c'] |
-e,4 \p r |
-r r8 <f \p c'> |
-<f2:8 c'2:8> |
-<f2:8 \< c'2:8> |
-<f2:8 \! c'2:8> |
-<{[f8 \f f f f \p ]}{[c'8 c c c]}> |
-<f2:8 \< c'2:8> |
-<f2:8 \! c'2:8> |
-<f2:8 \f c'2:8> |
-<{[f8 f f f] |
- f'4._> f,8 |
- f'4._> }
- {[c8 c c c ( ] |
- ) c'4. c,8 ( |
- ) c'4. }> d'8 \p |
-[c-. \< bes-. a-. \! g-. ] |
-<{c,4. f,8 \f |
- f'4._> f,8 |
- f'4. }
- {e4. c8 ( |
- ) c'4. c,8 ( |
- ) c'4. }> d'8 |
-[c-. \< bes-. a-. \! g-. ] |
-<e4 c> r8 <f, \p c'> |
-<f2:8 c'2:8> |
-<f2:8 \< c'2:8> |
-<f2:8 \! c'2:8> |
-<{[f8 f f fis \f ~ ]}{[c'8 c c s]}> |
-<a4. fis'4.> fis'8 |
-[g d g <g, ( c,> ] |
-<c4. \sfz ) g'> <g8 ( c,> |
-<c4. \sfz ) g'> c,8 ( |
-[f16 c' b ) c ][ f, ( c' b ) c ] |
-[ f, ( c' b ) c ] [ f, ( c' b ) c ] |
-[ f, ( c' b ) c ] [ f, ( d' cis ) d ] |
-[e ( f g ) e ][c ( d bes ) g] |
-[ f ( c' b ) c ] [ f, ( c' b ) c ] |
-[ f, ( c' b ) c ] [ f, ( c' b ) c ] |
-[ f, ( c' b ) c ] [ f, ( d' cis ) d ] |
-[e ( f g ) e ][c ( d bes ) g] |
-[ f ( c' b ) c ] [ f, ( c' b ) c ] |
-[ f,_"dim." ( c' b ) c ] [ f, ( c' b ) c ] |
-[ f, ( c' b ) c ] [ f, ( c' b ) c ] |
-[ f, ( c' b ) c ] [ f, ( c' b ) c ] |
-f,2 \p ~ |
-f4 r |
-R2*2 |
-f'2 ( ~ |
-f |
-f4 \f g |
-) f [f8. ( \> g16 ] |
-\! f2 |
-) c |
-a8 \p r r4 |
-g8 r r a \pp ~ |
-a as4 g8 ~ |
-g f4 a!8 ~ |
-a as4 g8 ~ |
-g f4 e8 ~ |
-e \< f4 e8 ~ |
-\! e d4 c8 ( |
-<g'4. \sfz ) e'> f8 |
-[g-. a-. bes-. a ~ ] |
-a as4 g8 ~ |
-g f4 a!8 ~ |
-a \< as4 \! g8 ~ |
-g f4 \f f8 ( |
-<bes4._> ) f' > g8 ( |
-<d'4._> ) bes' > e,!8 ( |
-<c'4._> ) g' > <g8 ( c, > |
-<c4._> ) g' > c,8 ~ |
-f4. a8 ( |
-[d f ) a ] c,,8 ~ |
-f4. a8 ( |
-[d f ) a ] [f16 ( g ] |
-[f g f d ][ ) b8 bes'!16 ( c ] |
-[bes c bes g][ ) e8 c'16 ( d ] |
-[) c8-. c16 ( d ][) c8-. c16 ( d ] |
-[) c8-. c16 ( d ][) c8-. c16 ( d ] |
-[) c8-. c,16 ( d ][) c8-. c16 ( d ] |
-[) c8-. c16 ( d ][) c8-. c16 ( d ] |
-) c8-. r c-. r |
-a r c-. r |
-<c4 a'> r8 c ( |
-<f4 ) c'> r8 c, ( |
-<c'4 ) a'> r8 c ( |
-<f4 ) c'> r8 c, |
-[c'16 ( b c b][c b c b] |
-[c b c b][c b c b] |
-<c4 \sfz ) a'> r^\fermata
-}
-
-vlc=\notes\relative c' {
-\clef "bass";
-
-\property Staff."midi_instrument" = "cello"
-
-r4 r [bes8. \mf ( c16] |
-) bes4 r bes \p ( |
-[ a8 bes ) a f, ( c' f] |
-[ a8 bes ) a f, ( c' f] |
-[ a8 bes ) a f, ( c' f] |
-[c' bes ) a f, ( c' f] |
-[ a8 bes ) a f, ( c' f] |
-[ a8 bes ) a f, ( c' f] |
-[ a8 bes ) a f, \< ( c' f] |
-[c' bes a f \! c ) f, ] |
-<{g2. ( | ) g2 }
- {c,2. \mf ( | ) c2 \> ( ) \! c'4 |}
- {s2. \< \! s8}>
-a2 \pp d4 \< ( |
-e ) \! a2 |
-[bes8 \p ( c] [a c a c] |
-[bes8 c] [a c a c] |
-[bes8 c] [a c a ) c] |
-[c ( bes a f c ) f, ] |
-e2 (\< \! f4 |
-g \> ) \! f r |
-e'2 ( f4 |
-g ) f f, ( \< | % added slur
-) \! e2 f'4 ( |
-) e2 dis4 ( \< |
-\! ) e2 dis4 ( \pp |
-) e2. ~ |
-e2 r4 |
-R2.*4 |
-r4 r4^\fermata r8^\fermata [c'16 \pp ( d] | \time 2/4; % \pp added
-) c8 r r [c16 ( d] |
-) c8 r r [c16 ( d] |
-[c d c a][f a c d] |
-[f8 d ) c] r |
-d,-. \pp r g-. r |
-d-. r [g-. d'16 ( es] |
-[d es d bes][g bes d es] |
-[g8 es ) d] r |
-c,-. r f-. r |
-c-. r [f-. c'-. ] |
-[bes-. a-. g-. f-.] |
-[e d][c a'16 \f ( f] |
-[a f a f][a f a ) f] | % Misprint trem 8
-[bes ( f bes f][a f a ) f] |
-[bes ( f bes f][a f a ) f] |
-[a ( d, a' d,][)a8 a'16 ( b] |
-[c d c b ][) a8 f ( ] |
-) e4. [a16 ( b] |
-[c d c b ][) a8 f ( ] |
-) e4. [a,16 ( b ] |
-[)c8 b16 ( c][)d8 c16 ( d] |
-[es f es d] ) c8 r |
-[g \sfz d''16 ( e] [f g f e] |
-[d e d c][b c b ) a] |
-[as \p ( g as g][fis g fis g ] |
-[f! \< g f g][e g e ) \! g] |
-[d \> ( g d g] [d g d ) \! g] |
-c,2 |
-[as'16 ( g as g][fis g fis g ] |
-[f! g f g][e g e ) g] |
-[d ( g d g] [d g d g] |
-d4 c \p |
-) b r |
-R2*2 |
-r4 r8 c'8 \f ( | % Misprint, missing slur
-) c,4. c8 ( |
-) c,4. r8 |
-R2 |
-r4 r8 c''8 \f (|
-) c,4. c8 ( |
-) c,4. c''8 ( |
-< ) g4. c,_> > c8 ( |
-< ) g4. c,> c,8 |
-[cis-. \p \< d-. e-. \! f-. ] |
-g,4. c8 \f ( |
-< ) c4. f,_> > c8 ( | % slur added
-< ) c4. f,> c8-> |
-[cis-. \p \< d-. e-. \! f-. ] |
-g,4 r8 <{ c8 \p |
- c2:8 |
- c2:8 \< |
- \! c2:8 |
- [c8 c s s] |
- a4.}
- {g'8 |
- g2:8 |
- g2:8 |
- g2:8 |
- [g8 g c cis] |
- e,4.-> }> a8 |
-[d-. e-. f-. b ( ] |
-) b,4. \f b'8 ( |
-< ) d,4. \f g,> g8 ( |
-[)c,16 g' (fis) g][c,( g' fis ) g] |
-[c, ( g' fis ) g][c, ( g' fis ) g] |
-[c, ( g' fis ) g][c, ( a' gis ) a] |
-[b ( c d ) b][g ( a f )d ] |
-[c ( g' fis ) g][c, ( g' fis ) g] |
-[c, ( g' fis ) g][c, ( g' fis ) g] |
-[e ( g fis ) g][c, ( a' gis ) a] |
-[b ( c d ) b][g ( a f )d ] |
-[c ( g' fis ) g][c, ( g' fis ) g] |
-[c, ( g' fis ) g][c, ( g' fis ) g] |
-c,4_"dim." r |
-c4 r |
-c8 r8 r4 |
-R2 |
-r8 [c-.^"solo" \p d-. dis-. ] |
-e r e, r |
-c'4:16 \p d4:16 |
-e4:16 \< \! fis4:16 |
-g!2:16 \> |
-g4:16 \! a4:16 |
-g4:16 \< \! a4:16 |
-g4:16 \> \! a4:16 |
-g4:16 \< \! a4:16 |
-g4:16 \> \! a4:16 |
-gis2 \sfz ~ |
-gis |
-f! ( |
-[e8 d c ) b ] |
-c4:16 \p d4:16 |
-e4:16 \< \! fis4:16 |
-g!2:16 \> |
-\! g4:16 \p \< \! a4:16 |
-g4:16 \> \! a4:16 |
-g4:16 \< \! a4:16 |
-g4:16 \> a4:16 |
-g4:16 \! a4:16 |
-gis2 \sfz ~ |
-gis ~ |
-f \p \> |
-\! e_"dim." |
-d |
-e |
-f |
-e |
-[f16 ( g f g][f g f8 ] |
-) e4 r |
-[f16 ( g f_"dim." g][f g f8 ] |
-) e4 r |
-[c'16 ( d c a][f a c ) d] |
-[f8 ( d ) c] r |
-fis,8-. r g-. r |
-d r [g d'16 ( es] |
-[d es d bes][g bes d es] |
-[g8 es ) d] r |
-c, r f-. r |
-c r [f-. c'-. ] |
-[bes-. a-. g-. f-.] |
-[e d][c a'16 \f ( f] |
-[a f a f][a f a ) f] | % Misprint trem 8
-[bes ( f bes f][a f a ) f] |
-[bes ( f bes f][) a8 f-.] |
-[e-. es-. d-. c-. ] |
-[bes16 ( f' bes f][bes f bes ) f] |
-[bes, ( a bes a][bes d f ) bes ] |
-[bes, ( a bes a][bes d f ) bes ] |
-g4 ( [ ) d8 d'16 ( e] |
-[f g f ) e] [d8 bes^._> ] |
-a4. [d16 ( e] |
-[f g f ) e] [d8 bes ( ] |
-) a4. [d,16 ( e ] |
-[) f8-. e16 ( f] [) g8-. f16 ( g] |
-[)as ( bes as g ] ) f8 r |
-c \sfz r r [e'16 ( f ] |
-[g a_"dim." g f][e f e ) d] |
-[des \p \< ( c des c][b c b \! ) c ] |
-[bes! ( c bes c][a c a ) c ] |
-[g ( c g c][g c g ) c] | % misprint a c a c a c a c, comp. bar 59
-f,2 |
-[des'16 \p ( c des c][b c b ) c ] |
-[bes! ( c bes c][a c a ) c ] |
-[g ( c g c][g c g c] | % misprint a c a c a c a c, comp. bar 64
-g4 f |
-) e r |
-R2*2 |
-r4 r8 f' \f (|
-) f,4.-> f8 ( |
-) f,4.-> r8 |
-R2 |
-r4 r8 f'' (|
-) f,4.-> f8 ( |
-) f,4.-> f'8 (|
-<) c4. f, > f8 ( |
-<) c4. f,> f8 \p |
-[fis-. \< g-. a-. \! bes-. ] |
-c,4. f8 \f ( |
-<) f4. bes,_> > f8 (|
-<) f4. bes,> f8 |
-[fis-. \< g-. a-. \! bes-. ] |
-c,4 r8 <{ f8 \p |
- f2:8 \< |
- f2:8 |
- \! f2:8 | }
- {c'8 |
- c2:8 |
- c2:8 |
- c2:8 |}>
- [c'8 c f fis ( \f ] |
- < ) a,4. d,_> > d,8 |
-[g-. a-. bes-. e! ( ] |
-) e,4.-> e'8 |
-< g,4. c,_> > c8 |
-[f,16 ( c' b c][f,16 c' b ) c] |
-[f,16 ( c' b c][f,16 c' b ) c] |
-[f,16 ( c' b ) c][f, ( d' cis ) d] |
-[e ( f g ) e][c ( d bes ) g] |
-[f16 ( c' b ) c][f,16 ( c' b ) c] |
-[f,16 ( c' b ) c][f,16 ( c' b ) c] |
-[f,16 ( c' b ) c][f, ( d' cis ) d] |
-[e ( f g ) e][c ( d bes ) g] |
-[f16 ( c' b ) c][f,16 ( c' b ) c] |
-[f,16 ( c' b ) c][f,16 ( c' b ) c] |
-f,8 r e'4 ( |
-) f8 r bes,4 ( |
-) a2 ( |
-) bes |
-a4 \< ( \! bes |
-a \> ) \! g |
-a2 ( \< |
-) \! bes |
-f4 \f \> ( cis |
-d \! g, |
-) c!8 r r4 |
-R2 |
-c8 r r4 |
-c8 r r4 |
-<c8 \pp f,> r <c f,> r |
-<c f,> r <c f,> r |
-<c f,> r <c f,> r |
-<c f,> r <c f,> r |
-e, r e r |
-e r [e () c] |
-c'4. \f \> \! d8 |
-[e-._"dim." f-. g-.] r |
-<c,8 \p f,> r <c f,> r |
-<c f,> r <c f,> r |
-<c f,> r <c f,> r |
-<c f,> r <c f,> bes' \f |
-bes,4.-> g'8 ( |
-) g,4.-> e'!8 ( |
-) e,!4.-> c'8 ( |
-) c,4.-> [c''16 ( d ] |
-[c d c a][f a c d] |
-[f8 d ][) c c16 ( d]
-[c d c a][f a c d] |
-[f8 d ][) c d, ( ] |
-) g,4.-> g'8 ( |
-) c,4.-> c'8 ( |
-[ ) f, c-. f-. c-. ] |
-[f-. c-. f-. c-. ] |
-f r c r |
-f r c' r |
-f, r c r |
-a r c r |
-f4 r8 c8 ( |
-) f4 r8 c8 ( |
-) f,4 r8 c'8 ( |
-) f4 r8 c8 ( |
-) f,2 ~ |
-f ( |
-) f'4 \sfz r^\fermata
-}
-
-cb=\notes\relative c {
-\clef "bass";
-
-\property Staff."midi_instrument" = "contrabass"
-
-r4 r c-> \mf ~ |
-c r c \p ( |
-) f,2. ~ |
-f ~ |
-f2 f'4 ( |
-c ) f r |
-f,2. ~ |
-f ~ |
-f ~ |
-f2 r4 |
-c'2. ~ |
-c |
-a2 d4 ( |
-e a ) e |
-c2. \p ~ |
-c ~ |
-c ~ |
-c4 () f r |
-e2 f4 ( |
-g ) f r |
-R2. |
-r4 r f ( \< |
-\! ) e2 r4 |
-r r dis ( \< |
-\! ) e2 r4 |
-R2.*6 |
-r4 r^\fermata r8^\fermata r |
-R2*4 |
-d8-. \pp r g-. r |
-d-. r g-. r |
-R2*2 |
-c,8-. r f-. r |
-c-. r f-. r |
-R2 |
-r4 r8 f8 \f ~ |
-f2 |
-f |
-f |
-d4 () a8 r |
-f4.-> f'8 ( |
-) e4. r8 |
-f,4.-> f'8 ( |
-) e4. r8 |
-f,8 r f' r |
-fis r fis r |
-g \sfz r r4 |
-R2*3 |
-r4 g, ( |
-) c r |
-R2*8 |
-c'4_"pizz." \f r |
-c, r |
-R2*2 |
-c'4_"pizz." r |
-c, r8 c'8_"arco?" ( |
-) c,4.-> c'8 ( |
-) c,4. f8-. |
-[f-. \p \< f-. f-. \! f-.] |
-g4. c,8 ( |
-) f,4.-> c'8 ( |
-) f,4.-> f'8 |
-[f-. \p \< f-. f-. \! f-.] |
-g4 r8 c, \p |
-c2:8 \< |
-c2:8 |
-c'2:8 |
-\! c4.:8 cis8 \f ( |
-) a,4. a8 |
-[d e f b ( ] |
-) b,4. \f b'8 ( |
-) g,4. \f g'8-> |
-c,4 c-> ~ |
-c c-> ~ |
-c c-> ~ |
-c r |
-c c ~ |
-c c ~ |
-c c ~ |
-c r |
-c r |
-c r |
-c_"dim." r | % dim. added
-c r |
-c8 r r4 |
-R2 |
-r8 [c-.^"solo" \p d-. dis-.] |
-e r e, r |
-a2 \p |
-a \< ( |
-\! e' \> |
-\! ) e4 r |
-e2 \< ~ |
-\! e4 \> \! r |
-e2 \< ~ |
-\! e4 \> \! r |
-e2 \sfz ~ |
-e |
-f! ( |
-[e8 d c ) b]
-a2 \p ~ |
-a |
-e' \sfz \> ~ |
-\! e4 r |
-e2 \> ~ |
-\! e4 r |
-e2 \> ~ |
-\! e4 r |
-e2 \sfz ~ |
-e ~ |
-f \p ~ |
-e |
-d \> ( |
-e |
-\! f \p |
-) e4 r |
-R2*6 |
-fis8-. r g-. r |
-d-. r g-. r |
-R2*2 |
-c,8-. r f-. r |
-c-. r f-. r |
-R2 |
-r4 r8 f \f ~ |
-f2 |
-f |
-f,4. f'8 |
-[e8-. es-. d-. c-. ] |
-bes2 |
-bes |
-bes |
-g'4 () d8 r |
-bes4. bes'8 ( |
-) a4. r8 |
-bes,4. bes'8 ( |
-) a4. r8 |
-bes, r bes' r |
-b r b, r |
-c \sfz r r4 |
-R2*3 |
-r4 c ( |
-) f r |
-R2*8 |
-f4_"pizz." r |
-f, r |
-R2*2 |
-f'4 r |
-f, r |
-f'4._"arco" r8 |
-f4. bes,8 \p |
-bes2:8 \< |
-\! c4. f8 \f ( |
-) bes,4.-> <f'8 \p bes ( > |
-) bes,4. bes'8 |
-c2: \< |
-\! c4 r8 f, \p |
-f2:8 \< |
-f2:8 |
-\! f2:8 |
-f4.:8 fis8 \f ( |
-) d4.-> d8 |
-[g-. a-. bes-. e ( ] |
-) e,4.-> e'8 |
-c,4.-> c'8 ( |
-) f,4 f~ |
-f f~ |
-f f~ |
-f r |
-f, f ~ |
-f f ~ |
-f f' ~ |
-f r |
-f r |
-f_"dim." r |
-f r |
-f r |
-f2 \p \< ~ |
-f ~ |
-\! f \> ~ |
-\! f |
-f, \< ~ |
-\! f |
-f'4 ( \f \> cis |
-\! d g, |
-) c! r |
-R2 |
-c8 \p r r4 |
-c8 r r4 |
-f8 \pp r f r |
-f r f r |
-f r f r |
-f r f r |
-e r e r |
-e r e r |
-c4. \f \> d8 |
-[e-. f-. \! g-.] r |
-f \p r f r |
-f r f r |
-f r f r |
-f r f r |
-bes4.-> r8 |
-g4.-> r8 |
-e!4.-> r8 |
-c4. c8 ( |
-) f2 ( |
-) f,4. c'8 |
-f2 ( |
-) f,4. d'8 ( |
-) g,4.-> g'8 ( |
-) c,4.-> c'8 ( |
-[ ) f, c-. f-. c-. ] |
-[ f-. c-. f-. c-. ] |
-f r c r |
-f r c' r |
-f, r c r |
-a r c r |
-f4 r8 c8 ( |
-) f4 r8 c8 ( |
-) f,4 r8 c'8 ( |
-) f4 r8 c8 ( |
-) f,2 ~ |
-f ( |
-) f'4 \sfz r^\fermata
-}
\ No newline at end of file
+++ /dev/null
-\version "1.0.14";
-
-oboe=\notes\relative c'' {
-\clef "treble";
-\property Staff."midi_instrument" = "oboe"
-
-[c8. \f ( d16] ) c2_"dim." |
-[c8. ( d16] ) c2 |
-[c8. \p ( d16] c4. a8 |
-[f8. e16 ] f4. ) a8 |
-[c8. ( d16] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-[c'8. \p ( d16] c4. a8 |
-[f8. e16 ] f4. ) a8 |
-[c8. ( d16] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-R2.*4 |
-[c'8. ( d16] c4. a8 |
-[g8. a16 ] f4. ) a8 |
-[c8. ( d16] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-R2.*13 |
-r4 r4^\fermata r8^\fermata r8 \time 2/4;
-R2*4 |
-d'8-. \pp r d-. r |
-d-. r d-. r |
-R2*2 |
-c8-. r c-. r |
-c8-. r c-. \p [c16 ( d]|
-) c8 r \< r [c16 ( \! d]|
-) c8 r r [c16 \f ( d]|
-) c8 r r f, ( |
-) f'4. f,8 ( |
-) f'4. a,8 ( |
-) a'4. r8 |
-dis,2 ( |
-) e4. r8 |
-dis2 ( |
-) e4. r8 |
-a r a r |
-a r d, r |
-g r r4 |
-R2*10 |
-r4 r8 [g16 \p ( a ] |
-[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] |
-[ ) f8-. e16 ( f ][ ) e8-. es16 ( f ] |
-[ ) es8 \f c16 ( d][es8 d16 c ] |
-) d4 r8 [g16 \p ( a ] |
-[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] |
-[ ) f8-. \< e16 ( f ][ ) e8-. \! es16 ( f ] |
-[ ) es8 \f c16 ( d][es8 d16 c ] |
-) d4 r8 bes! ( |
-) bes'4.-> bes,8 ( |
-) bes'4.-> a8 \p |
-[g-. \< f-. e-. \! d-. ] |
-[cis16 ( e d ) b] g8 bes! \f ( |
-) bes'4.-> bes,8 ( |
-) bes'4.-> a8 \p | % \p added
-[g-. \< f-. e-. \! d-. ] |
-g-. r r [g16 \p ( a] |
-[ ) g8-. fis16 ( g ][ ) fis8-. f16 ( g ] |
-[ ) f8-. e16 ( f ][ ) e8-. e16 ( f ] |
-[ ) e8-. es16 ( f ][ ) es8-. d16 ( e ] |
-[ ) d8-. c16 ( d ] ) c8 bes! \f ( |
-) bes'4. r8 |
-R2 |
-d,4. \sfz r8 |
-d4. \sfz r8 |
-e8 r g4-> ( |
-) e8 r g4-> ( |
-) e8 r es4 ( |
-) d8 r r g ( |
-) e!8 r g4-> ( |
-) e8 r g4-> ( |
-) e8 r es4 ( |
-) d8 r r g ( |
-) e!8_"dim." r g4 ( |
-) e8 r r4 |
-R2*2 |
-r8 [g,-.^""^"solo" \p a-. b-. ] |
-c r r4 |
-R2*10 |
-\tiny d8 \sfz *1/2 \normalsize f2 \> ( *7/8 |
-\! b,4 [c8 b] |
-a2-> |
-) gis |
-a4 ( \p \< ) e' |
-e-. () \! e-. |
-e ( \> [ d8 \! c ] |
-) b2 \p |
-\tiny e8*1/2 \normalsize g4 ( \> *3/4 dis | % grace note e8() g4
-\! e ) b |
-\tiny e8*1/2 \normalsize g4 ( \> *3/4 dis | % grace note e8() g4
-\! e_"dim." ) b |
-\tiny d!8 \sfz *1/2 \normalsize f2 ( \> *7/8 |
-b,4 [ \! c8 b] |
-a2 \p |
-) gis |
-\tiny a8*1/2 \normalsize d2( \> *7/8 | % grace note a8 () d2
-\! b4 [ c8 b ] |
-a2 \p |
-) gis |
-R2*11 |
-r4 r8 [c16 \p ( d ] |
-) c8 r r [c16_"cresc." ( d ] |
-) c8 r r [c16 \f ( d ] |
-) c8 r r f, ( |
-) f'4. f,8 ( |
-) f'4. a,8 |
-[bes-. c-. d-. es-. ] |
-d4 r8 bes ( |
-) bes'4 r8 bes, ( | % slur added
-) bes'4 r8 d, ( |
-[ d' bes ) a ] d ( |
-) gis,2 ( |
-) a4 r8 d ( |
-) gis,2 ( |
-) a4 r8 d ( |
-) as r g r |
-f r f r |
-e r r4 |
-R2*10 |
-r4 r8 a |
-a-. [ gis-. gis-. \< g-.] |
-[g-. fis-. \! fis-. f-. ] |
-[f f16 ( \f g][as8 g16 f ] |
-) g8 [c16 ( d] ) c8 a \p |
-[a-. gis-. gis-. \< g-.] |
-[g-. fis-. \! fis-. f-. ] |
-[f f16 ( \f g][as8 g16 f ] |
-) g8 [c16 ( d] ) c8 r |
-es,4.-> r8 |
-es4.-> r8 |
-r4 r8 d ( |
-) c4. r8 |
-es4.-> r8 |
-es4.-> r8 |
-r4 r8 d8 ( |
-) bes4 r8 a' \p |
-[a-. gis-. gis-. \< g-.] |
-[ \! g-. f-. f-. ] c |
-[c-. \< b-. b-. bes-. ] |
-[bes-. a-. \! a-. es' ( ] |
-) a4. \f r8 |
-r4 r8 bes, ( |
-) g'4. \sfz c,8 ( |
-) g'4. \sfz c,8 ( |
-) a' r c4-> ( |
-) a8 r c4-> ( |
-) a8 r as4 ( |
-) g8 r r c ( |
-) a! r c4 ( |
-) a8 r c4 ( |
-) a8 r as4 ( |
-) g8 r r c ( |
-) a! r c4_"dim." ( |
-) a8 r g4 ( |
-) f8 r r4 |
-R2*7 |
-\tiny f8 \f *1/2 \normalsize a4 \> ( *3/4 e | % grace note f8 a4
-f \! b, |
-) c r |
-R2*7 |
-e8-. \p r d-. \< r |
-c-. r b-. \! r |
-bes!4. \f r8 |
-R2 |
-c8-. \p r b-. r |
-bes!-. r a-. r |
-c-. \p r b-. r |
-bes!-. r a-. bes \f ( |
-) bes'4. bes,8 ( |
-) bes'4. bes,8 ( |
-) bes'4. bes,8 ( |
-) bes'4. c,8 ( |
-) a'4 r8 f ( |
-bes4 ) a8 c, ( |
-) a'4 r8 f ( |
-bes4 ) a8 f ( |
-) b4. e,8 ( |
-) bes'!4. bes8 |
-[a-. bes-. a-. bes-. ] |
-[a-. bes-. a-. bes-. ] |
-a-. r c-. r |
-a-. r e-. r |
-f-. r a-. r |
-c r a r |
-f4 r8 c ( |
-) a'4 r8 c, ( |
-) f4 r8 c ( |
-) a'4 r8 c, ( |
-) f4 r |
-R2 |
-f4-. \sfz r^\fermata
-}
-
-
-flauto=\notes\relative c''' {
-\clef "treble";
-\property Staff."midi_instrument" = "flute"
-
-[c8. \f ( d16] c2 |
-)c,8 r r4 r |
-R2.*4 |
-[c8. \p ( d16] c4. ) a8 |
-[f8. ( e16 ] f4. ) a8 |
-[c8. ( d16] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-R2.*4 |
-[c'8. ( d16] c4. ) a8 |
-[g8. ( a16 ] f4. ) a8 |
-[c8. ( d16] c4. ) a8 |
-[a8. ( g16 ] ) f4 r |
-R2.*13 |
-r4 r4^\fermata r8^\fermata r8 \time 2/4;
-R2*4 |
-a'8-. \pp r g-. r |
-a8-. r g-. r |
-R2*2 |
-g8-. r f-. r |
-g8-. r f-. r |
-R2 |
-r4 r8 [c'16 \f ( d] |
-[c d c a][f a c d] |
-[f8 d ) c] f, ( |
-[f'8 d ) c] a ( |
-[a'8 f ) e] a ( |
-dis,2 |
-) e4 r8 a8 ( |
-dis,2 |
-) e4 r8 a ( |
-) es r d r |
-c r d r |
-g, r r4 |
-R2*10 |
-R4 r8 e' \p |
-e [es-. es-.] d-. |
-d-. [cis-. cis-.] c-. |
-c [c16 ( d] [es8 d16 c] | % slur added
-) d4 r8 e!-. \p |
-e-. [es-. es-.] d-. |
-d-. [cis-. cis-.] c |
-c-. [c16 ( d][es8 d16 c] |
-) d4 r8 e,! ( |
-)e'4.-> e,8 ( |
-)e'4.-> a8 \p |
-[g-. f-. e-. d-.] |
-[cis16 ( \< e d \! b ] ) g8 e \f ( |
-)e'4.-> e,8 ( |
-)e'4.-> a8 \p |
-[g-. \< f-. e-. \! d-.] |
-g r r e-. \p |
-e-. [es-. \< es-.] d-. |
-d-. [c-. \! c-.] g-. |
-g-. [fis-. \< fis-.] f-. |
-f-. [e-. \! e-.] bes \f ( |
-) bes'4.-> a8-. |
-[f'-. e-. d-.] f, ( |
-) f'4. \sfz g,8 ( |
-) g'4. \sfz g,8 ( |
-) e' r g4-> ( |
-) e8 r g4-> ( |
-) e8 r es4-> ( |
-) d8 r r g, ( |
-) e' r g4 ( |
-) e8 r g4 ( |
-) e8 r es4-> ( |
-) d8 r r g, ( |
-) e' r g4 ( |
-) e8 r d4 ( |
-) e8 r r4 |
-R2*27 |
-d2 ( \p |
-) gis, |
-R2*2 |
-d'2 ( \p |
-) gis, |
-a ( |
-) gis |
-a_"dim." ( |
-) gis ( |
-) a ( |
-bes!4 ) a8 r |
-a r bes r |
-fis r g r |
-bes2 ( |
-c4 ) bes8 r |
-bes r a r |
-e! r f r |
-R2 |
-r4 r8 [c'16 \f ( d] | % \f added
-[c d c a][f a c d] |
-[f8 d ) c] f, ( |
-[f'8 d ) c] f,-. |
-[g-. a-. bes-. a-. ] |
-bes4 r8 bes,8 ( |
-[bes' g ) f] bes,8 ( |
-[bes' g ) f] bes,8 ( |
-[d' g ) f! ] d ( |
-gis,2 |
-) a4. d8 ( |
-gis,2 |
-) a4. d,8 ( |
-) d' r d-. r |
-d-. r d-. r |
-c r r4 |
-R2*10 |
-r4 r8 [c16^""^"solo" \p ( d] |
-) c8-. [b16 ( c ] ) b8-. [bes16 \< ( c ] |
-)bes8-. [a16 ( \! bes ] ) a8-. [as16 ( bes ] |
-) as8-. \f [f16 ( g][as8 g16 f ] |
-) g4 r8 [c16 ( d] |
-) c8-. [b16 ( c ] ) b8-. [bes16 \< ( c ] |
-)bes8-. [a16 ( \! bes ] ) a8-. [as16 bes ] |
-as8 \f [f16 ( g][as8 g16 f ] |
-) g4 r8 es ( |
-)es'4.-> es,8 ( |
-)es'4.-> d8 \p |
-[c8-. \< bes-. a \! g ] |
-[fis16 ( a g e! ] ) c8 es ( \f |
-) es'4.-> es,8 ( |
-) es'4.-> d8 \p |
-[c8-. \< bes-. a \! g ] |
-c r r a'-. \p |
-a-. [gis-. \< gis-.] \! g-. |
-g-. [f-. f-.] c-. |
-c-. [b-. \< b-.] bes-. |
-bes-. [a-. \! a-.] a( \f |
-) es'4.-> d8 |
-[bes-. a-. g-.] bes, ( |
-) d'4. \sfz c,8 ( |
-) c'4. \sfz c,8 ( |
-) a' r c4-> ( |
-) a8 r c4-> ( |
-) a8 r as4-> ( |
-) g8 r r c ( |
-) a! r c4 ( |
-) a8 r c4 ( |
-) a8 r as4-> ( |
-) g8 r r c, ( |
-) a'! r c4_"dim." ( |
-) a8 r g4 ( |
-) f8 r c4 ( |
-) a8 r r4 |
-R2*19 |
-r4 r8 [c'16 \p ( d] |
-) c8-. [b16 ( c ] ) b8-. [bes16 ( c ] |
-)bes8-. [a16 ( bes ] ) a8-. [c16 ( d] |
-) c8-. [b16 ( c ] ) b8-. [bes16 \< ( c ] |
-)bes8-. [a16 ( \! bes ] ) a8-. bes ( \f |
-) bes,4. d8 ( |
-) d'4. c8 ( |
-) c,4. e!8 ( |
-) e'4. c8 ( |
-) a'4 r |
-[f8 ( d ) c ] c ( |
-) a'4 r |
-[f8 ( d ) c ] f, ( |
-) f'4. e,8 |
-e'4. e8 |
-[f-. e-. f-. e-.] |
-[f-. e-. f-. e-.] |
-f r e r |
-f r e r |
-f r a, r |
-c r a r |
-f4 r8 c' ( |
-) a4 r8 c ( |
-) f4 r8 c ( |
-) a4 r8 c ( |
-) f4 r |
-R2 |
-f4 \sfz r^\fermata
-
-}
-
-clarI=\notes\relative c'' {
-\key G;
-\clef "treble";
-\property Staff."midi_instrument" = "clarinet"
-
-[d8. \fp ( e16 ] ) d2 |
-[d8._"dim." ( e16 ] ) d2 |
-R2.*8 |
-[d8. \mf ( \< e16 ][ cis8 d ] \! g4 |
-[fis8. \> e16 ] \! d4 ) a |
-b2. \pp \< ( |
-\! ais4 ) b2 |
-a4 \p ( [g8. a16 ] g4 |
-fis ) g8 r r4 |
-a4 ( [g8. a16 ] g4 |
-fis ) g8 r [d^""^"solo" \mf \< () \! b' ] |
-\tiny a8*1/2 \normalsize d2 ( \> *7/8 [b8. \! g16] | % grace note a8 d2
-) d2 r4 |
-R2. |
-r4 r \times 2/3 { [b'8^""^"solo" ( \ff d, ) d' ] } |
-d4-> () b r |
-r r \times 2/3 { [d8 ( b ) d ] } |
-a4 () d r |
-R2.*6 |
-r4 r4^\fermata r8^\fermata r8 |
-R2*4 |
-gis,8-. \pp r a-. r |
-gis-. r a-. r |
-R2*2 |
-fis!8 r g r |
-fis r g d'-. \p |
-[c-. b-. \< a-. g-. ] | % crescendo added
-[ \! fis-. e-. d-. ] [d'16 \f ( e ] | % \f added
-[d e d b][g b d e] |
-[g8 e ) d ] g, ( |
-[g' e ) d ] b ( |
-[b' g ) fis] b |
-f2 ~ |
-fis!4 r8 b ( |
-) f2 ~ |
-fis!4 r8 b |
-f r e r |
-d r d r |
-cis r r4 |
-R2 |
-g4 \p ( a |
-b2 \< ~ |
-b4 [a8 \! g'] |
-[fis \> d b \! ) a] |
-g4 \p ( a |
-b2 ~ |
-b4 a |
-b2 ~ |
-[b8_"dim." a g ) e ] |
-<{[cis ( a ) b a-. ] | } % grace note cis\8 b
- \type Voice = x {s8.. \tiny cis8 } >
-[fis''-. f-. f-. e-. ] |
-[e-. \< dis-. dis-. \! d-. ] |
-d r b4 \f ~ |
-cis8 [a'16-> ( b] ) a8 fis-. \p | % \p added
-[fis-. f-. f-. e-. ] |
-[e-. dis-. dis-. d-. ] |
-d r b4 \f ~ |
-cis8 [a'16-> ( b] ) a8 r |
-d,4. r8 |
-d4.-> r8 |
-R2*2 |
-d4. \f r8 |
-d4. r8 |
-R2 |
-cis4.-> fis8-. \p | % \p added
-[fis-. \< f-. f-. e-. ] |
-[\! e-. d-. d-. ] [fis16 \mf ( g ] |
-) fis8 [f16 ( g] ) f8-. [e16 \< ( fis ] |
-) e8 [\! d16 ( e ] ) d8-. c! \f ~ |
-c'4.-> b8 |
-[g-. fis-. e-.] g,8 ~ |
-b'4. \sfz a,8 ~ |
-a'4. \sfz a,8 ~ |
-fis' r a4-> ~ | % -> added
-fis8 r a4-> ~ |
-fis8 r f4 ~ |
-e8 [a,16 ( b ] ) a8 a ~ |
-fis' r a4-> ~ |
-fis8 r a4-> ~ |
-fis8 r f4 ~ |
-e8 [a,16 ( b ] ) a8 a ~ |
-fis' r a4_"dim." ~ |
-fis8 r e4 ~ |
-fis8 r a4 ~ |
-fis8 r e4 \p ~ |
-fis8 r r4 |
-R2*3 |
-fis,2 \pp ~ |
-fis ~ |
-fis ~ |
-fis4 r |
-R2*4 |
-e'2 \sfz \> ~ |
-\! fis,4 r |
-b2 \> ~ |
-\! ais4 r |
-fis2 \pp \< ~ |
-\! fis ~ |
-fis \> ~ |
-\! fis4 r |
-R2*4 |
-e'2 \sfz \> ~ |
-\! fis,4 r |
-e'2 \p ~ |
-ais, |
-R2*2 |
-e'2 \p ~ |
-ais, |
-b ~ |
-ais |
-b_"dim." ~ |
-ais ~ |
-b ( |
-c4 ) b8 r |
-e-. r e-. r |
-e-. r e-. r |
-c2 ( ~ |
-d4 ) c8 r |
-d-. r d-. r |
-d-. r [d-. d-. ] |
-[c-. \< b-. a-. g-. ] |
-[fis-. \! e-. d-. ] [d'16 \f ( e ] |
-[d e d b][g b d e] |
-[g8 e ) d] g, ( |
-[g' e ) d ] b-. |
-[c-. d-. e-. ] [g16 ( a] |
-[g a g e][c e g a] |
-[c8 a ) g ] c, ( |
-[c' a ) g] r |
-[e ( c ) b ] e ~ |
-ais,2 ~ |
-b4 r8 e ~ |
-ais,2 ~ |
-b4 r8 e |
-bes r a r |
-g r e' r |
-d [a16 ( b ][c! d c b] |
-[a b a g] ) fis8 r |
-c'4 ( \p \< d |
-\! e2 ~ |
-e4 \> [d8 c' ] |
-[b g e \! ) d ] |
-c4 \p ( \< d |
-e2 ~ |
-\! e4 d \> |
-e2 ~ |
-[\! e8 d_"dim." c a ] |
-) fis r r [d'16 \p ( e] |
-) d8-. [cis16 ( d] ) cis8-. [c16 ( d] |
-) c8-. [ b16 ( c] ) b8-. [bes16 ( c ] |
-) bes8-. r e4 \f ~ |
-[fis8 d16 ( e] ) d8 [d16 \p ( e] |
-) d8-. \< [cis16 ( d] ) cis8-. [c16 ( d] |
-) c8-. [ b16 ( c] ) b8-. [bes16 ( \! c ] |
-) bes8-. r e4 \f ~ |
-[fis8 d16 ( e] ) d8 f ~ |
-b4.-> f8 ~ |
-b4.-> r8 |
-R2 |
-r4 r8 f \f ~ |
-b4.-> f8 ~ |
-b4.-> r8 |
-R2 |
-r4 r8 [d,16 \p ( e] |
-) d8-. [cis16 ( d] ) cis8-. [c16 ( d] |
-) c8-. \< [ b16 ( c] ) \! b8-. [b'16 ( c ] |
-) b8-. [bes16 ( c ] ) bes8-. [a16 ( b ] |
-) a8-. [g16 ( as ] ) g8 b, \f ~ |
-f'4.-> r8 |
-r4 r8 c ~ |
-e'4. \sfz d,8 ~ |
-d'4. d,8 ~ |
-b' r a4-> ~ |
-g8 r a4-> ~ |
-g8 r g4 ~ |
-fis8 [d16 ( e] ) d8 d ~ |
-g r a4 ~ |
-g8 r a4 ~ |
-g8 r g4 ~ |
-fis8 [d16 ( e] ) d8 c ~ |
-b r c4 ~ |
-b8 r c4_"dim." ~ |
-b8 r c4 ~ |
-b8 r a4 \p ~ |
-g8 r r4 |
-R2 |
-b'4^"solo" \p ( fis \> |
-g [d8. \! e16 ] |
-d4. b8 |
-g4 \< ) \! a |
-b \> ( \! a |
-) g [g8. \f (a16 ] |
-) g2 |
-d2 ~ |
-d2_"dim." ~ |
-d4. r8 |
-R2*2 |
-d'8-. \p r cis-. r |
-c! r b r |
-R2*2 |
-d4. \sfz d8 \> |
-[d d \! d] r |
-R2*3 |
-r4 r8 c \f ~ |
-c'4. e,8 ~ |
-e'4. d,8 ~ |
-d'4. d,8 ~ |
-a'4. fis8 ~ |
-g4 r8 g ~ |
-c4 ~ b8 fis ~ |
-g4 r8 g ~ |
-c4 ~ b8 cis, ~ |
-g'4. c,!8 ~ |
-fis4. fis8 |
-[g-. fis-. g-. fis-. ] |
-[g-. fis-. g-. fis-. ] |
-g-. r fis-. r |
-g r d r |
-[d16 ( e d e][d e d e] |
-[d e d e] [d e d e] |
-) d4 r8 d ~ |
-b'4 r8 d, ~ |
-g4 r8 d ~ |
-b'4 r8 d, ~ |
-g,2 ~ |
-g ~ |
-g'4-. \sfz r^\fermata
-}
-
-
-clarII=\notes\relative c'' {
-\key G;
-\clef "treble";
-\property Staff."midi_instrument" = "clarinet"
-
-[d8. \fp ( e16 ] ) d2 |
-[d8._"dim." ( e16 ] ) d2 |
-R2.*8 |
-[fis,8. \mf ( \< g16 ][ e8 fis ] \! ) g4 |
-[a8. ( \> g16 ] \! ) fis4 r |
-b2. \pp \< ( |
-\! ais4 ) b2 |
-a4 \p ( [g8. a16 ] g4 |
-fis ) g8 r r4 |
-a4 ( [g8. a16 ] g4 |
-fis ) g8 r [d^""^"solo" \mf \< () \! b' ] |
-\tiny a8*1/2 \normalsize d2 ( \> *7/8 [b8. \! g16] | % grace note a8 d2
-) d2 r4 |
-R2. |
-r4 r \times 2/3 { [b'8 ( \f d, ) d' ] } |
-d4 () b r |
-r r \times 2/3 { [d8 \f ( b ) d ] } |
-a4 () d r |
-R2.*6 |
-r4 r4^\fermata r8^\fermata r8 |
-R2*9 |
-r4 r8 d-. \p |
-[c-. b-. \< a-. g-. ] |
-[\! fis-. e-. d-. ] [d'16 \f ( e ] |
-[d e d b][g b d e] |
-[g8 e ) d ] g, ( |
-[g' e ) d ] g, ( |
-[g' e ) d ] b' ~ |
-f2 ~ |
-fis!4 r8 b ( |
-) f2 ~ |
-fis!4 r8 b, ~ |
-b r b r |
-b r b r |
-a r r4 |
-R2 |
-g!4 \p \< ( a |
-\! b!2 ~ |
-b4 \> a ~ |
-a \! ) fis8 r |
-g4 \p \< ( a |
-\! b2 ~ |
-b4 \> a |
-g2 ~ |
-\! ) g4 r |
-R2*3 |
-r4 gis \f ~ |
-[ g!8 a16-> ( b ] ) a8 r |
-R2*2 |
-r4 gis \f ~ |
-[ g!8 a16 ( b ] ) a8 r |
-fis4. r8 |
-fis4. r8 |
-R2*2 |
-fis4. \f r8 |
-fis4. r8 |
-R2 |
-g4. -> r8 |
-R2 |
-r4 r8 a-. \mf |
-[a-. gis-. gis-. g-. ] |
-g [ fis-. fis-. ] fis \f ~ | % \f added
-dis'4.-> r8 |
-r4 r8 g,8 ~ |
-e'4. \sfz g,8 ~ |
-e'4. \sfz g,8 ~ |
-fis r a4-> ~ |
-a8 r a4-> ~ |
-a8 r gis4 ~ |
-[g!8 g-. g-. g~ ] |
-fis! r a4 ~ |
-a8 r a4-> ~ |
-a8 r gis4 ~ |
-g!8 [g-. g-.] g~ |
-fis! r a4_"dim." ~ | % dim. added
-a8 r a4 ~ |
-a8 r a4 ~ |
-a8 r a4 \p ~ |
-a8 r r4 |
-R2*3 |
-fis2 \pp \< ~ |
-fis ~ |
-\! fis \>~ |
-\! fis4 r |
-R2*4 |
-g2 \f \> ~ |
-\! fis4 r |
-b2 \> ~ |
-\! ais4 r |
-fis2 \pp \< ~ |
-fis ~ |
-\! fis \>~ |
-\! fis4 r |
-R2*16 |
-f2 \pp ~ |
-g4. r8 |
-b-. r a-. r |
-b-. r a-. r |
-a2 ~ |
-a4. r8 |
-c r b r |
-a r [g-. \p d'-. ] |
-[c-. b-. a-. g-. ] |
-[fis-. e-. d-. ] [d'16 \f ( e ] |
-[d e d b][g b d e] |
-[g8 e ) d] g, ( |
-[g' e ) d ] g,-. |
-[a-. b-. c-. ] [g'16 ( a] |
-[g a g e][c e g a] |
-[c8 a ) g ] c, ( |
-[c' a ) g] r |
-[c, ( a ) g ] e' ~ |
-ais,2 ~ |
-b4 r8 e ~ |
-ais,2 ~ |
-b4 r8 e ~ |
-bes r a r |
-g r g r |
-[fis ( a16 b ][c! d c b] |
-[a b a g] ) fis8 r |
-R2 |
-a4 \p \< ( b |
-\! c \> fis, |
-) \! g r |
-R2 |
-fis4 \< g ( |
-) \! a r |
-fis4 \> g_"dim." ( |
-) \! a r |
-r r8 b-. \p |
-b [ais-. \< ais-. a-. ] |
-[a-. gis-. \! gis-. g-. ] |
-g r cis4 \f ~ |
-c! r8 b!-. \p |
-b [ais-. \< ais-. a-. ] |
-[a-. gis-. \! gis-. g-. ] |
-g r cis4 \f ~ |
-c! r8 b ~ |
-f'4.-> b,8 ~ |
-f'4.-> r8 |
-R2 |
-r4 r8 b,8 \f ~ |
-f'4.-> b,8 ~ |
-f'4.-> r8 |
-R2 |
-r4 r8 b,8-. \p |
-b-. [ais-. ais-. a-. ] |
-[a-. g-. g-. ] [b16 ( c ] |
-) b8-. \< [bes16 ( c ] ) bes8-. [a16 ( b ] |
-) \! a8-. [g16 ( as ] ) g8 f \f ~ |
-b4.-> r8 |
-r4 r8 c ~ |
-a'4. \sfz c,8 ~ |
-a'4. \sfz c,8 ~ |
-b r c4-> ~ |
-b8 r c4-> ~ |
-b8 r bes4 ~ |
-[a8 d16 ( e ] [) d8 c ~ ] |
-b! r c4 ~ |
-b8 r c4 ~ |
-b8 r bes4-> ~ |
-[a8 d16 ( e ] ) d8 a ~ |
-g r a4 ~ |
-g8_"dim." r a4 ~ |
-g8 r a4 ~ |
-g8 r fis4 ~ |
-g8 \p r r4 |
-R2*6 |
-r4 [g8. ( \f a16 ] |
-) g2 ~ |
-d_"dim." ~ |
-d ~ |
-d4. r8 |
-R2*6 |
-fis4. \sfz \> \! g8 |
-[a-. b-. c-. ] r |
-R2*3 |
-r4 r8 e, \f ~ |
-e'4. a,8 ~ |
-a'4. a,8 ~ |
-a'4. fis,8 ~ |
-d'4. c8 ~ |
-b4 r8 g ( |
-e'4 [d8 ) c ] |
-b4 r8 g ( |
-e'4~ ) d8 g, |
-cis4. fis,8 ~ |
-c'!4. c8 |
-[b-. c-. b-. c-. ] |
-[b-. c-. b-. c-. ] |
-b r a r |
-b r c r |
-[b d16 ( e ] [d e d e] |
-[d e d e] [d e d ) e] |
-d4 r |
-d4 r |
-b4 r |
-d4 r8 d, ~ |
-g2 ~ |
-g ~ |
-b4-. \sfz r^\fermata
-}
-
-fagotto=\notes\relative c' {
-\clef "bass";
-\property Staff."midi_instrument" = "bassoon"
-
-[c8. \f ( d16 ] ) c2_"dim." |
-[c8. ( d16 ] ) c4 r |
-R2.*29 |
-r4 r4^\fermata r8^\fermata r8 |
-R2*4 |
-c8-. \pp r bes-. r |
-c8-. r bes-. r |
-R2*2 |
-bes8-. r a-. r |
-bes8-. r [a-. c-.] |
-[bes-. \< a-. g-. f-. ] |
-[e-. \! d-. c-. ] c \f ~ |
-c'4. r8 |
-d4 ~ c8 r |
-d4 ~ c8 r |
-d4 ~ [c8 a16 ( b ] |
-[c d c b] ) a8 f-> ~ |
-e4 r8 [ a16 ( b ] |
-[c d c b] ) a8 f-> ~ |
-e4 r8 a ~ |
-c r d r |
-es r d r |
-d4 \sfz r |
-R2*2 |
-d4 \p ( \< e |
-\! f b, \> |
-) \! c r |
-R2 |
-d4 \p ( \< e |
-\! ) f2 \> |
-\! b,4 \p ( c |
-) d r |
-r r8 g, \p |
-[g \< g g g] |
-[g g g \! g] |
-g \f [c16 ( d] [es8 d16 c ] |
-) d4 r8 g, \p |
-[g g g g] |
-[g g g g] |
-g [c16 ( d] [es8 d16 c ] |
-) d4 r8 c ~ |
-g4.-> c8 ~ |
-g4.-> r8 |
-r4 r8 a ~ |
-b4. g8 \f ~ |
-c4.-> g8 ~ |
-c4.-> r8 |
-r4 r8 a \f ~ |
-d4. \clef "tenor"; [g16 \p ( a] |
-) g8 [fis16 ( g] ) fis8-. \< [f16 ( g ] |
-) f8-. [e16 ( \! f ] ) e8 g-. \mf |
-[g-. fis-. \< fis-. f-. ] |
-[f-. e-. \! e-. ] \clef "bass"; cis \f ~ |
-e4. a,8 |
-[d,-. e-. f-. ] f' ~ |
-d4. d8 |
-b4. b8 ~ |
-c r f4-> ~ |
-e8 r f4-> ~ |
-e8 r c4 ~ |
-[d8-. f-. d-. b ~ ] |
-c r f4-> ~ |
-e8 r f4-> ~ |
-e8 r c4 ~ |
-[d8-. f-. d-. b ~ ] |
-c r f4 ~ |
-e8 r f4_"dim." ~ |
-e8 r f4 ~ |
-e8 r f4 \p ~ |
-e8 r r4 |
-r8 [g,-.^"solo" \p a-. b-. ] |
-c r r4 |
-R2 |
-a,2 \pp \< ~ |
-\! a |
-e' \> ~ |
-\! e4 r |
-e2 \p \< ~ |
-\! e \> ~ |
-\! e \< ~ |
-\! e \> |
-\tiny \! d'8 \sfz *1/2 ~ \normalsize f2 \> *7/8 ~ | % grace note d8 f
-\! e4. r8 |
-f,2 \> ( ~ |
-[ \! e8 d c ) b ] |
-a2 \pp \< ~ |
-\! a |
-e' \> ~ |
-\! e4 r |
-e2 \p ~
-e ~ |
-e ~ |
-e |
-\tiny d'8 \sfz *1/2 ~ \normalsize f2 \> *7/8 ~ | % grace note d8 f
-\! e4. r8 |
-f,2 \p ~ |
-e4 r |
-f'2-> ~ |
-e4. r8 |
-f,2 ~ |
-e |
-d' \p ~ |
-d ~ |
-d_"dim." ~ |
-d ~ |
-c \pp ~ |
-d4 ~ c8 r |
-c r bes r |
-c r bes r |
-d2 ~ |
-es4 ~ d8 r |
-e! r f-. r |
-bes,-. r [a-. c-.] |
-[bes-. a-. g-. f-. ] |
-[e-. d-. c-. ] c ~ |
-c'4. \f r8 |
-d4 ~ c8 r |
-d4 ~ c8 a-. |
-[bes-. c-. d-. es-. ] |
-d4.-> r8 |
-es4 ~ d8 r |
-es4 ~ d8 r |
-d4 ~ d8 [d16 ( e! ] |
-[f g f e] ) d8 bes ~ |
-a4 r8 [d16 ( e ] |
-[f g f e] ) d8 bes ~ |
-a4 r8 d ~ |
-f r g r |
-as r g r |
-c,4 \sfz r |
-R2*6 |
-bes4 ( \p \< a |
-) \! g r |
-g_"dim." ( f |
-) e r |
-r r8 c' |
-[c c c c] |
-[c \< c c \! c] | % crescendo added
-[c c c c] |
-[c c c ] c \p |
-[c \< c c c] |
-[c c c c] |
-[\! c \f c c c] |
-[c c c ] f ~ |
-c4.-> f8 ~ |
-c4.-> r8 |
-r4 r8 f8 ~ |
-e!4. c8 \f ~ |
-f4.-> c8 ~ | % slur added
-f4.-> r8 |
-r4 r8 d ~ |
-e4. r8 |
-R2 |
-r4 r8 c \p |
-[c-. \< d-. d-. e-. ] |
-[ \! e-. f-. f-. ] r |
-fis4. \f d,8-. |
-[g-. a-. bes-. ] e! ~ |
-g4. \f g8 ~ |
-e4. e8 ~ |
-f r c4-> ~ |
-c c-> ~ |
-c d ~ |
-e r8 c ~ |
-f4 c~ |
-c c~ |
-c d ~ |
-e r8 c ~ |
-f4 c~ |
-c c~ |
-c r |
-R2*5 |
-es2 \p \> ( ~ |
-\! d4 \< \! ) des |
-c \f ( bes |
-a b |
-) c r |
-R2 |
-a8-. \p r r4 |
-g8-. r r4 |
-R2*4 |
-a2 \p \< ~ |
-a4 ~ \! gis8 g ~ |
-c4. \sfz c8 \> |
-[c c \! c ] r8 |
-R2*2 |
-es2 \p \< ~ |
-\! es4. d8 \f ~ |
-f,4. bes8 ~ |
-d,4. c'8 ~ |
-c,4. c'8 ~ |
-c,4. bes'8 ~ |
-a4 r8 c~ |
-d4 ~ c8 bes ~ |
-a4 r8 c~ |
-d4 ~ c8 d ~ |
-g,4. g'8 ~ |
-c,4. c,8 |
-[f-. c-. f-. c-. ] |
-[f-. c-. f-. c-. ] |
-f-. r c'-. r |
-c-. r c-. r |
-[c16 ( d c d][c d c d] |
-[c16 d c d][c d c d] |
-) c4 r8 c ~ |
-f4 r8 c ~ |
-f,4 r8 c' ~ |
-f4 r8 c ~ |
-f,2 ~ |
-f ~ |
-c'4 \sfz r^\fermata
-}
-
-oboehelp=\notes\relative c'' {
-\tiny
-
-s2.*32 |
-s2*32 |
-[a8^"Vi. I" ( g f d] |
-[b g ) a ] s8 |
-s2*106 |
-[d'8^"Vi. I" ( c bes g] |
-[e c ) d] s |
-}
-
-flautohelp=\notes\relative c'' {
-\tiny
-
-s2.*32 |
-s2*32 |
-[a8^"Vi. I" ( g f d] |
-[b g ) a ] s8 |
-s2*60 |
-f''2^"Oboe" ( |
-b,4 [c8 ) b] |
-s2*44 |
-[d8^"Vi. I" ( c bes g] |
-[e c ) d] s |
-s2*54 |
-bes''4.^"Vi. I" a8 |
-[g-. f-. e-. ] s8 |
-}
Begin3
Title: StepMake
-Version: 0.1.69
-Entered-date: 17FEB99
+Version: 0.1.71
+Entered-date: 22FEB99
Description:
Keywords: music notation typesetting midi fonts engraving
Author: janneke@gnu.org (Jan Nieuwenhuizen)
hanwen@cs.ruu.nl (Han-Wen Nienhuys)
Maintained-by: janneke@gnu.org (Jan Nieuwenhuizen)
Primary-site: sunsite.unc.edu /pub/Linux/apps/sound/convert
- 40k stepmake-0.1.69.tar.gz
+ 40k stepmake-0.1.71.tar.gz
Original-site: pcnov095.win.tue.nl /pub/lilypond/development/
- 40k stepmake-0.1.69.tar.gz
+ 40k stepmake-0.1.71.tar.gz
Copying-policy: GPL
End
Name: stepmake
-Version: 0.1.69
+Version: 0.1.71
Release: 1
Copyright: GPL
Group: Development
-Source0: pcnov095.win.tue.nl:/pub/lilypond/development/stepmake-0.1.69.tar.gz
+Source0: pcnov095.win.tue.nl:/pub/lilypond/development/stepmake-0.1.71.tar.gz
Summary: generic make package
Packager: janneke@gnu.org (Jan Nieuwenhuizen)
Buildroot: /tmp/stepmake-install