@command{lilypond-book} provides you with a way to automate this
process: This program extracts snippets of music from your document,
-runs LilyPond on them, and substitutes the resulting pictures back.
-The line width and font size definitions for the music are adjusted
-to match the layout of your document.
+runs LilyPond on them, and outputs your document with the resulting
+pictures substituted for the music you entered. The line width and
+font size definitions for the music are adjusted to match the layout
+of your document.
It can work on La@TeX{}, @code{html} or texinfo documents. A tutorial
on using lilypond-book is in @ref{Integrating text and music}.
@@lilypondfile[options, go, here]@{@var{filename}@}
@end example
-We show two simple examples here. First a complete block:
+Then you run lilypond-book on it, and the result is a file you can
+process with texinfo. We show two simple examples here. First a
+complete block:
@example
@@lilypond[26pt]
@node Integrating La@TeX{} and music
@section Integrating La@TeX{} and music
-You specify LilyPond code like this:
+
+ You specify LilyPond code like this:
@example
\begin[options, go, here]@{lilypond@}
\lilypond@{ YOUR LILYPOND CODE @}
@end example
-We show some examples here.
+Then you run lilypond-book on it, and the result is a file you can
+process with La@TeX{}. We show some examples here.
@example
\begin[26pt]@{lilypond@}
@end example
@noindent
-produces
+Then you run lilypond-book on it, and the result is a file you can
+process with La@TeX{}. The final result look like
@example
<lilypond relative1 verbatim>
\key c \minor r8 c16 b c8 g as c16 b c8 d | g,4
@end lilypond
-Inline picture:
-
+For inline pictures, use @code{<lilypond ... />} syntax, eg.
@example
Some music in <lilypond a b c/> a line of text.
@end example
--- /dev/null
+\version "1.7.4"
+\header {
+ texidoc = "Clusters are a device to denote that a complete range of
+notes is to be played."
+}
+
+voiceI = % same as voiceII, but with ordinary notes
+ \context Voice = voiceI {
+ \notes \relative c' {
+ \stemUp
+ c4 f4
+ a4 <e4 d'4> | \break
+ < g8 a8 > < e8 a8 > a4 c1 < d4 b4 > e4 |
+ c4 a4 f4 g4 a4
+ }
+ }
+
+voiceII = % same as voiceI, but with cluster notation
+ \context Voice = voiceII {
+ \notes \relative c' {
+ \property Thread.NoteHead \set #'transparent = ##t
+ \property Voice.Stem \set #'transparent = ##t
+ \property Voice.Beam \set #'transparent = ##t
+ \property Staff.Accidental \set #'transparent = ##t
+ \property Voice.Cluster \set #'padding = #0.25
+ \property Voice.Cluster \set #'shape = #'ramp
+ c4 f4
+ \startCluster
+ a4 <e4 d'4> | \break
+ %%% do not try something like: < { g8 e8 } a4 >
+ %%% instead, do the following: < g8 a8 > < e8 a8 >
+ < g8 a8 > < e8 a8 > a4 c1 < d4 b4 > e4 |
+ c4 \stopCluster a4 f4 g4 a4
+ }
+ }
+
+\score {
+ \context PianoStaff {
+ <
+ \voiceI
+ \voiceII
+ >
+ }
+ \paper{
+ linewidth = 15.0 \cm
+ }
+}
+++ /dev/null
-\version "1.7.4"
-\header {
- texidoc = "cluster demo."
-}
-
-voiceI = % same as voiceII, but with ordinary notes
- \context Voice = voiceI {
- \notes \relative c' {
- \stemUp
- c4 f4
- a4 <e4 d'4> | \break
- < g8 a8 > < e8 a8 > a4 c1 < d4 b4 > e4 |
- c4 a4 f4 g4 a4
- }
- }
-
-voiceII = % same as voiceI, but with cluster notation
- \context Voice = voiceII {
- \notes \relative c' {
- \property Thread.NoteHead \set #'transparent = ##t
- \property Voice.Stem \set #'transparent = ##t
- \property Voice.Beam \set #'transparent = ##t
- \property Staff.Accidental \set #'transparent = ##t
- \property Voice.Cluster \set #'padding = #0.25
- \property Voice.Cluster \set #'shape = #'ramp
- c4 f4
- \startCluster
- a4 <e4 d'4> | \break
- %%% do not try something like: < { g8 e8 } a4 >
- %%% instead, do the following: < g8 a8 > < e8 a8 >
- < g8 a8 > < e8 a8 > a4 c1 < d4 b4 > e4 |
- c4 \stopCluster a4 f4 g4 a4
- }
- }
-
-\score {
- \context PianoStaff {
- <
- \voiceI
- \voiceII
- >
- }
- \paper{
- linewidth = 15.0 \cm
- }
-}