@end example
would yield
-@lilypondfile[ragged-right,quote]{tag-filter.ly}
+@c FIXME: broken
+@c @lilypondfile[ragged-right,quote]{tag-filter.ly}
The arguments of the @code{\tag} command should be a symbol
(such as @code{#'score} or @code{#'part}), followed by a
@snippets
@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
-{adding-ambiti-per-voice.ly}
+{adding-ambitus-per-voice.ly}
@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
-{ambiti-multiple-voices.ly}
+{ambitus-with-multiple-voices.ly}
@seealso
@snippets
@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
-{applying-notehead-styles-depending-on-the-step-of-the-scale.ly}
+{applying-note-head-styles-depending-on-the-step-of-the-scale.ly}
@noindent
To see all note head styles, see @ref{Note head styles}.
The syntax for a normal repeat is
@example
-\repeat @var{variant} @var{repeatcount} @var{repeatbody}
+\repeat volta @var{repeatcount} @var{repeatbody}
@end example
-where @var{variant} is @qq{volta} and @var{repeatbody} is a music
-expression. Alternate endings can be produced using
-@code{\alternative}.
+where @var{repeatbody} is a music expression. Alternate endings can
+be produced using @code{\alternative}.
Normal repeats without alternate endings:
@c Is there a way to have a final bar ("|.") at the end of the
@c previous line? Doesn't seem to be.
If you want to start a repeat at the beginning of a line and have a
-double bar at the end of the previous line, use @code{\bar}. See
-@ref{Bar lines} for more information.
+double bar at the end of the previous line, use @code{\bar}. For more
+information, see @ref{Bar lines}.
@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
c4 c c c
@seealso
-Music Glossary: @rglos{repeat}.
-@c FIXME : add @rglos{volta} after glossary addition
+Music Glossary: @rglos{repeat}, @rglos{volta}.
Notation Reference: @ref{Bar lines}, @ref{Modifying context plug-ins}.
@internalsref{RepeatedMusic}, @internalsref{VoltaRepeatedMusic},
@internalsref{UnfoldedRepeatedMusic}.
-@c Examples:
-
-
@knownissues
@cindex repeat, ambiguous
@seealso
-Notation Reference: @ref{Bar lines}.
+Notation Reference: @ref{Bar lines}, @ref{Text markup}.
Snippets: @lsrdir{Repeats,Repeats}
Internals Reference: @internalsref{VoltaBracket},
-@internalsref{RepeatedMusic}, @internalsref{VoltaRepeatedMusic},
-and @internalsref{UnfoldedRepeatedMusic}.
+@internalsref{RepeatedMusic}, @internalsref{VoltaRepeatedMusic}.
@node Written-out repeats
@subsubsection Written-out repeats
-unfold
+@cindex written-out repeats
+@cindex repetitious music
+@cindex repeats, written-out
+
+By using the @code{unfold} command, repeats can be used to simplify
+the writing out of repetitious music. The syntax is
+
+@example
+\repeat unfold @var{repeatcount} @var{repeatbody}
+@end example
+
+Unfold repeats can be made with or without alternate endings. Unfold
+repeats without alternate endings:
+@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
+c1
+\repeat unfold 2 { c4 d e f }
+c1
+@end lilypond
+Unfold repeats with alternate endings:
+@lilypond[quote,ragged-right,verbatim,fragment,relative=2]
+c1
+\repeat unfold 2 { g f e d }
+ \alternative {
+ { cis2 g' }
+ { cis,2 b }
+ }
+c1
+@end lilypond
+
+@seealso
+
+Snippets: @lsrdir{Repeats,Repeats}.
+
+Internals Reference: @internalsref{RepeatedMusic},
+@internalsref{UnfoldedRepeatedMusic}.
@node Short repeats
@subsection Short repeats
@funindex \textLengthOn
@code{\textLengthOn},
@funindex \textLengthOff
-@code{\textLengthOff}.
+@code{\textLengthOff}
@seealso
@cindex Text spanners
-@c TODO: merge these explanations with the ones below in
-@c "Text and Line spanners" -vv
-
Some performance indications, e.g., @i{rallentando} or
@i{accelerando}, are written as text and are extended over many
-measures with dotted lines; you can create such text spanners
+measures with dotted lines.
+
+Such objects, called @q{spanners}, may be created
from one note to another by using the following syntax:
@lilypond[verbatim,quote,ragged-right,fragment,relative=2]
e,\stopTextSpan
@end lilypond
+The line style, as well as the text string, can be defined as an
+object property. This syntax is described in @ref{Line styles}.
+
@predefined
@funindex textSpannerUp
@funindex textSpannerDown
@code{\textSpannerDown},
@funindex textSpannerNeutral
-@code{\textSpannerNeutral}.
-
-The line style, as well as the text string, can be defined as an
-object property. This syntax is described in @ref{Line styles}.
-
+@code{\textSpannerNeutral}
@seealso
c4\mark "dolce" c c c
@end lilypond
-This syntax makes possible to put any text on a bar line, but also
-signs like coda, segno, or fermata, by specifying the appropriate
-symbol name. These symbols are listed in @ref{The Feta font}.
+This syntax makes possible to put any text on a bar line;
+more complex text formatting may be added using a @code{\markup}
+block, as described in @ref{Text markup}. This can be used to print
+signs like coda, segno or fermata, by specifying the appropriate
+symbol name:
@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
c1 \mark \markup { \musicglyph #"scripts.ufermata" }
@snippets
-@c TODO: to be LSR-ized stuff -vv
-
-To print the mark at the end of the current line, use
-
-@example
-\override Score.RehearsalMark
- #'break-visibility = #begin-of-line-invisible
-@end example
-
-@code{\mark} is often useful for adding text to the end of bar.
-In such cases, changing the @code{#'self-alignment} is very useful
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{printing-marks-at-the-end-of-a-line-or-a-score.ly}
-@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
-\override Score.RehearsalMark
- #'break-visibility = #begin-of-line-invisible
-c1 c c c4 c c c
-\once \override Score.RehearsalMark #'self-alignment-X = #right
-\mark "D.S. al Fine "
-@end lilypond
-
-If specified, text marks may be aligned with notation objects
-other than bar lines. These objects include @code{ambitus},
-@code{breathing-sign}, @code{clef}, @code{custos},
-@code{staff-bar}, @code{left-edge}, @code{key-cancellation},
-@code{key-signature}, and @code{time-signature}.
-
-
-In such cases, text marks will be horizontally centered
-above the object. However this can be changed, as demonstrated
-on the second line of this example (in a score with multiple staves,
-this setting should be done for all the staves).
-
-
-@lilypond[fragment,quote,ragged-right,verbatim,relative=1]
- e1
-
- % the RehearsalMark will be centered above the Clef
- \override Score.RehearsalMark #'break-align-symbols = #'(clef)
- \key a \major
- \clef treble
- \mark "↓"
- e
-
- % the RehearsalMark will be centered above the TimeSignature
- \override Score.RehearsalMark #'break-align-symbols = #'(time-signature)
- \key a \major
- \clef treble
- \time 3/4
- \mark "↓"
- e2.
-
- % the RehearsalMark will be centered above the KeySignature
- \override Score.RehearsalMark #'break-align-symbols = #'(key-signature)
- \key a \major
- \clef treble
- \time 4/4
- \mark "↓"
- e1
-
- \break
- e
-
- % the RehearsalMark will be aligned with the left edge of the KeySignature
- \once \override Score.KeySignature #'break-align-anchor-alignment = #LEFT
- \mark "↓"
- \key a \major
- e
-
- % the RehearsalMark will be aligned with the right edge of the KeySignature
- \once \override Score.KeySignature #'break-align-anchor-alignment = #RIGHT
- \key a \major
- \mark "↓"
- e
-
- % the RehearsalMark will be aligned with the left edge of the KeySignature
- % and then shifted right by 1 unit.
- \once \override Score.KeySignature #'break-align-anchor = #1
- \key a \major
- \mark "↓"
- e1
-@end lilypond
-
-Although text marks are normally only printed above the topmost
-staff, you may alter this to print them on every staff:
-
-@lilypond[quote,ragged-right,verbatim,relative=2]
-{
- \new Score \with {
- \remove "Mark_engraver"
- }
- <<
- \new Staff \with {
- \consists "Mark_engraver"
- }
- { c''1 \mark "foo" c'' }
- \new Staff \with {
- \consists "Mark_engraver"
- }
- { c'1 \mark "foo" c' }
- >>
-}
-@end lilypond
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{aligning-marks-with-various-notation-objects.ly}
+@lilypondfile[verbatim,lilyquote,ragged-right,texidoc]
+{printing-marks-on-every-staff.ly}
@seealso
@knownissues
@c IMO this is a bug; hopefully it'll be fixed soon, so I can
@c delete this sentence. -gp
+@c A workaround is suggested in the first @snippets item -vv
If a mark is entered at the end of the last bar of the score (where
there is no next line), then the mark will not be printed at
texidoc = "
When writing a figured bass, here's a way to specify if you want your
figures to be placed above or below the bass notes, by defining the
-BassFigureAlignmentPositioning #'direction property (exclusively in a
-Staff context). Choices are #UP (or #1), #CENTER (or #0) and #DOWN (or
-#-1).
+@code{BassFigureAlignmentPositioning #'direction} property (exclusively
+in a @code{Staff} context). Choices are @code{#UP} (or @code{#1}),
+@code{#CENTER} (or @code{#0}) and @code{#DOWN} (or @code{#-1}).
As you can see here, this property can be changed as many times as you
-wish. Use \\once \\override if you dont want the tweak to apply to the
-whole score.
+wish. Use @code{\\once \\override} if you don't want the tweak to apply
+to the whole score.
" }
% begin verbatim
bass = { \clef bass g4 b, c d e d8 c d2}
+++ /dev/null
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "pitches, staff-notation, vocal-music"
- texidoc = "
-Ambits can be added per voice. In this case, the ambitus must be moved
-manually to prevent collisions.
-" }
-% begin verbatim
-\new Staff <<
- \new Voice \with {
- \consists "Ambitus_engraver"
- } \relative c'' {
- \override Ambitus #'X-offset = #2.0
- \voiceOne
- c4 a d e f1
- }
- \new Voice \with {
- \consists "Ambitus_engraver"
- } \relative c' {
- \voiceTwo
- es4 f g as b1
- }
->>
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "pitches, staff-notation, vocal-music"
+ texidoc = "
+Ambitus can be added per voice. In this case, the ambitus must be moved
+manually to prevent collisions.
+" }
+% begin verbatim
+\new Staff <<
+ \new Voice \with {
+ \consists "Ambitus_engraver"
+ } \relative c'' {
+ \override Ambitus #'X-offset = #2.0
+ \voiceOne
+ c4 a d e f1
+ }
+ \new Voice \with {
+ \consists "Ambitus_engraver"
+ } \relative c' {
+ \voiceTwo
+ es4 f g as b1
+ }
+>>
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "staff-notation, contexts-and-engravers, breaks"
+ texidoc = "
+When adding a new staff at a line break, LilyPond will unfortunately
+add some extra space at the end of the line before the break (to fit in
+a key signature change, which will never be printed anyway). The
+workaround is to add a setting of
+@code{Staff.explicitKeySignatureVisibility} as is shown in the example.
+In version 2.10 and earlier, you have to do a similar setting for the
+time signatures, see the example.
+
+
+" }
+% begin verbatim
+\score {
+ \new StaffGroup \relative c''{
+ \new Staff
+ \key f \major
+ c1 c^"Unwanted extra space" \break
+ << { c1 c }
+ \new Staff {
+ \key f \major
+ \once \override Staff.TimeSignature #'stencil = ##f
+ c1 c
+ }
+ >>
+ c1 c^"Fixed here" \break
+ << { c1 c }
+ \new Staff {
+ \once \set Staff.explicitKeySignatureVisibility = #end-of-line-invisible
+ %The next line is not needed in 2.11.x or later:
+ \once \override Staff.TimeSignature #'break-visibility = #end-of-line-invisible
+ \key f \major
+ \once \override Staff.TimeSignature #'stencil = ##f
+ c1 c
+ }
+ >>
+ }
+}
+
" }
% begin verbatim
\score {
- <<
- \new Staff \relative c''{ c1 c c c c }
- \new StaffGroup \relative c''{
- \new Staff
- c1 c
- << c1 \new Staff { c1 } >>
- c
- }
- >>
- \layout {
-
- \context{
- \Score
-
- }
- }
+ <<
+ \new Staff \relative c'' { c1 c c c c }
+ \new StaffGroup \relative c'' {
+ \new Staff {
+ c1 c
+ << c1 \new Staff { \once \override Staff.TimeSignature #'stencil = ##f c1 } >>
+ c
+ }
+ }
+ >>
}
-
-
-
-
-
+++ /dev/null
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "staff-notation, contexts-and-engravers, breaks"
- texidoc = "
-When adding a new Staff at a line break, LilyPond will unfortunately
-add some extra space at the end of the line before the break (to fit in
-a key signature change, which will never be printed anyway). The
-workaround is to add a setting of Staff.explicitKeySignatureVisibility
-as is shown in the example. In version 2.10 and earlier, you have to do
-a similar setting for the time signatures, see the example.
-" }
-% begin verbatim
-\score {
- \new StaffGroup \relative c''{
- \new Staff
- \key f \major
- c1 c^"Unwanted extra space" \break
- << { c1 c }
- \new Staff {
- \key f \major
- c1 c
- }
- >>
- c1 c^"Fixed here" \break
- << { c1 c }
- \new Staff {
- \once \set Staff.explicitKeySignatureVisibility = #end-of-line-invisible
- %The next line is not needed in 2.11.x or later:
- \once \override Staff.TimeSignature #'break-visibility = #end-of-line-invisible
- \key f \major
- c1 c
- }
- >>
- }
-}
-
LilyPond makes drums input quite easy, with powerful pre-configured
tools such as the @code{\\drummode} function and the @code{DrumStaff}
context: drums are placed at their own staff positions (with a special
-clef symbol) and have noteheads according to the drum. You can easily
+clef symbol) and have note heads according to the drum. You can easily
attach an extra symbol to the drum, and restrict the number of lines.
" }
% begin verbatim
@code{\\markup} and @code{\\finger}.
" }
% begin verbatim
-one = \markup{ \finger "1" }
-two = \markup{ \finger "2" }
-threetwo = \markup{ \column {\finger "3" \finger "2"} }
-threefour = \markup{ \column {\finger "3" \finger "4"} }
+one = \markup { \finger "1" }
+two = \markup { \finger "2" }
+threeTwo = \markup { \column { \finger "3" \finger "2" } }
+threeFour = \markup { \column { \finger "3" \finger "4" } }
\score {
\context TabStaff {
\stemUp
- e8\4^\one b\2 < e, g\3 e'\1 >^>[ b\2 e\4]
- < a\3 fis'\1 >^>^\threetwo[ b\2 e\4]
+ e8\4^\one b\2 <e, g\3 e'\1>^>[ b\2 e\4]
+ <a\3 fis'\1>^>^\threeTwo[ b\2 e\4]
}
}
<<
\new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
\new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
- \new Staff \with { \consists Volta_engraver } { c'2 g' e' a' }
+ \new Staff \with { \consists "Volta_engraver" } { c'2 g' e' a' }
\new Staff { \repeat volta 2 { c'1 } \alternative { c' } }
- >>
+>>
\header {
lsrtags = "text, vocal-music, spacing"
texidoc = "
-This snippets shows you how to bring the lyrics line closer to the
-Staff.
+This snippet shows you how to bring the lyrics line closer to the
+staff.
" }
% begin verbatim
% Default layout:
-\score{
- <<
- \new Staff \new Voice = m \relative c'{ c4 d e f g f e d c1}
- \new Lyrics \lyricsto m {aa aa aa aa aa aa aa aa aa }
- >>
-}
+<<
+ \new Staff \new Voice = melody \relative c '{ c4 d e f g f e d c1 }
+ \new Lyrics \lyricsto melody { aa aa aa aa aa aa aa aa aa }
+>>
-% Reducing the minimum space below the Staff and above the Lyrics:
-
-\score {
- <<
- \new Staff \with {
- \override VerticalAxisGroup #'minimum-Y-extent = #'(-1. 4)}
- \new Voice = m \relative c'{ c4 d e f g f e d c1 }
- \new Lyrics \with {
- \override VerticalAxisGroup #'minimum-Y-extent = #'(-1.2 . 1)}
- \lyricsto m {aa aa aa aa aa aa aa aa aa }
- >>
-
- \header {
- tagline = ""
- }
-}
+% Reducing the minimum space below the staff and above the lyrics:
+<<
+ \new Staff \with {
+ \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 4) }
+ \new Voice = melody \relative c' { c4 d e f g f e d c1 }
+ \new Lyrics \with {
+ \override VerticalAxisGroup #'minimum-Y-extent = #'(-1.2 . 1) }
+ \lyricsto melody { aa aa aa aa aa aa aa aa aa }
+>>
texidoc = "
Instrument names are generally printed at the left side of the staves.
To align the names of several different intruments, you can put them in
-a \\markup block and use one of the following possibilites:
-
+a @code{\\markup} block and use one of the following possibilites:
*
- Right-aligned instrument names: this is LilyPond's default behavior
+ Right-aligned instrument names: this is the default behavior
*
- Center-aligned instrument names: with the \\hcenter-in #n syntax, you
- can place the instrument names inside a padded box (n being the width
+ Center-aligned instrument names: with the @code{\\hcenter-in #n}
+command, you
+ can place the instrument names inside a padded box (@code{n} being the
+width
of the box)
*
Left-aligned instrument names: you have to print the names on top of an
- empty box, using the \\combine command
- with a \\hspace #n object.
+ empty box, using the @code{\\combine} command
+ with an @code{\\hspace #n} object.
" }
% begin verbatim
-\paper{
- indent = #0
+\paper {
+ indent = #0
left-margin = #30
line-width = #160
}
-\new StaffGroup \relative
-<<
+\new StaffGroup \relative <<
\new Staff {
- \set Staff.instrumentName = "blabla"
- c1^"default" c1 \break
- \set Staff.instrumentName = \markup { \hcenter-in #10 "blabla" }
- c1^"centered" c1 \break
- \set Staff.instrumentName = \markup {\combine \hspace #8 "blabla" }
- c1^"left-aligned" c1
-
+ \set Staff.instrumentName = "Piccolo"
+ c1^"default" c \break
+ \set Staff.instrumentName = \markup { \hcenter-in #10 "Piccolo" }
+ c1^"centered" c \break
+ \set Staff.instrumentName = \markup { \combine \hspace #8 "Piccolo" }
+ c1^"left-aligned" c
}
\new Staff {
- \set Staff.instrumentName = "blo"
- c1 c1 \break
- \set Staff.instrumentName = \markup { \hcenter-in #10 "blo" }
- c1 c1 \break
- \set Staff.instrumentName = \markup {\combine \hspace #8 "blo" }
- c1 c1
- }
-
+ \set Staff.instrumentName = "Flute"
+ c1 c \break
+ \set Staff.instrumentName = \markup { \hcenter-in #10 "Flute" }
+ c1 c \break
+ \set Staff.instrumentName = \markup { \combine \hspace #8 "Flute" }
+ c1 c
+ }
>>
lsrtags = "text, vocal-music"
texidoc = "
You can specify different horizontal alignment for your lyrics, by
-overriding the @code{#'self-alignment-X} property of the
-@code{LyricText} object. @code{#-1} is left, @code{#0} is center and
-@code{#1} is right; however, you can use @code{#LEFT}, @code{#CENTER}
-and @code{#RIGHT} as well.
+overriding the @code{self-alignment-X} property of the @code{LyricText}
+object. @code{#-1} is left, @code{#0} is center and @code{#1} is right;
+however, you can use @code{#LEFT}, @code{#CENTER} and @code{#RIGHT} as
+well.
" }
% begin verbatim
\relative c'' {
\addlyrics {
\once \override LyricText #'self-alignment-X = #LEFT "This is left-aligned"
\once \override LyricText #'self-alignment-X = #CENTER "This is centered"
- \once \override LyricText #'self-alignment-X = #1 "this is right-aligned"
+ \once \override LyricText #'self-alignment-X = #1 "This is right-aligned"
}
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "text"
+ texidoc = "
+If specified, text marks may be aligned with notation objects other
+than bar lines. These objects include @code{ambitus},
+@code{breathing-sign}, @code{clef}, @code{custos}, @code{staff-bar},
+@code{left-edge}, @code{key-cancellation}, @code{key-signature}, and
+@code{time-signature}.
+
+
+
+In such cases, text marks will be horizontally centered above the
+object. However this can be changed, as demonstrated on the second line
+of this example (in a score with multiple staves, this setting should
+be done for all the staves).
+
+
+" }
+% begin verbatim
+\relative c' {
+ e1
+
+ % the RehearsalMark will be centered above the Clef
+ \override Score.RehearsalMark #'break-align-symbols = #'(clef)
+ \key a \major
+ \clef treble
+ \mark "↓"
+ e
+
+ % the RehearsalMark will be centered above the TimeSignature
+ \override Score.RehearsalMark #'break-align-symbols = #'(time-signature)
+ \key a \major
+ \clef treble
+ \time 3/4
+ \mark "↓"
+ e2.
+
+ % the RehearsalMark will be centered above the KeySignature
+ \override Score.RehearsalMark #'break-align-symbols = #'(key-signature)
+ \key a \major
+ \clef treble
+ \time 4/4
+ \mark "↓"
+ e1
+
+ \break
+ e
+
+ % the RehearsalMark will be aligned with the left edge of the KeySignature
+ \once \override Score.KeySignature #'break-align-anchor-alignment = #LEFT
+ \mark "↓"
+ \key a \major
+ e
+
+ % the RehearsalMark will be aligned with the right edge of the KeySignature
+ \once \override Score.KeySignature #'break-align-anchor-alignment = #RIGHT
+ \key a \major
+ \mark "↓"
+ e
+
+ % the RehearsalMark will be aligned with the left edge of the KeySignature
+ % and then shifted right by 1 unit.
+ \once \override Score.KeySignature #'break-align-anchor = #1
+ \key a \major
+ \mark "↓"
+ e1
+}
lsrtags = "editorial-and-educational-use, spacing"
texidoc = "
By default, fingering numbers will be printed outside the staff.
-However, this behavior can be cancelled.
+However, this behavior can be canceled.
" }
% begin verbatim
\relative c' {
+++ /dev/null
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "pitches, vocal-music"
- texidoc = "
-If you have multiple voices in a single staff and you want a single
-ambitus per staff rather than per voice, add the
-@code{Ambitus_engraver} to the @code{Staff} context rather than to the
-@code{Voice} context.
-" }
-% begin verbatim
-\new Staff \with {
- \consists "Ambitus_engraver"
- }
-<<
- \new Voice \relative c'' {
- \voiceOne
- c4 a d e f1
- }
- \new Voice \relative c' {
- \voiceTwo
- es4 f g as b1
- }
->>
-
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "pitches, vocal-music"
+ texidoc = "
+If you have multiple voices in a single staff and you want a single
+ambitus per staff rather than per voice, add the
+@code{Ambitus_engraver} to the @code{Staff} context rather than to the
+@code{Voice} context.
+" }
+% begin verbatim
+\new Staff \with {
+ \consists "Ambitus_engraver"
+ }
+<<
+ \new Voice \relative c'' {
+ \voiceOne
+ c4 a d e f1
+ }
+ \new Voice \relative c' {
+ \voiceTwo
+ es4 f g as b1
+ }
+>>
+
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "pitches, editorial-and-educational-use"
+ texidoc = "
+The @code{shapeNoteStyles} property gives you the ability to define
+various note head styles for each step of the scale (as defined by the
+key signature or the \"tonic\" property). This property requires a set
+of symbols, which can be purely arbitrary (geometrical expressions such
+as @code{triangle}, @code{cross}, @code{xcircle} etc. are allowed) or
+based on old American engraving tradition (you can use some latin note
+names as well). That said, if you're trying to imitate old American
+song books, you may also want to try LilyPond's predefined note head
+styles, through shortcut commands such as @code{\\aikenHeads} or
+@code{\\sacredHarpHeads}. This example shows different ways to obtain
+shape note heads, and demonstrates the ability to transpose a melody
+without losing the correspondence between harmonic functions and note
+head styles.
+" }
+% begin verbatim
+fragment = {
+ \key c \major
+ c2 d e f g a b c
+}
+
+\score {
+ \new Staff {
+ \transpose c d
+ \relative {
+ \set shapeNoteStyles = ##(do re mi fa #f la ti)
+ \fragment
+ }
+
+ \relative {
+ \set shapeNoteStyles = ##(cross triangle fa #f mensural xcircle diamond)
+ \fragment
+ }
+ }
+}
+
+++ /dev/null
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "pitches, editorial-and-educational-use"
- texidoc = "
-The @code{shapeNoteStyles} property gives you the ability to define
-various notehead styles for each step of the scale (as defined by the
-key signature or the \"tonic\" property). This property requires a set
-of symbols, which can be purely arbitrary (geometrical expressions such
-as @code{triangle}, @code{cross}, @code{xcircle} etc. are allowed) or
-based on old American engraving tradition (you can use some latin note
-names as well). That said, if you're trying to imitate old American
-song books, you may also want to try LilyPond's predefined notehead
-styles, through shortcut commands such as @code{\\aikenHeads} or
-@code{\\sacredHarpHeads}. This example shows different ways to obtain
-shape noteheads, and demonstrates the ability to transpose a melody
-without losing the correspondence between harmonic functions and
-notehead styles.
-" }
-% begin verbatim
-fragment = {
- \key c \major
- c2 d e f g a b c
-}
-
-\score {
- \new Staff {
- \transpose c d
- \relative {
- \set shapeNoteStyles = ##(do re mi fa #f la ti)
- \fragment
- }
-
- \relative {
- \set shapeNoteStyles = ##(cross triangle fa #f mensural xcircle diamond)
- \fragment
- }
- }
-}
-
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "rhythms"
+ texidoc = "
+Beams can be subdivided automatically. By setting the property
+@code{subdivideBeams}, beams are subdivided at beat positions (as
+specified in @code{beatLength}).
+" }
+% begin verbatim
+\score {
+ \new Staff \relative {
+ << {
+ \voiceOne
+ \set subdivideBeams = ##t
+ b'32[ a g f c' b a g b^"subdivide beams" a g f c' b a g]
+ \oneVoice
+ }
+ \new Voice {
+ \voiceTwo
+ b32_"default"[ a g f c' b a g b a g f c' b a g]
+ } >>
+ \set beatLength = #(ly:make-moment 1 8)
+ b32^"beatLength 1 8"[ a g f c' b a g]
+ \set beatLength = #(ly:make-moment 1 16)
+ b32^"beatLength 1 16"[ a g f c' b a g]
+ }
+}
+
texidoc = "
In a simple time signature of 2/2 or 4/4, 8th notes are beamed by
default as two sets of four. Using a macro which overrides the
-autobeaming behaviour, this snippet changes the beaming to quarter note
+autobeaming behavior, this snippet changes the beaming to quarter note
beats.
" }
% begin verbatim
% Automatic beams two per two in 4/4 or 2/2 time signature
-% _____
-% Default | | | |
-% _ _
-% I want | | | |
+% _____
+% Default | | | |
+% _ _
+% Required | | | |
% The good way adapted from David Bobroff
g8^\markup { without the macro } g g g g g g g |
g g g g4 g8 g g |
}
- %Use the macro
+ %Use the macro
\new Staff \relative c'' {
\time 4/4
\qbeam
white box will not overlap any other grob.
" }
% begin verbatim
-{
+\relative {
\override TextScript #'extra-offset = #'(2 . 4)
- c'2-\markup { \whiteout \pad-markup #0.5 foo } c
+ c2-\markup { \whiteout \pad-markup #0.5 "middle C" } c
}
positioning-segno-and-coda-with-line-break.ly
-adding-and-extra-staff-at-a-line-break.ly
beams-across-line-breaks.ly
+adding-an-extra-staff-at-a-line-break.ly
+++ /dev/null
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "expressive-marks"
- texidoc = "
-Breathing signs are available in different tastes: commas (default),
-ticks, vees and \"railroad tracks\" (caesura).
-" }
-% begin verbatim
-{
- %% Modern notation:
- \new Staff {
- \relative c'' {
- \key es \major \time 3/4
-
- %% this bar contains no \breathe
- <<
- { g4 as g } \\
- { es4 bes es }
- >> |
-
- %% by default, \breathe uses the rcomma, just as if saying:
- %% \override BreathingSign #'text =
- % #(make-musicglyph-markup "scripts.rcomma")
- <<
- { g4 as g } \\
- { es4 \breathe bes es }
- >> |
-
- %% rvarcomma and lvarcomma are variations of the default rcomma
- %% and lcomma
-
- %% N.B.: must use Staff context here, since we start a Voice below
- \override Staff.BreathingSign #'text =
- #(make-musicglyph-markup "scripts.rvarcomma")
- <<
- { g4 as g } \\
- { es4 \breathe bes es }
- >> |
-
- %% wedge
- \override BreathingSign #'text =
- #(make-musicglyph-markup "scripts.upbow")
- es8 d es f g8 \breathe f |
-
- %% caesura
- \override BreathingSign #'text =
- #(make-musicglyph-markup "scripts.caesura.curved")
- es8[ d] \breathe es[ f g f] |
- es2 r4 \bar "||" \break
- }
- }
-}
-
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "expressive-marks"
+ texidoc = "
+Breathing signs are available in different tastes: commas (default),
+ticks, vees and \"railroad tracks\" (caesura).
+" }
+% begin verbatim
+\new Staff \relative c'' {
+ \key es \major
+ \time 3/4
+ % this bar contains no \breathe
+ << { g4 as g } \\ { es4 bes es } >> |
+ % Modern notation:
+ % by default, \breathe uses the rcomma, just as if saying:
+ % \override BreathingSign #'text = #(make-musicglyph-markup "scripts.rcomma")
+ << { g4 as g } \\ { es4 \breathe bes es } >> |
+
+ % rvarcomma and lvarcomma are variations of the default rcomma and lcomma
+ % N.B.: must use Staff context here, since we start a Voice below
+ \override Staff.BreathingSign #'text = #(make-musicglyph-markup "scripts.rvarcomma")
+ << { g4 as g } \\ { es4 \breathe bes es } >> |
+
+ % vee
+ \override BreathingSign #'text = #(make-musicglyph-markup "scripts.upbow")
+ es8[ d es f g] \breathe f |
+
+ % caesura
+ \override BreathingSign #'text = #(make-musicglyph-markup "scripts.caesura.curved")
+ es8[ d] \breathe es[ f g f] |
+ es2 r4 \bar "||"
+}
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% Do not edit this file; it is auto-generated from input/new
%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "expressive-marks"
- texidoc = "
-In order to make parts of a crescendo hairpin invisible, the following
-method is used: A white rectangle is drawn on top of the respective
-part of the crescendo hairpin, making it invisible. The rectangle is
-defined as postscript code within a text markup.
-
-In order to fine-tune the position and size of the markup, the number
-preceding the \"setgray\" in the postscript definition can be set to a
-value <1 making it grey. The two numbes before the \"scale\" in the
-postscript code are responsible for the width and height of the
-rectangle, the two numbers before the \"translate\" change the x- and
-y-origin of the rectangle.
-
-Make sure to put the Hairpin in a lower layer than the Text Markup to
-actually draw the rectangle above the hairpin.
-" }
-% begin verbatim
-% Version specific to 2.10; fails under 2.11 due to rest position -np
-
-\score
-{
- \relative c' {
- << {
- \dynamicUp
- \override DynamicLineSpanner #'staff-padding = #4
- r2 r16 c'8.\pp r4
- } \\ {
- \override DynamicLineSpanner #'layer = #0
- des,2~\mf \<
- \override TextScript #'layer = #2
- des16_\markup {
- \postscript #"1.9 -4.5 translate 5 4 scale 1 setgray 0 0 moveto 0 1
- lineto 1 1 lineto 1 0 lineto 0 0 lineto fill" }
- r8. des4~ des16-> \sff
- }
- >>
- }
- \layout { ragged-right = ##t}
-}
+\version "2.11.38"\r
+\r
+\header {\r
+ doctitle = "Broken crescendo hairpin"\r
+ lsrtags = "expressive-marks"\r
+ texidoc = "\r
+In order to make parts of a crescendo hairpin invisible, the following\r
+method is used: A white rectangle is drawn on top of the respective\r
+part of the crescendo hairpin, making it invisible. The rectangle is\r
+defined as postscript code within a text markup.\r
+\r
+To fine-tune the position and size of the markup, the number\r
+preceding @code{setgray} in the postscript definition can be set to a\r
+value <1 making it grey. The two numbers before @code{scale} in the\r
+postscript code are responsible for the width and height of the\r
+rectangle, the two numbers before @code{translate} change the x- and\r
+y-origin of the rectangle. \r
+\r
+Make sure to put the hairpin in a lower layer than the text markup to\r
+actually draw the rectangle above the hairpin. \r
+" }\r
+\r
+\score {\r
+ \relative c' {\r
+ << {\r
+ \dynamicUp\r
+ \override DynamicLineSpanner #'staff-padding = #4\r
+ r2 r16 c'8.\pp r4\r
+ } \\ {\r
+ \override DynamicLineSpanner #'layer = #0\r
+ des,2\mf\< ~\r
+ \override TextScript #'layer = #2\r
+ des16_\markup {\r
+ \postscript #"1.9 -8 translate 5 4 scale 1 setgray 0 0 moveto 0 1\r
+ lineto 1 1 lineto 1 0 lineto 0 0 lineto fill"\r
+ }\r
+ r8. des4 ~ des16->\sff\r
+ } >>\r
+ }\r
+ \layout { ragged-right = ##t }\r
+}\r
lsrtags = "expressive-marks, text"
texidoc = "
This example provides a function to typeset a hairpin (de)crescendo
-with some additional text below it, such as \"molto\" or \"poco\".The
+with some additional text below it, such as \"molto\" or \"poco\". The
example also illustrates how to modify the way an object is normally
printed, using some Scheme code.
" }
% begin verbatim
-hairpinWithCenteredText = #(define-music-function
- (parser location text) (markup?)
+hairpinWithCenteredText = #(define-music-function (parser location text) (markup?)
#{
-\override Voice.Hairpin #'stencil = #(lambda (grob)
- (ly:stencil-aligned-to
- (ly:stencil-combine-at-edge
- (ly:stencil-aligned-to (ly:hairpin::print grob) X CENTER)
- Y
- DOWN
- (ly:stencil-aligned-to (ly:text-interface::print grob) X CENTER))
- X LEFT))
-\override Voice.Hairpin #'text = $text
+ \override Voice.Hairpin #'stencil = #(lambda (grob)
+ (ly:stencil-aligned-to
+ (ly:stencil-combine-at-edge
+ (ly:stencil-aligned-to (ly:hairpin::print grob) X CENTER)
+ Y DOWN
+ (ly:stencil-aligned-to (ly:text-interface::print grob) X CENTER))
+ X LEFT))
+ \override Voice.Hairpin #'text = $text
#})
-
hairpinMolto = \hairpinWithCenteredText \markup { \italic "molto" }
-hairpinMore = \hairpinWithCenteredText \markup { \bigger "moltissimo" }
+hairpinMore = \hairpinWithCenteredText \markup { \bigger "moltissimo" }
-\new Staff {
- \hairpinMolto c'2\< c'2\f
- \hairpinMore c'2\< c'2\f
+{
+ \hairpinMolto c'2\< c'2\f
+ \hairpinMore c'2\< c'2\f
}
-
(ly:music-property m 'tweaks)))
m)
-\relative c'' { d4^\flageolet_\markup { default size } d4_\flageolet
- c4^\smallFlageolet_\markup { smaller } c4_\smallFlageolet
+\relative c'' {
+ d4^\flageolet_\markup { default size } d4_\flageolet
+ c4^\smallFlageolet_\markup { smaller } c4_\smallFlageolet
}
\header {
lsrtags = "simultaneous-notes, editorial-and-educational-use, tweaks-and-overrides"
texidoc = "
-Individual noteheads in a chord can be modified with the @code{\\tweak}
-command inside a chord, by altering the @code{'font-size} property.
+Individual note heads in a chord can be modified with the
+@code{\\tweak} command inside a chord, by altering the
+@code{'font-size} property.
Inside the chord (within the brackets @code{< >}), before the note to
The code for the chord example shown: @code{}
" }
% begin verbatim
+\layout { ragged-right = ##t }
\relative {
<\tweak #'font-size #+2 c e g c \tweak #'font-size #-2 e>1^\markup { A tiny e }_\markup { A big c }
}
-\layout { ragged-right = ##t }
-
doctitle = "Changing form of multi-measure rests"
lsrtags = "rhythms,tweaks-and-overrides"
texidoc = "
-If there are 10 or fewer measures of rest, LilyPond prints
+If there are ten or fewer measures of rests, LilyPond prints
a series of longa and breve rests (called in German
-Kirchenpausen - church rests) within the staff and
-prints a simple line otherwise. This default number of 10
+\"Kirchenpausen\" - church rests) within the staff and
+prints a simple line otherwise. This default number of ten
may be changed by an override:
"}
% begin verbatim
\relative c'' {
-\compressFullBarRests
-R1*2 | R1*5 | R1*9
-\override MultiMeasureRest #'expand-limit = 3
-R1*2 | R1*5 | R1*9
+ \compressFullBarRests
+ R1*2 | R1*5 | R1*9
+ \override MultiMeasureRest #'expand-limit = 3
+ R1*2 | R1*5 | R1*9
}
-
lsrtags = "rhythms"
texidoc = "
By default, only the numerator of the tuplet number is printed over the
-tuplet bracket, i.e. the denominator of the argument to the
+tuplet bracket, i.e., the denominator of the argument to the
@code{\\times} command. Alternatively, num:den of the tuplet number may
be printed, or the tuplet number may be suppressed altogether.
" }
lsrtags = "rhythms, contexts-and-engravers"
texidoc = "
The @code{measureLength} property, together with
-@code{measurePosition}, determines when a barline is needed. However,
+@code{measurePosition}, determines when a bar line is needed. However,
when using @code{\\compressMusic}, the scaling of durations makes it
difficult to change time signatures without making a mess of it.
Therefore, @code{measureLength} has to be set manually, using the
-@code{ly:make-moment} callback. The second argument has to be the same
-as the second argument of @code{\\compressMusic}.
+@code{ly:make-moment} callback. The second argument must be the same as
+the second argument of @code{\\compressMusic}.
" }
% begin verbatim
\layout {
Note that changing the glyph, the position of the clef, or the
octavation, does not in itself change the position of subsequent notes
on the staff: the position of middle C must also be specified to do
-this. The positional parameters are relative to the staff centre line,
-positive numbers displacing upwards, counting 1 for each line and
+this. The positional parameters are relative to the staff center line,
+positive numbers displacing upwards, counting one for each line and
space. The @code{clefOctavation} value would normally be set to 7, -7,
15 or -15, but other values are valid.
new line by default. If the warning clef at the end of the previous
line is not required it can be suppressed by setting the @code{Staff}
property @code{explicitClefVisibility} to the value
-@code{end-of-line-invisible}. The default behaviour can be recovered
+@code{end-of-line-invisible}. The default behavior can be recovered
with @code{\\unset Staff.explicitClefVisibility}.
The following examples show the possibilities when setting these
% Here we go back to the normal clef:
- \set Staff.middleCPosition = #4
+ \set Staff.middleCPosition = #0
c'
}
\header {
lsrtags = "expressive-marks, text"
texidoc = "
-Some dynamics may involve text indications (such as \"più forte\",
-\"piano subito\", etc.). They can be produced using a @code{\\markup}
-block.
+Some dynamics may involve text indications (such as \"più forte\" or
+\"piano subito\"). They can be produced using a @code{\\markup} block.
" }
% begin verbatim
-\layout { ragged-right = ##t }
-
-piuf = \markup { \italic "più" \dynamic "f" }
+piuF = \markup { \italic "più" \dynamic "f" }
\relative c'' {
- c2
- c-\piuf
+ c2 c-\piuF
}
solos, as they won't be indicated. In such cases, you may simply want
to use standard LilyPond polyphony. This snippet presents the three
ways two parts can be printed on a same staff: standard polyphony,
-@code{\\partcombine} whitout texts, and @code{\\partcombine} with texts.
+@code{\\partcombine} without texts, and @code{\\partcombine} with texts.
as compound time signatures (e.g. \"3/8 + 2/8\"), which combine two or
more inequal metrics. LilyPond can make such music quite easy to read
and play, by explicitly printing the compound time signatures and
-adapting the automatic beaming behaviour. (You can even add graphic
+adapting the automatic beaming behavior. (You can even add graphic
measure grouping indications; see the appropriate snippet in this
database.)
" }
\header {
lsrtags = "expressive-marks"
texidoc = "
-Use a glissando without final note. Contemporary glissando!
+A contemporary glissando without a final note can be typeset using a
+hidden note and cadenza timing.
" }
% begin verbatim
\relative c'' {
\time 3/4
\override Glissando #'style = #'zigzag
c4 c
- \cadenzaOn c\glissando \hideNotes c,, \unHideNotes \cadenzaOff
+ \cadenzaOn c\glissando \hideNotes c,, \unHideNotes \cadenzaOff
\bar "|"
}
-
-\addlyrics { Use cadenzaOn glissando hideNotes }
-\addlyrics { unHideNotes cadenzaOff, skip_and_\bar \skip 4 }
-
creating-blank-staves.ly
chant-or-psalms-notation.ly
-adding-and-extra-staff-at-a-line-break.ly
+adding-a-figured-bass-above-or-below-the-notes.ly
+adding-an-extra-staff-at-a-line-break.ly
adding-an-extra-staff.ly
mensurstriche-layout-bar-lines-between-the-staves.ly
changing-time-signatures-inside-a-polymetric-section-using--compressmusic.ly
engravers-one-by-one.ly
-adding-a-figured-bass-above-or-below-the-notes.ly
+use-square-bracket-at-the-start-of-a-staff-group.ly
vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
nesting-staves.ly
\header {
lsrtags = "rhythms, tweaks-and-overrides"
texidoc = "
-The default behaviour of tuplet-bracket visibility is to print a
-bracket unless there is a beam of the same length as the tuplet. To
-control the visibility of tuplet brackets, you can set the property
-@code{TupletBracket #'bracket-visibility} to either @code{##t} (always
-print a bracket), @code{##f} (never print a bracket) or
-@code{#'if-no-beam} (only print a bracket if there is no beam).
+The default behavior of tuplet-bracket visibility is to print a bracket
+unless there is a beam of the same length as the tuplet. To control the
+visibility of tuplet brackets, set the property @code{TupletBracket
+#'bracket-visibility} to either @code{##t} (always print a bracket),
+@code{##f} (never print a bracket) or @code{#'if-no-beam} (only print a
+bracket if there is no beam).
" }
% begin verbatim
mus = \relative c'' {
In music that contains many occurrences of the same sequence of notes
at different pitches, you can use the following music function. It
takes a note, of which the pitch is used. The supporting Scheme
-functions were borrowed from the Tips and Tricks document in the
-manual. This example creates the rhythm used throughout Mars, from
-Gustav Holst's The Planets.
+functions were borrowed from the \"Tips and tricks\" document in the
+manual for version 2.10. This example creates the rhythm used
+throughout Mars, from Gustav Holst's The Planets.
" }
% begin verbatim
#(define (make-note-req p d)
@code{Clef_engraver} and the @code{Bar_engraver}.
" }
% begin verbatim
-\header {
- tagline = ""
-}
-
#(set-global-staff-size 20)
\score {
indent = 0\in
\context {
\Staff
- \remove Time_signature_engraver
- \remove Clef_engraver
- \remove Bar_engraver
+ \remove "Time_signature_engraver"
+ \remove "Clef_engraver"
+ \remove "Bar_engraver"
}
\context {
\Score
- \remove Bar_number_engraver
+ \remove "Bar_number_engraver"
}
}
}
\paper {
#(set-paper-size "letter")
- raggedlastbottom = ##f
- linewidth = 7.5\in
- leftmargin = 0.5\in
- bottommargin = 0.25\in
- topmargin = 0.25\in
+ ragged-last-bottom = ##f
+ line-width = 7.5\in
+ left-margin = 0.5\in
+ bottom-margin = 0.25\in
+ top-margin = 0.25\in
}
#:fontsize 2 "(" #:hspace -0.8 #:dynamic "f" #:normal-text #:italic
#:fontsize 2 ")"
)))
-
-\score {
- { c''\parenF c'' c'' \dynamicUp c''\parenF }
+{
+ c''4\parenF c'' c'' \dynamicUp c''\parenF
}
-
Custodes may be engraved in various styles.
" }
% begin verbatim
-\layout {
- \context {
- \Staff
- \consists Custos_engraver
- }
- ragged-right = ##t
-}
-
-{
- \override Staff.Custos #'neutral-position = #4
-
- \override Staff.Custos #'style = #'hufnagel
- c'1^"hufnagel"
- \break < d' a' f''>1
+\layout { ragged-right = ##t }
- \override Staff.Custos #'style = #'medicaea
- c'1^"medicaea"
- \break < d' a' f''>1
-
- \override Staff.Custos #'style = #'vaticana
- c'1^"vaticana"
- \break < d' a' f''>1
-
- \override Staff.Custos #'style = #'mensural
- c'1^"mensural"
- \break < d' a' f''>1
+\new Staff \with { \consists "Custos_engraver" } \relative c' {
+ \override Staff.Custos #'neutral-position = #4
+
+ \override Staff.Custos #'style = #'hufnagel
+ c1^"hufnagel" \break
+ <d a' f'>
+
+ \override Staff.Custos #'style = #'medicaea
+ c^"medicaea" \break
+ <d a' f'>
+
+ \override Staff.Custos #'style = #'vaticana
+ c^"vaticana" \break
+ <d a' f'>
+
+ \override Staff.Custos #'style = #'mensural
+ c^"mensural" \break
+ <d a' f'>
}
-
\header {
lsrtags = "vocal-music, piano-music, strings, midi"
texidoc = "
-Problem: How to know which MidiInstrument would be best for your
-composition? Solution: A Lilypond demo file.
-" }
-% begin verbatim
-%\version "2.11.38"
+Problem: How to know which @code{midiInstrument} would be best for your
+composition?Solution: A LilyPond demo file.
-basemelodie = { c'4. \mf g c'16 b' c'' d'' | e'' d'' e'' f'' g''4 g'''4 r | r1 }
-melodie = { \tempo 4 = 150 \basemelodie }
+" }
+% begin verbatim
\header {
title = "Demo of all midi sounds"
- arranger = "Myself"
+ arranger = "Myself "
}
-\score {
+basemelodie = \relative c' {
+ c4. \mf g c16 b' c d |
+ e d e f g4 g'4 r |
+ r1
+}
+melodie = { \tempo 4 = 150 \basemelodie }
+
+\score {
\new Staff <<
\new Voice { \melodie
- } %Voice
- >> %Staff
- \layout { }
-} %score
+ }
+ >>
+ \layout { }
+}
\score {
\new Staff <<
- \tempo 4 = 180
- %\set Staff.instrumentName="S/A"
+ %\set Staff.instrumentName= "S/A"
%\set Staff.midiMinimumVolume = #0.2
%\set Staff.midiMaximumVolume = #0.4
%\set Voice.dynamicAbsoluteVolumeFunction = #0.6
\new Voice { r \mf
- \set Staff.midiInstrument="acoustic grand" \melodie
- \set Staff.midiInstrument="bright acoustic" \melodie
- \set Staff.midiInstrument="electric grand" \melodie
- \set Staff.midiInstrument="honky-tonk" \melodie
- \set Staff.midiInstrument="electric piano 1" \melodie
- \set Staff.midiInstrument="electric piano 2" \melodie
- \set Staff.midiInstrument="harpsichord" \melodie
- \set Staff.midiInstrument="clav" \melodie
- \set Staff.midiInstrument="celesta" \melodie
- \set Staff.midiInstrument="glockenspiel" \melodie
- \set Staff.midiInstrument="music box" \melodie
- \set Staff.midiInstrument="vibraphone" \melodie
- \set Staff.midiInstrument="marimba" \melodie
- \set Staff.midiInstrument="xylophone" \melodie
- \set Staff.midiInstrument="tubular bells" \melodie
- \set Staff.midiInstrument="dulcimer" \melodie
- \set Staff.midiInstrument="drawbar organ" \melodie
- \set Staff.midiInstrument="percussive organ" \melodie
- \set Staff.midiInstrument="rock organ" \melodie
- \set Staff.midiInstrument="church organ" \melodie
- \set Staff.midiInstrument="reed organ" \melodie
- \set Staff.midiInstrument="accordion" \melodie
- \set Staff.midiInstrument="harmonica" \melodie
- \set Staff.midiInstrument="concertina" \melodie
- \set Staff.midiInstrument="acoustic guitar (nylon)" \melodie
- \set Staff.midiInstrument="acoustic guitar (steel)" \melodie
- \set Staff.midiInstrument="electric guitar (jazz)" \melodie
- \set Staff.midiInstrument="electric guitar (clean)" \melodie
- \set Staff.midiInstrument="electric guitar (muted)" \melodie
- \set Staff.midiInstrument="overdriven guitar" \melodie
- \set Staff.midiInstrument="distorted guitar" \melodie
- \set Staff.midiInstrument="acoustic bass" \melodie
- \set Staff.midiInstrument="electric bass (finger)" \melodie
- \set Staff.midiInstrument="electric bass (pick)" \melodie
- \set Staff.midiInstrument="fretless bass" \melodie
- \set Staff.midiInstrument="slap bass 1" \melodie
- \set Staff.midiInstrument="slap bass 2" \melodie
- \set Staff.midiInstrument="synth bass 1" \melodie
- \set Staff.midiInstrument="synth bass 2" \melodie
- \set Staff.midiInstrument="violin" \melodie
- \set Staff.midiInstrument="viola" \melodie
- \set Staff.midiInstrument="cello" \melodie
- \set Staff.midiInstrument="contrabass" \melodie
- \set Staff.midiInstrument="tremolo strings" \melodie
- \set Staff.midiInstrument="pizzicato strings" \melodie
- \set Staff.midiInstrument="orchestral strings" \melodie
- \set Staff.midiInstrument="timpani" \melodie
- \set Staff.midiInstrument="string ensemble 1" \melodie
- \set Staff.midiInstrument="string ensemble 2" \melodie
- \set Staff.midiInstrument="synthstrings 1" \melodie
- \set Staff.midiInstrument="synthstrings 2" \melodie
- \set Staff.midiInstrument="choir aahs" \melodie
- \set Staff.midiInstrument="voice oohs" \melodie
- \set Staff.midiInstrument="synth voice" \melodie
- \set Staff.midiInstrument="orchestra hit" \melodie
- \set Staff.midiInstrument="trumpet" \melodie
- \set Staff.midiInstrument="trombone" \melodie
- \set Staff.midiInstrument="tuba" \melodie
- \set Staff.midiInstrument="muted trumpet" \melodie
- \set Staff.midiInstrument="french horn" \melodie
- \set Staff.midiInstrument="brass section" \melodie
- \set Staff.midiInstrument="synthbrass 1" \melodie
- \set Staff.midiInstrument="synthbrass 2" \melodie
- \set Staff.midiInstrument="soprano sax" \melodie
- \set Staff.midiInstrument="alto sax" \melodie
- \set Staff.midiInstrument="tenor sax" \melodie
- \set Staff.midiInstrument="baritone sax" \melodie
- \set Staff.midiInstrument="oboe" \melodie
- \set Staff.midiInstrument="english horn" \melodie
- \set Staff.midiInstrument="bassoon" \melodie
- \set Staff.midiInstrument="clarinet" \melodie
- \set Staff.midiInstrument="piccolo" \melodie
- \set Staff.midiInstrument="flute" \melodie
- \set Staff.midiInstrument="recorder" \melodie
- \set Staff.midiInstrument="pan flute" \melodie
- \set Staff.midiInstrument="blown bottle" \melodie
- \set Staff.midiInstrument="shakuhachi" \melodie
- \set Staff.midiInstrument="whistle" \melodie
- \set Staff.midiInstrument="ocarina" \melodie
- \set Staff.midiInstrument="lead 1 (square)" \melodie
- \set Staff.midiInstrument="lead 2 (sawtooth)" \melodie
- \set Staff.midiInstrument="lead 3 (calliope)" \melodie
- \set Staff.midiInstrument="lead 4 (chiff)" \melodie
- \set Staff.midiInstrument="lead 5 (charang)" \melodie
- \set Staff.midiInstrument="lead 6 (voice)" \melodie
- \set Staff.midiInstrument="lead 7 (fifths)" \melodie
- \set Staff.midiInstrument="lead 8 (bass+lead)" \melodie
- \set Staff.midiInstrument="pad 1 (new age)" \melodie
- \set Staff.midiInstrument="pad 2 (warm)" \melodie
- \set Staff.midiInstrument="pad 3 (polysynth)" \melodie
- \set Staff.midiInstrument="pad 4 (choir)" \melodie
- \set Staff.midiInstrument="pad 5 (bowed)" \melodie
- \set Staff.midiInstrument="pad 6 (metallic)" \melodie
- \set Staff.midiInstrument="pad 7 (halo)" \melodie
- \set Staff.midiInstrument="pad 8 (sweep)" \melodie
- \set Staff.midiInstrument="fx 1 (rain)" \melodie
- \set Staff.midiInstrument="fx 2 (soundtrack)" \melodie
- \set Staff.midiInstrument="fx 3 (crystal)" \melodie
- \set Staff.midiInstrument="fx 4 (atmosphere)" \melodie
- \set Staff.midiInstrument="fx 5 (brightness)" \melodie
- \set Staff.midiInstrument="fx 6 (goblins)" \melodie
- \set Staff.midiInstrument="fx 7 (echoes)" \melodie
- \set Staff.midiInstrument="fx 8 (sci-fi)" \melodie
- \set Staff.midiInstrument="sitar" \melodie
- \set Staff.midiInstrument="banjo" \melodie
- \set Staff.midiInstrument="shamisen" \melodie
- \set Staff.midiInstrument="koto" \melodie
- \set Staff.midiInstrument="kalimba" \melodie
- \set Staff.midiInstrument="bagpipe" \melodie
- \set Staff.midiInstrument="fiddle" \melodie
- \set Staff.midiInstrument="shanai" \melodie
- \set Staff.midiInstrument="tinkle bell" \melodie
- \set Staff.midiInstrument="agogo" \melodie
- \set Staff.midiInstrument="steel drums" \melodie
- \set Staff.midiInstrument="woodblock" \melodie
- \set Staff.midiInstrument="taiko drum" \melodie
- \set Staff.midiInstrument="melodic tom" \melodie
- \set Staff.midiInstrument="synth drum" \melodie
- \set Staff.midiInstrument="reverse cymbal" \melodie
- \set Staff.midiInstrument="guitar fret noise" \melodie
- \set Staff.midiInstrument="breath noise" \melodie
- \set Staff.midiInstrument="seashore" \melodie
- \set Staff.midiInstrument="bird tweet" \melodie
- \set Staff.midiInstrument="telephone ring" \melodie
- \set Staff.midiInstrument="helicopter" \melodie
- \set Staff.midiInstrument="applause" \melodie
- \set Staff.midiInstrument="gunshot" \melodie
- } %Voice
- >> %Staff
+ \set Staff.midiInstrument = "acoustic grand" \melodie
+ \set Staff.midiInstrument = "bright acoustic" \melodie
+ \set Staff.midiInstrument = "electric grand" \melodie
+ \set Staff.midiInstrument = "honky-tonk" \melodie
+ \set Staff.midiInstrument = "electric piano 1" \melodie
+ \set Staff.midiInstrument = "electric piano 2" \melodie
+ \set Staff.midiInstrument = "harpsichord" \melodie
+ \set Staff.midiInstrument = "clav" \melodie
+ \set Staff.midiInstrument = "celesta" \melodie
+ \set Staff.midiInstrument = "glockenspiel" \melodie
+ \set Staff.midiInstrument = "music box" \melodie
+ \set Staff.midiInstrument = "vibraphone" \melodie
+ \set Staff.midiInstrument = "marimba" \melodie
+ \set Staff.midiInstrument = "xylophone" \melodie
+ \set Staff.midiInstrument = "tubular bells" \melodie
+ \set Staff.midiInstrument = "dulcimer" \melodie
+ \set Staff.midiInstrument = "drawbar organ" \melodie
+ \set Staff.midiInstrument = "percussive organ" \melodie
+ \set Staff.midiInstrument = "rock organ" \melodie
+ \set Staff.midiInstrument = "church organ" \melodie
+ \set Staff.midiInstrument = "reed organ" \melodie
+ \set Staff.midiInstrument = "accordion" \melodie
+ \set Staff.midiInstrument = "harmonica" \melodie
+ \set Staff.midiInstrument = "concertina" \melodie
+ \set Staff.midiInstrument = "acoustic guitar (nylon)" \melodie
+ \set Staff.midiInstrument = "acoustic guitar (steel)" \melodie
+ \set Staff.midiInstrument = "electric guitar (jazz)" \melodie
+ \set Staff.midiInstrument = "electric guitar (clean)" \melodie
+ \set Staff.midiInstrument = "electric guitar (muted)" \melodie
+ \set Staff.midiInstrument = "overdriven guitar" \melodie
+ \set Staff.midiInstrument = "distorted guitar" \melodie
+ \set Staff.midiInstrument = "acoustic bass" \melodie
+ \set Staff.midiInstrument = "electric bass (finger)" \melodie
+ \set Staff.midiInstrument = "electric bass (pick)" \melodie
+ \set Staff.midiInstrument = "fretless bass" \melodie
+ \set Staff.midiInstrument = "slap bass 1" \melodie
+ \set Staff.midiInstrument = "slap bass 2" \melodie
+ \set Staff.midiInstrument = "synth bass 1" \melodie
+ \set Staff.midiInstrument = "synth bass 2" \melodie
+ \set Staff.midiInstrument = "violin" \melodie
+ \set Staff.midiInstrument = "viola" \melodie
+ \set Staff.midiInstrument = "cello" \melodie
+ \set Staff.midiInstrument = "contrabass" \melodie
+ \set Staff.midiInstrument = "tremolo strings" \melodie
+ \set Staff.midiInstrument = "pizzicato strings" \melodie
+ \set Staff.midiInstrument = "orchestral strings" \melodie
+ \set Staff.midiInstrument = "timpani" \melodie
+ \set Staff.midiInstrument = "string ensemble 1" \melodie
+ \set Staff.midiInstrument = "string ensemble 2" \melodie
+ \set Staff.midiInstrument = "synthstrings 1" \melodie
+ \set Staff.midiInstrument = "synthstrings 2" \melodie
+ \set Staff.midiInstrument = "choir aahs" \melodie
+ \set Staff.midiInstrument = "voice oohs" \melodie
+ \set Staff.midiInstrument = "synth voice" \melodie
+ \set Staff.midiInstrument = "orchestra hit" \melodie
+ \set Staff.midiInstrument = "trumpet" \melodie
+ \set Staff.midiInstrument = "trombone" \melodie
+ \set Staff.midiInstrument = "tuba" \melodie
+ \set Staff.midiInstrument = "muted trumpet" \melodie
+ \set Staff.midiInstrument = "french horn" \melodie
+ \set Staff.midiInstrument = "brass section" \melodie
+ \set Staff.midiInstrument = "synthbrass 1" \melodie
+ \set Staff.midiInstrument = "synthbrass 2" \melodie
+ \set Staff.midiInstrument = "soprano sax" \melodie
+ \set Staff.midiInstrument = "alto sax" \melodie
+ \set Staff.midiInstrument = "tenor sax" \melodie
+ \set Staff.midiInstrument = "baritone sax" \melodie
+ \set Staff.midiInstrument = "oboe" \melodie
+ \set Staff.midiInstrument = "english horn" \melodie
+ \set Staff.midiInstrument = "bassoon" \melodie
+ \set Staff.midiInstrument = "clarinet" \melodie
+ \set Staff.midiInstrument = "piccolo" \melodie
+ \set Staff.midiInstrument = "flute" \melodie
+ \set Staff.midiInstrument = "recorder" \melodie
+ \set Staff.midiInstrument = "pan flute" \melodie
+ \set Staff.midiInstrument = "blown bottle" \melodie
+ \set Staff.midiInstrument = "shakuhachi" \melodie
+ \set Staff.midiInstrument = "whistle" \melodie
+ \set Staff.midiInstrument = "ocarina" \melodie
+ \set Staff.midiInstrument = "lead 1 (square)" \melodie
+ \set Staff.midiInstrument = "lead 2 (sawtooth)" \melodie
+ \set Staff.midiInstrument = "lead 3 (calliope)" \melodie
+ \set Staff.midiInstrument = "lead 4 (chiff)" \melodie
+ \set Staff.midiInstrument = "lead 5 (charang)" \melodie
+ \set Staff.midiInstrument = "lead 6 (voice)" \melodie
+ \set Staff.midiInstrument = "lead 7 (fifths)" \melodie
+ \set Staff.midiInstrument = "lead 8 (bass+lead)" \melodie
+ \set Staff.midiInstrument = "pad 1 (new age)" \melodie
+ \set Staff.midiInstrument = "pad 2 (warm)" \melodie
+ \set Staff.midiInstrument = "pad 3 (polysynth)" \melodie
+ \set Staff.midiInstrument = "pad 4 (choir)" \melodie
+ \set Staff.midiInstrument = "pad 5 (bowed)" \melodie
+ \set Staff.midiInstrument = "pad 6 (metallic)" \melodie
+ \set Staff.midiInstrument = "pad 7 (halo)" \melodie
+ \set Staff.midiInstrument = "pad 8 (sweep)" \melodie
+ \set Staff.midiInstrument = "fx 1 (rain)" \melodie
+ \set Staff.midiInstrument = "fx 2 (soundtrack)" \melodie
+ \set Staff.midiInstrument = "fx 3 (crystal)" \melodie
+ \set Staff.midiInstrument = "fx 4 (atmosphere)" \melodie
+ \set Staff.midiInstrument = "fx 5 (brightness)" \melodie
+ \set Staff.midiInstrument = "fx 6 (goblins)" \melodie
+ \set Staff.midiInstrument = "fx 7 (echoes)" \melodie
+ \set Staff.midiInstrument = "fx 8 (sci-fi)" \melodie
+ \set Staff.midiInstrument = "sitar" \melodie
+ \set Staff.midiInstrument = "banjo" \melodie
+ \set Staff.midiInstrument = "shamisen" \melodie
+ \set Staff.midiInstrument = "koto" \melodie
+ \set Staff.midiInstrument = "kalimba" \melodie
+ \set Staff.midiInstrument = "bagpipe" \melodie
+ \set Staff.midiInstrument = "fiddle" \melodie
+ \set Staff.midiInstrument = "shanai" \melodie
+ \set Staff.midiInstrument = "tinkle bell" \melodie
+ \set Staff.midiInstrument = "agogo" \melodie
+ \set Staff.midiInstrument = "steel drums" \melodie
+ \set Staff.midiInstrument = "woodblock" \melodie
+ \set Staff.midiInstrument = "taiko drum" \melodie
+ \set Staff.midiInstrument = "melodic tom" \melodie
+ \set Staff.midiInstrument = "synth drum" \melodie
+ \set Staff.midiInstrument = "reverse cymbal" \melodie
+ \set Staff.midiInstrument = "guitar fret noise" \melodie
+ \set Staff.midiInstrument = "breath noise" \melodie
+ \set Staff.midiInstrument = "seashore" \melodie
+ \set Staff.midiInstrument = "bird tweet" \melodie
+ \set Staff.midiInstrument = "telephone ring" \melodie
+ \set Staff.midiInstrument = "helicopter" \melodie
+ \set Staff.midiInstrument = "applause" \melodie
+ \set Staff.midiInstrument = "gunshot" \melodie
+ }
+ >>
\midi { }
-} %score
-
-
+}
" }
% begin verbatim
\header {
-copyright = "copyright"
-title = "title"
-subtitle = "subtitle"
-composer = "composer"
-arranger = "arranger"
-instrument = "instrument"
-metre = "metre"
-opus = "opus"
-piece = "piece"
-poet = "poet"
-texidoc = "All header fields with special meanings."
+ copyright = "copyright"
+ title = "title"
+ subtitle = "subtitle"
+ composer = "composer"
+ arranger = "arranger"
+ instrument = "instrument"
+ metre = "metre"
+ opus = "opus"
+ piece = "piece"
+ poet = "poet"
+ texidoc = "All header fields with special meanings."
copyright = "public domain"
enteredby = "jcn"
source = "urtext"
-
}
-
\score {
- \relative c'' { c1 c1 c1 c1 }
+ \relative c'' { c1 c c c }
}
\score {
- \relative c'' { c1 c1 c1 c1 }
-
- \header {
-
- title = "localtitle"
- subtitle = "localsubtitle"
- composer = "localcomposer"
- arranger = "localarranger"
- instrument = "localinstrument"
- metre = "localmetre"
- opus = "localopus"
- piece = "localpiece"
- poet = "localpoet"
- copyright = "localcopyright"
- }
+ \relative c'' { c1 c c c }
+ \header {
+ title = "localtitle"
+ subtitle = "localsubtitle"
+ composer = "localcomposer"
+ arranger = "localarranger"
+ instrument = "localinstrument"
+ metre = "localmetre"
+ opus = "localopus"
+ piece = "localpiece"
+ poet = "localpoet"
+ copyright = "localcopyright"
+ }
}
-
If there is only one staff in one of the staff types @code{ChoirStaff},
@code{InnerChoirStaff}, @code{InnerStaffGroup} or @code{StaffGroup},
the bracket and the starting bar line will not be displayed as standard
-behaviour. This can be changed with:
+behavior. This can be changed with:
@code{\\override [staffcontext].SystemStartBracket #'collapse-height =
" }
% begin verbatim
+\layout {
+ ragged-right = ##t
+ indent = 0\cm
+}
+
+\score {
+ \new StaffGroup <<
+ % Must be lower than your actual amount off staff lines
+ \override StaffGroup.SystemStartBracket #'collapse-height = #1
+ \override Score.SystemStartBar #'collapse-height = #1
+ \new Staff {
+ c'4 d' e' f'
+ }
+ >>
+}
+
\score {
-\new StaffGroup <<
- % Must be lower than your actual amount off staff lines
- \override StaffGroup.SystemStartBracket #'collapse-height = #1
- \override Score.SystemStartBar #'collapse-height = #1
- \new Staff {
- c'4 d' e' f'
- }
- >>
- }
- {
- \new PianoStaff <<
- \override PianoStaff.SystemStartBrace #'collapse-height = #1
- \override Score.SystemStartBar #'collapse-height = #1
- \new Staff {
- c'4 d' e' f'
- }
- >>
- }
- \layout {
- ragged-right = ##t
- indent = 0\cm
- }
+ \new PianoStaff <<
+ \override PianoStaff.SystemStartBrace #'collapse-height = #1
+ \override Score.SystemStartBar #'collapse-height = #1
+ \new Staff {
+ c'4 d' e' f'
+ }
+ >>
+}
\header {
lsrtags = "pitches"
texidoc = "
-In early 20th century works, starting with Schönberg, Berg and Webern
+In early 20th century works, starting with Schoenberg, Berg and Webern
(the \"Second\" Viennese school), every pitch in the twelve-tone scale
has to be regarded as equal, without any hierarchy such as the
classical (tonal) degrees. Therefore, these composers print one
accidental for each note, even at natural pitches, to emphasize their
new approach to music theory and language. This snippet shows how to
-achieve such notation rules with LilyPond.
+achieve such notation rules.
" }
% begin verbatim
webernAccidentals = {
creating-blank-staves.ly
making-some-staff-lines-thicker-than-the-others.ly
+applying-note-head-styles-depending-on-the-step-of-the-scale.ly
changing-the-appearance-of-a-slur-from-solid-to-dotted-or-dashed.ly
default-direction-of-stems-on-the-center-line-of-the-staff.ly
changing-a-single-notes-size-in-a-chord.ly
controlling-the-placement-of-chord-fingerings.ly
allowing-fingerings-to-be-printed-inside-the-staff.ly
blanking-staff-lines-using-the--whiteout-command.ly
-applying-notehead-styles-depending-on-the-step-of-the-scale.ly
grid-lines-changing-their-appearance.ly
" }
% begin verbatim
\relative c' {
- <c e g>2~ <c e g> |
+ <c e g>2 ~ <c e g> |
\override TieColumn #'tie-configuration =
#'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
- <c e g>~ <c e g> |
+ <c e g> ~ <c e g> |
}
\header {
lsrtags = "rhythms"
texidoc = "
-This example shows how to specify how long each of the tuplets
-contained within the brackets after @code{\\times} should last. Many
-consecutive tuplets can then be placed within a single @code{\\times @{
-... @}} expression, thus saving typing.
+The property @code{tupletSpannerDuration} sets how long each of the
+tuplets contained within the brackets after @code{\\times} should last.
+Many consecutive tuplets can then be placed within a single
+@code{\\times} expression, thus saving typing.
In the example, two triplets are shown, while @code{\\times} was
entered only once.
" }
% begin verbatim
\relative {
+ \time 2/4
\set tupletSpannerDuration = #(ly:make-moment 1 4)
\times 2/3 { c8 c c c c c }
}
creating-text-spanners.ly
adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rythms..ly
changing-the-appearance-of-a-slur-from-solid-to-dotted-or-dashed.ly
-caesura-railtracks-with-fermata.ly
-breathing-sign.ly
+breathing-signs.ly
creating-real-parenthesized-dynamics.ly
-center-text-below-hairpin-dynamics.ly
+caesura-railtracks-with-fermata.ly
contemporary-glissando.ly
adding-parentheses-around-an-expressive-mark-or-chordal-note.ly
line-arrows.ly
changing--flageolet-mark-size.ly
piano-template-with-centered-dynamics.ly
broken-crescendo-hairpin.ly
+center-text-below-hairpin-dynamics.ly
\header {
lsrtags = "text, vocal-music"
texidoc = "
-To format single lyrics syllables, you can simply use \\markup @{ ....
-@} on these lyrics!
+To format individual syllables in lyrics, use @code{\\markup @{ ....
+@}} on these lyrics.
" }
% begin verbatim
% Tip taken from http://lists.gnu.org/archive/html/lilypond-user/2007-12/msg00215.html
\header {
- title = "Markup can be used inside lyrics!"
+ title = "Markup can be used inside lyrics!"
}
-melody = \relative c'' { c4 c c c }
-lyr = \lyricmode {
- Lyrics \markup { \italic can } \markup {\with-color #red contain }
- \markup {\fontsize #8 \bold "Markup!" }
+mel = \relative c'' { c4 c c c }
+lyr = \lyricmode {
+ Lyrics \markup { \italic "can" } \markup {\with-color #red "contain" }
+ \markup {\fontsize #8 \bold "Markup!" }
}
-\context Staff <<
- \context Voice = "mel" << \melody >>
- \context Lyrics \lyricsto "mel" \lyr
+<<
+ \context Voice = melody \mel
+ \context Lyrics \lyricsto melody \lyr
>>
\header {
lsrtags = "pitches"
texidoc = "
-This Scheme-based snippet allows you to generate 24 random notes (or as
-many as you want), based on the current time (or any randomish number
-you might wish to specify instead, so you can obtain the same random
-notes each time): i.e. to get different random notes patterns, just
-change this number.
+This Scheme-based snippet generates 24 random notes (or as many as
+required), based on the current time (or any randomish number you might
+wish to specify instead, so you can obtain the same random notes each
+time): i.e., to get different random notes patterns, just change this
+number.
" }
% begin verbatim
\score {
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "staff-notation"
+ texidoc = "
+The @code{\\markup} command is quite versatile. In this snippet, it
+contains a @code{\\score} block instead of texts or marks.
+" }
+% begin verbatim
+tuning = \markup {
+ \score {
+ \new Staff \with { \remove "Time_signature_engraver" }
+ {
+ \clef bass <c, g, d g>1
+ }
+ \layout { ragged-right = ##t }
+ }
+}
+
+\header {
+ title = "Solo Cello Suites"
+ subtitle = "Suite IV"
+ subsubtitle = \markup { "Originalstimmung:" \general-align #Y #CENTER \tuning }
+}
+
+\relative {
+ \time 4/8
+ \times 2/3 { c'8 d e } \times 2/3 { c d e }
+ \times 2/3 { c8 d e } \times 2/3 { c d e }
+ g8 a8 g8 a
+ g8 a8 g8 a
+}
+++ /dev/null
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
-%% This file is in the public domain.
-\version "2.11.38"
-
-\header {
- lsrtags = "staff-notation"
- texidoc = "
-The @code{\\markup} command is quite versatile. In this snippet, it
-contains a @code{\\score} block instead of texts or marks.
-" }
-% begin verbatim
-tuning = \markup {
- \score {
- \new Staff \with { \remove Time_signature_engraver }
- {
- \clef bass <c, g, d g>1
- }
- \layout { ragged-right = ##t }
- }
-}
-
-\header {
- title = "Solo Cello Suites"
- subtitle = "Suite IV"
- subsubtitle = \markup { "Originalstimmung:" \general-align #Y #CENTER \tuning }
-}
-
-\relative {
- \time 4/8
- \times 2/3 { c'8 d e } \times 2/3 { c d e }
- \times 2/3 { c8 d e } \times 2/3 { c d e }
- g8 a8 g8 a
- g8 a8 g8 a
-}
%% Do not edit this file; it is auto-generated from input/new
%% This file is in the public domain.
\version "2.11.38"
-\layout { ragged-right= ##t }
+\layout { ragged-right = ##t }
\header {
doctitle = "Makam"
lsrtags = "pitches"
- texidoc = "Makam is Turkish type of melody that uses 1/9 tone
+ texidoc = "Makam is a type of melody from Turkey using 1/9th-tone
microtonal alterations."
}
% begin verbatim
(gc . ,(ly:make-pitch -1 4 KOMA))
(ac . ,(ly:make-pitch -1 5 KOMA))
(bc . ,(ly:make-pitch -1 6 KOMA))
-
+
(cb . ,(ly:make-pitch -1 0 BAKIYE))
(db . ,(ly:make-pitch -1 1 BAKIYE))
(eb . ,(ly:make-pitch -1 2 BAKIYE))
(gb . ,(ly:make-pitch -1 4 BAKIYE))
(ab . ,(ly:make-pitch -1 5 BAKIYE))
(bb . ,(ly:make-pitch -1 6 BAKIYE))
-
+
(ck . ,(ly:make-pitch -1 0 KUCUK))
(dk . ,(ly:make-pitch -1 1 KUCUK))
(ek . ,(ly:make-pitch -1 2 KUCUK))
(gk . ,(ly:make-pitch -1 4 KUCUK))
(ak . ,(ly:make-pitch -1 5 KUCUK))
(bk . ,(ly:make-pitch -1 6 KUCUK))
-
+
(cbm . ,(ly:make-pitch -1 0 BUYUKMUCENNEB))
(dbm . ,(ly:make-pitch -1 1 BUYUKMUCENNEB))
(ebm . ,(ly:make-pitch -1 2 BUYUKMUCENNEB))
(gbm . ,(ly:make-pitch -1 4 BUYUKMUCENNEB))
(abm . ,(ly:make-pitch -1 5 BUYUKMUCENNEB))
(bbm . ,(ly:make-pitch -1 6 BUYUKMUCENNEB))
-
+
;; f for flat.
(cfc . ,(ly:make-pitch -1 0 (- KOMA)))
(dfc . ,(ly:make-pitch -1 1 (- KOMA)))
(gfb . ,(ly:make-pitch -1 4 (- BAKIYE)))
(afb . ,(ly:make-pitch -1 5 (- BAKIYE)))
(bfb . ,(ly:make-pitch -1 6 (- BAKIYE)))
-
+
(cfk . ,(ly:make-pitch -1 0 (- KUCUK)))
(dfk . ,(ly:make-pitch -1 1 (- KUCUK)))
(efk . ,(ly:make-pitch -1 2 (- KUCUK)))
(gfk . ,(ly:make-pitch -1 4 (- KUCUK)))
(afk . ,(ly:make-pitch -1 5 (- KUCUK)))
(bfk . ,(ly:make-pitch -1 6 (- KUCUK)))
-
+
(cfbm . ,(ly:make-pitch -1 0 (- BUYUKMUCENNEB)))
(dfbm . ,(ly:make-pitch -1 1 (- BUYUKMUCENNEB)))
(efbm . ,(ly:make-pitch -1 2 (- BUYUKMUCENNEB)))
(gfbm . ,(ly:make-pitch -1 4 (- BUYUKMUCENNEB)))
(afbm . ,(ly:make-pitch -1 5 (- BUYUKMUCENNEB)))
(bfbm . ,(ly:make-pitch -1 6 (- BUYUKMUCENNEB)))
-
)
-%% set pitch names.
-pitchnames = \makamPitchNames
+% Set pitch names.
+pitchnames = \makamPitchNames
#(ly:parser-set-note-names parser makamPitchNames)
-makamGlyphs = #'((1 . "accidentals.doublesharp")
+makamGlyphs = #'(
+ (1 . "accidentals.doublesharp")
(8/9 . "accidentals.sharp.slashslashslash.stemstem")
(5/9 . "accidentals.sharp.slashslashslash.stem")
(4/9 . "accidentals.sharp")
)
\relative {
-
+
%{ define alteration <-> symbol mapping. The following glyphs are available.
accidentals.sharp
accidentals.sharp.slashslash.stem
accidentals.flatflat.slash
accidentals.doublesharp
%}
-
- \override Accidental #'glyph-name-alist = \makamGlyphs
+ \override Accidental #'glyph-name-alist = \makamGlyphs
\override Staff.KeySignature #'glyph-name-alist = \makamGlyphs
- \set Staff.keySignature = #'(
- (3 . 4/9)
- (6 . -1/9))
+ \set Staff.keySignature = #'((3 . 4/9) (6 . -1/9))
- c cc db fk gbm gfc gfb efk dfbm
+ c cc db fk
+ gbm gfc gfb efk
+ fk db cc c
}
%% Do not edit this file; it is auto-generated from input/new
%% This file is in the public domain.
-\version "2.11.38"
-\layout { ragged-right= ##t }
-\header {
- doctitle = "Making an object invisible with the transparent property"
- lsrtags = "rhythms,tweaks-and-overrides"
- texidoc = "
-Setting the @code{transparent} property will cause an object to be
-printed in `invisible ink': the object is not printed, but all its
-other behavior is retained. The object still takes up space, it takes
-part in collisions, and slurs, and ties and beams can be attached to it.
-
-
-The snippet demonstrates how to connect different voices using ties.
-Normally, ties only connect two notes in the same voice. By
-introducing a tie in a different voice, and blanking the first up-stem
-in that voice, the tie appears to cross voices.
-" }
-% begin verbatim
-\relative c'' <<
- {
- \once \override Stem #'transparent = ##t
- b8~ b8\noBeam
- } \\ {
- b[ g8]
- }
->>
+\version "2.11.38"\r
+\layout { ragged-right = ##t }\r
+\header {\r
+ doctitle = "Making an object invisible with the transparent property"\r
+ lsrtags = "rhythms,tweaks-and-overrides"\r
+ texidoc = "\r
+Setting the @code{transparent} property will cause an object to be\r
+printed in \"invisible ink\": the object is not printed, but all its\r
+other behavior is retained. The object still takes up space, it takes\r
+part in collisions, and slurs, ties and beams can be attached to it.\r
+\r
+\r
+The snippet demonstrates how to connect different voices using ties. \r
+Normally, ties only connect two notes in the same voice. By\r
+introducing a tie in a different voice, and blanking the first up-stem\r
+in that voice, the tie appears to cross voices. To prevent the blanked stem's\r
+flag from interfering with tie positioning, the stem is extended.\r
+" }\r
+\r
+\relative c'' {\r
+ \time 2/4\r
+ << {\r
+ \once \override Stem #'transparent = ##t\r
+ \once \override Stem #'length = #8\r
+ b8 ~ b\noBeam\r
+ \once \override Stem #'transparent = ##t\r
+ \once \override Stem #'length = #8\r
+ g ~ g\noBeam\r
+ } \\ {\r
+ b g g e\r
+ } >>\r
+}\r
For pedagogical purposes, you may want to make one staff line thicker
(e.g. the middle line, to emphasize the line of the G clef). This can
be achieved by adding extra lines very close to the line you want to
-make thicker, using the #'line-positions property in the StaffSymbol
-context.
+make thicker, using the @code{'line-positions} property of the
+@code{StaffSymbol} object.
" }
% begin verbatim
-\score {
- \new Staff{
- \override Staff.StaffSymbol #'line-positions =#'(-4 -2 -0.2 0 0.2 2 4 )
- d'4 e' f' g'
- }
+{
+ \override Staff.StaffSymbol #'line-positions = #'(-4 -2 -0.2 0 0.2 2 4)
+ d'4 e' f' g'
}
@code{\\override} command.
" }
% begin verbatim
-global = {\override Staff.BarLine #'transparent = ##t
- s1 s
- %the final bar line is not interupted
- \once \override Staff.BarLine #'transparent = ##f
- \bar "|."}
-\new StaffGroup
-\relative c'' <<
- \new Staff {<< \global { c1 c } >>}
- \new Staff {<< \global { c c } >>}
->>
+global = {
+ \override Staff.BarLine #'transparent = ##t
+ s1 s
+ % the final bar line is not interrupted
+ \revert Staff.BarLine #'transparent
+ \bar "|."
+}
+\new StaffGroup \relative c'' {
+ <<
+ \new Staff { << \global { c1 c } >> }
+ \new Staff { << \global { c c } >> }
+ >>
+}
The commonly used @code{\\key} command sets the @code{keySignature}
property, in the @code{Staff} context.
-However, non-standard key signatures can be specified by setting this
-property directly. The format of this command is a list:
+For non-standard key signatures, you can set this property directly.
+The format of this command is a list:
@code{ \\set Staff.keySignature = #`(((octave . step) . alter) ((octave
. step) . alter) ...) } where, for each element in the list,
% begin verbatim
\relative c' {
\set Staff.keySignature = #`(((0 . 3) . ,SHARP) ((0 . 5) . ,FLAT) ((0 . 6) . ,FLAT))
- c d e fis aes bes c2
+ c4 d e fis
+ aes bes c2
}
lsrtags = "pitches, text"
texidoc = "
Internally, the @code{set-octavation} function sets the properties
-@code{ottavation} (e.g., to @code{\"8va\"} or @code{\"8vb\"}) and
-@code{middleCPosition}. To override the text of the bracket, set
-@code{ottavation} after invoking @code{set-octavation}, like in the
-following example.
+@code{ottavation} (for example, to @code{\"8va\"} or @code{\"8vb\"})
+and @code{middleCPosition}. To override the text of the bracket, set
+@code{ottavation} after invoking @code{set-octavation}.
" }
" }
% begin verbatim
upper = \relative c'' {
- \clef treble
- \key c \major
- \time 4/4
-
- a b c d
- }
-
- lower = \relative c {
- \clef bass
- \key c \major
- \time 4/4
-
- a2 c
- }
-
- \score {
- \new PianoStaff <<
- \set PianoStaff.instrumentName = "Piano "
- \new Staff = "upper" \upper
- \new Staff = "lower" \lower
- >>
- \layout { }
- \midi { }
- }
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a b c d
+
+}
+lower = \relative c {
+ \clef bass
+ \key c \major
+ \time 4/4
+
+ a2 c
+
+}
+
+\score {
+ \new PianoStaff <<
+ \set PianoStaff.instrumentName = "Piano "
+ \new Staff = "upper" \upper
+ \new Staff = "lower" \lower
+ >>
+ \layout { }
+ \midi { }
+}
" }
% begin verbatim
upper = \relative c'' {
- \clef treble
- \key c \major
- \time 4/4
-
- a b c d
- }
-
- lower = \relative c {
- \clef bass
- \key c \major
- \time 4/4
-
- a2 c
- }
-
- text = \lyricmode {
- Aaa Bee Cee Dee
- }
-
- \score {
- \new GrandStaff <<
- \new Staff = upper { \new Voice = "singer" \upper }
- \new Lyrics \lyricsto "singer" \text
- \new Staff = lower {
- \clef bass
- \lower
- }
- >>
- \layout {
- \context { \GrandStaff \accepts "Lyrics" }
- \context { \Lyrics \consists "Bar_engraver" }
- }
- \midi { }
- }
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a b c d
+
+}
+lower = \relative c {
+ \clef bass
+ \key c \major
+ \time 4/4
+
+ a2 c
+
+}
+
+text = \lyricmode {
+ Aaa Bee Cee Dee
+}
+
+\score {
+ \new GrandStaff <<
+ \new Staff = upper { \new Voice = "singer" \upper }
+ \new Lyrics \lyricsto "singer" \text
+ \new Staff = lower { \lower }
+ >>
+ \layout {
+ \context {
+ \GrandStaff
+ \accepts "Lyrics"
+ }
+ \context {
+ \Lyrics
+ \consists "Bar_engraver"
+ }
+ }
+ \midi { }
+}
" }
% begin verbatim
melody = \relative c'' {
- \clef treble
- \key c \major
- \time 4/4
-
- a b c d
- }
-
- text = \lyricmode {
- Aaa Bee Cee Dee
- }
-
- upper = \relative c'' {
- \clef treble
- \key c \major
- \time 4/4
-
- a b c d
- }
-
- lower = \relative c {
- \clef bass
- \key c \major
- \time 4/4
-
- a2 c
- }
-
- \score {
- <<
- \new Voice = "mel" {
- \autoBeamOff
- \melody
- }
- \new Lyrics \lyricsto mel \text
-
- \new PianoStaff <<
- \new Staff = "upper" \upper
- \new Staff = "lower" \lower
- >>
- >>
- \layout {
- \context { \RemoveEmptyStaffContext }
- }
- \midi { }
- }
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a b c d
+
+}
+text = \lyricmode {
+ Aaa Bee Cee Dee
+}
+
+upper = \relative c'' {
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a b c d
+
+}
+
+lower = \relative c {
+ \clef bass
+ \key c \major
+ \time 4/4
+
+ a2 c
+
+}
+
+\score {
+ <<
+ \new Voice = "mel" { \autoBeamOff \melody }
+ \new Lyrics \lyricsto mel \text
+
+ \new PianoStaff <<
+ \new Staff = "upper" \upper
+ \new Staff = "lower" \lower
+ >>
+ >>
+ \layout {
+ \context { \RemoveEmptyStaffContext }
+ }
+ \midi { }
+}
makam.ly
-ambiti-multiple-voices.ly
-applying-notehead-styles-depending-on-the-step-of-the-scale.ly
+adding-ambitus-per-voice.ly
+applying-note-head-styles-depending-on-the-step-of-the-scale.ly
transposing-pitches-with-minimum-accidentals-smart-transpose.ly
ottava-text.ly
preventing-extra-naturals-from-being-automatically-added.ly
+ambitus-with-multiple-voices.ly
generating-random-notes.ly
-quoting-another-voice-with-transposition.ly
-adding-ambiti-per-voice.ly
clefs-commonly-tweaked-properties.ly
dodecaphonic-style-accidentals-for-each-note-including-naturals.ly
preventing-natural-signs-from-being-printed-when-the-key-signature-changes.ly
+quoting-another-voice-with-transposition.ly
creating-a-sequence-of-notes-on-various-pitches.ly
non-traditional-key-signatures.ly
%% Do not edit this file; it is auto-generated from input/new
%% This file is in the public domain.
\version "2.11.42"
-\layout { ragged-right= ##t }
+\layout { ragged-right = ##t }
\header {
doctitle = "Positioning multi-measure rests"
lsrtags = "rhythms,tweaks-and-overrides"
"}
% begin verbatim
\relative c'' {
-% Multi-measure rests by default are set under the 2nd line
-R1
-% They can be moved with an override
-\override MultiMeasureRest #'staff-position = #-2
-R1
-% A value of 0 is the default position;
-% the following trick moves the rest to the center line
-\override MultiMeasureRest #'staff-position = #-0.01
-R1
-% Multimeasure rests in odd-numbered voices are under the top line
-<< {R1} \\ {a1} >>
-% Multi-measure rests in even-numbered voices are under the bottom line
-<< {c1} \\ {R1} >>
-% They remain separated even in empty bars
-<< {R1} \\ {R1} >>
-% This brings them together even though there are two voices
-\compressFullBarRests
-<<
- \revert MultiMeasureRest #'staff-position
- {R1*3}
-\\
- \revert MultiMeasureRest #'staff-position
- {R1*3}
->>
+ % Multi-measure rests by default are set under the second line
+ R1
+ % They can be moved with an override
+ \override MultiMeasureRest #'staff-position = #-2
+ R1
+ % A value of 0 is the default position;
+ % the following trick moves the rest to the center line
+ \override MultiMeasureRest #'staff-position = #-0.01
+ R1
+ % Multi-measure rests in odd-numbered voices are under the top line
+ << { R1 } \\ { a1 } >>
+ % Multi-measure rests in even-numbered voices are under the bottom line
+ << { c1 } \\ { R1 } >>
+ % They remain separated even in empty bars
+ << { R1 } \\ { R1 } >>
+ % This brings them together even though there are two voices
+ \compressFullBarRests
+ <<
+ \revert MultiMeasureRest #'staff-position
+ { R1*3 }
+ \\
+ \revert MultiMeasureRest #'staff-position
+ { R1*3 }
+ >>
}
-
texidoc = "
If you want to place an exiting segno sign and add text like \"D.S. al
Coda\" next to it where usually the staff lines are you can use this
-snippet. The coda will resume in a new line. Theres a variation
+snippet. The coda will resume in a new line. There is a variation
documented in this snippet, where the coda will remain on the same
line.
" }
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "text"
+ texidoc = "
+Marks can be printed at the end of the current line, instead of the
+beginning of the following line. This is particularly useful when a
+mark has to be added at the end of a score -- when there is no next
+line.
+
+In such cases, the right end of the mark has to be aligned with the
+final barline, as demonstrated on the second line of this example.
+" }
+% begin verbatim
+\relative c'' {
+ \override Score.RehearsalMark #'break-visibility = #begin-of-line-invisible
+ g2 c d, a'
+ \mark \default
+ \break
+
+ \override Score.RehearsalMark #'self-alignment-X = #right
+ g b, c1 \bar "||"
+ \mark "D.C. al Fine"
+}
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "text"
+ texidoc = "
+Although text marks are normally only printed above the topmost staff,
+they may also be printed on every staff.
+" }
+% begin verbatim
+{
+ \new Score \with {
+ \remove "Mark_engraver"
+ }
+ <<
+ \new Staff \with {
+ \consists "Mark_engraver"
+ }
+ { c''1 \mark "molto" c'' }
+ \new Staff \with {
+ \consists "Mark_engraver"
+ }
+ { c'1 \mark "molto" c' }
+ >>
+}
lsrtags = "rhythms, percussion"
texidoc = "
In the following snippet, two parts have a completely different time
-signature, yet remain synchronized. The barlines can't be printed at
+signature, yet remain synchronized. The bar lines can't be printed at
the @code{Score} level anymore, so you have to remove the
@code{Barline_engraver} and put it in the @code{Staff} context.
" }
doctitle = "Quoting another voice with transposition"
lsrtags = "pitches,staff-notation"
texidoc = "Quotations take into account the transposition of both
-source and target. In this example, all instruments play sounding
-central C, the target is a instrument in F. The target part may be
-@code{\\transpose}d. In this case, all the pitches (including the
-quoted ones) will transposed as well."
+source and target. In this example, all instruments play sounding
+middle C; the target is an instrument in F. The target part may be
+transposed using @code{\\transpose}. In this case, all the pitches (including the
+quoted ones) are transposed."
}
% begin verbatim
-\addQuote clarinet {
- \transposition bes
- d'16 d'16 d'8
- d'16 d'16 d'8
- d'16 d'16 d'8
- d'16 d'16 d'8
+\addQuote clarinet {
+ \transposition bes
+ \repeat unfold 8 { d'16 d'16 d'8 }
}
-\addQuote sax {
- \transposition es'
- a8 a a a a a a a
+\addQuote sax {
+ \transposition es'
+ \repeat unfold 16 { a8 }
}
quoteTest = {
- \transposition f % french horn
-
- g'4
- << \quoteDuring #"clarinet" { \skip 4 } s4^"clar" >>
- << \quoteDuring #"sax" { \skip 4 } s4^"sax" >>
+ % french horn
+ \transposition f
+ g'4
+ << \quoteDuring #"clarinet" { \skip 4 } s4^"clar." >>
+ << \quoteDuring #"sax" { \skip 4 } s4^"sax." >>
+ g'4
}
-<< \quoteTest
- \new Staff
- << \transpose c' d' \quoteTest
- s4_"up 1 tone"
- >>
->>
+{
+ \set Staff.instrumentName = \markup \center-align { "Horn" "in F" }
+ \quoteTest
+ \transpose c' d' << \quoteTest s4_"up a tone" >>
+}
indent = 0.0
\context {
\Staff
- \remove Time_signature_engraver
+ \remove "Time_signature_engraver"
}
}
modifying-tuplet-bracket-length.ly
changing-time-signatures-inside-a-polymetric-section-using--compressmusic.ly
making-an-object-invisible-with-the-transparent-property.ly
+automatic-beam-subdivisions.ly
changing-the-tuplet-number.ly
entering-several-tuplets-using-only-one--times-command.ly
conducting-signs,-measure-grouping-signs.ly
c c c
\set Score.voltaSpannerDuration = #(ly:make-moment 3 4)
\repeat volta 5 { d d d }
- \alternative { { e e e f f f }
- { g g g }
+ \alternative {
+ { e e e f f f }
+ { g g g }
}
}
" }
% begin verbatim
melody = \relative c' {
- \clef treble
- \key c \major
- \time 4/4
-
- a b c d
- }
-
- text = \lyricmode {
- Aaa Bee Cee Dee
- }
-
- harmonies = \chordmode {
- a2 c2
- }
-
- \score {
- <<
- \new ChordNames {
- \set chordChanges = ##t
- \harmonies
- }
- \new Voice = "one" {
- \autoBeamOff
- \melody
- }
- \new Lyrics \lyricsto "one" \text
- >>
- \layout { }
- \midi { }
- }
+ \clef treble
+ \key c \major
+ \time 4/4
+
+ a4 b c d
+}
+
+text = \lyricmode {
+ Aaa Bee Cee Dee
+}
+
+harmonies = \chordmode {
+ a2 c
+}
+
+\score {
+ <<
+ \new ChordNames {
+ \set chordChanges = ##t
+ \harmonies
+ }
+ \new Voice = "one" { \autoBeamOff \melody }
+ \new Lyrics \lyricsto "one" \text
+ >>
+ \layout { }
+ \midi { }
+}
creating-blank-staves.ly
-time-signature-in-parentheses.ly
+incipit.ly
mensurstriche-layout-bar-lines-between-the-staves.ly
-adding-and-extra-staff-at-a-line-break.ly
+adding-ambitus-per-voice.ly
changing-the-number-of-lines-in-a-staff.ly
-incipit.ly
+adding-an-extra-staff-at-a-line-break.ly
display-bracket-with-only-one-staff-in-a-system.ly
-inserting-score-fragments-above-the-staff,-as-markups.ly
+time-signature-in-parentheses.ly
adding-an-extra-staff.ly
changing-the-staff-size.ly
+use-square-bracket-at-the-start-of-a-staff-group.ly
quoting-another-voice-with-transposition.ly
-adding-ambiti-per-voice.ly
clefs-commonly-tweaked-properties.ly
quoting-another-voice.ly
volta-multi-staff.ly
+inserting-score-fragments-above-a-staff,-as-markups.ly
nesting-staves.ly
non-traditional-key-signatures.ly
making-some-staff-lines-thicker-than-the-others.ly
-combining-dynamics-with-markup-texts.ly
creating-text-spanners.ly
creating-real-parenthesized-dynamics.ly
-markup-lines.ly
-three-sided-box.ly
center-text-below-hairpin-dynamics.ly
-ottava-text.ly
demonstrating-all-headers.ly
-utf-8.ly
+printing-marks-at-the-end-of-a-line-or-a-score.ly
changing-the-default-text-font-family.ly
combining-two-parts-on-the-same-staff.ly
aligning-and-centering-instrument-names.ly
-vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
outputting-the-version-number.ly
-blanking-staff-lines-using-the--whiteout-command.ly
formatting-lyrics-syllables.ly
how-to-put-ties-between-syllables-in-lyrics.ly
+combining-dynamics-with-markup-texts.ly
+vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
+aligning-marks-with-various-notation-objects.ly
+markup-lines.ly
+printing-marks-on-every-staff.ly
+three-sided-box.ly
piano-template-with-centered-lyrics.ly
+utf-8.ly
+blanking-staff-lines-using-the--whiteout-command.ly
+ottava-text.ly
adjusting-lyrics-vertical-spacing.ly
aligning-lyrics.ly
doctitle = "Transposing music with minimum accidentals"
lsrtags = "pitches"
texidoc = "There is a way to enforce enharmonic modifications for
-notes in order to have the minimum number of accidentals. In that
-case, ``Double accidentals should be removed, as well as E-sharp
-(-> F), bC (-> B), bF (-> E), B-sharp (-> C).'', as proposed by a
-request for a new feature. In this manner, the most natural
-enharmonic notes are chosen in this example. "
-}
+notes in order to have the minimum number of accidentals. In this
+case, the following rules apply:
+
+\"Double accidentals should be removed, as well as E sharp (-> F),
+C flat (-> B), F flat (-> E) and B sharp (-> C)\".
+
+In this manner, the most natural enharmonic notes are chosen.
+"}
% begin verbatim
-#(define (naturalise-pitch p)
+#(define (naturalize-pitch p)
(let* ((o (ly:pitch-octave p))
(a (* 4 (ly:pitch-alteration p)))
; alteration, a, in quarter tone steps, for historical reasons
(n (ly:pitch-notename p)))
-
(cond
((and (> a 1) (or (eq? n 6) (eq? n 2)))
(set! a (- a 2))
((and (< a -1) (or (eq? n 0) (eq? n 3)))
(set! a (+ a 2))
(set! n (- n 1))))
-
(cond
((> a 2) (set! a (- a 4)) (set! n (+ n 1)))
((< a -2) (set! a (+ a 4)) (set! n (- n 1))))
-
(if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7))))
(if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7))))
-
(ly:make-pitch o n (/ a 4))))
-#(define (naturalise music)
+#(define (naturalize music)
(let* ((es (ly:music-property music 'elements))
(e (ly:music-property music 'element))
(p (ly:music-property music 'pitch)))
-
(if (pair? es)
(ly:music-set-property!
music 'elements
- (map (lambda (x) (naturalise x)) es)))
-
+ (map (lambda (x) (naturalize x)) es)))
(if (ly:music? e)
(ly:music-set-property!
music 'element
- (naturalise e)))
-
+ (naturalize e)))
(if (ly:pitch? p)
(begin
- (set! p (naturalise-pitch p))
+ (set! p (naturalize-pitch p))
(ly:music-set-property! music 'pitch p)))
-
music))
-music = \relative c' { c4 d e f g a b c }
-
-naturaliseMusic =
+naturalizeMusic =
#(define-music-function (parser location m)
(ly:music?)
- (naturalise m))
+ (naturalize m))
+
+music = \relative c' { c4 d e g }
\score {
- \new Staff {
- \transpose c ais \music
- \naturaliseMusic \transpose c ais \music
- \break
+ \new Staff {
+ \transpose c ais \music
+ \naturalizeMusic \transpose c ais \music
\transpose c deses \music
- \naturaliseMusic \transpose c deses \music
+ \naturalizeMusic \transpose c deses \music
}
- \layout { ragged-right = ##t}
+ \layout { ragged-right = ##t }
}
-
-
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.38"
+
+\header {
+ lsrtags = "staff-notation, contexts-and-engravers"
+ texidoc = "
+The system start delimiter @code{SystemStartSquare} can be used by
+setting it explicitly in a @code{StaffGroup} or @code{ChoirStaffGroup}
+context.
+" }
+% begin verbatim
+\score {
+ \new StaffGroup { <<
+ \set StaffGroup.systemStartDelimiter = #'SystemStartSquare
+ \new Staff { c'4 d' e' f' }
+ \new Staff { c'4 d' e' f' }
+ >> }
+}
\header {
lsrtags = "tweaks-and-overrides, spacing"
texidoc = "
-By setting the Y-extent property to a fixed value (here -1.5 . 1.5), we
-force LilyPond to align every elements of the DynamicLineSpanner (text
-elements and dynamics) to a common reference point, regardless to the
-actual extent of these objects. This way, every element will be
-vertically centered, for a nicer output (you can compare the first and
-the second line in this example; the trick is only applied on the
-second line).
+By setting the @code{Y-extent} property to a fixed value, all
+@code{DynamicLineSpanner} objects (hairpins and dynamic texts) are
+aligned to a common reference point, regardless of their actual extent.
+This way, every element will be vertically centered, for a nicer output
+(you can compare the first and the second line in this example; the
+trick is only applied on the second line).
The same idea is used to align the text scripts along their baseline.
" }
% begin verbatim
-\paper { indent = 0 line-width = 5\in }
-
-music = \relative c''
-{
- c2\p^\markup { "gorgeous" } c\f^\markup { "fantastic" }
- c4\p c \f \> c c \! \p
+music = \relative c'' {
+ c2\p^\markup { "gorgeous" } c\f^\markup { "fantastic" }
+ c4\p c\f\> c c\!\p
}
-\score
{
- {
- \music \break
-
- \override DynamicLineSpanner #'staff-padding = #2.0
- \override DynamicLineSpanner #'Y-extent = #'(-1.5 . 1.5)
- \override TextScript #'Y-extent = #'(-1.5 . 1.5)
- \music
- }
+ \music \break
+ \override DynamicLineSpanner #'staff-padding = #2.0
+ \override DynamicLineSpanner #'Y-extent = #'(-1.5 . 1.5)
+ \override TextScript #'Y-extent = #'(-1.5 . 1.5)
+ \music
}
-
texidoc = "
This template is basically the same as the simple \"Vocal ensemble\"
template, with the exception that here all the lyrics lines are placed
-using alignAboveContext and alignBelowContext.
+using @code{alignAboveContext} and @code{alignBelowContext}.
" }
% begin verbatim
global = {
- \key c \major
- \time 4/4
- }
-
- sopMusic = \relative c'' {
- c4 c c8[( b)] c4
- }
- sopWords = \lyricmode {
- hi hi hi hi
- }
-
- altoMusic = \relative c' {
- e4 f d e
- }
- altoWords =\lyricmode {
- ha ha ha ha
- }
-
- tenorMusic = \relative c' {
- g4 a f g
- }
- tenorWords = \lyricmode {
- hu hu hu hu
- }
-
- bassMusic = \relative c {
- c4 c g c
- }
- bassWords = \lyricmode {
- ho ho ho ho
- }
-
- \score {
- \new ChoirStaff <<
- \new Staff = women <<
- \new Voice =
- "sopranos" { \voiceOne << \global \sopMusic >> }
- \new Voice =
- "altos" { \voiceTwo << \global \altoMusic >> }
- >>
- \new Lyrics \with {alignAboveContext=women} \lyricsto sopranos \sopWords
- \new Lyrics \with {alignBelowContext=women} \lyricsto altos \altoWords
- % we could remove the line about this with the line below, since we want
- % the alto lyrics to be below the alto Voice anyway.
- % \new Lyrics \lyricsto altos \altoWords
-
- \new Staff = men <<
- \clef bass
- \new Voice =
- "tenors" { \voiceOne <<\global \tenorMusic >> }
- \new Voice =
- "basses" { \voiceTwo <<\global \bassMusic >> }
- >>
-
- \new Lyrics \with {alignAboveContext=men} \lyricsto tenors \tenorWords
- \new Lyrics \with {alignBelowContext=men} \lyricsto basses \bassWords
- % again, we could replace the line above this with the line below.
- % \new Lyrics \lyricsto basses \bassWords
- >>
-
- \layout {
- \context {
- % a little smaller so lyrics
- % can be closer to the staff
- \Staff
- \override VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
- }
- }
- }
-
-
- \score {
- \new ChoirStaff <<
- \new Staff = women <<
- \new Voice =
- "sopranos" { \voiceOne << \global \sopMusic >> }
- \new Voice =
- "altos" { \voiceTwo << \global \altoMusic >> }
- >>
-
- \new Lyrics \with {alignAboveContext=women} \lyricsto sopranos \sopWords
- \new Lyrics \lyricsto altos \altoWords
-
- \new Staff = men <<
- \clef bass
- \new Voice =
- "tenors" { \voiceOne <<\global \tenorMusic >> }
- \new Voice =
- "basses" { \voiceTwo <<\global \bassMusic >> }
- >>
-
- \new Lyrics \with {alignAboveContext=men} \lyricsto tenors \tenorWords
- \new Lyrics \lyricsto basses \bassWords
- >>
-
- \layout {
- \context {
- % a little smaller so lyrics
- % can be closer to the staff
- \Staff
- \override VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
- }
- }
- }
+ \key c \major
+ \time 4/4
+}
+sopMusic = \relative c'' {
+ c4 c c8[( b)] c4
+}
+sopWords = \lyricmode {
+ hi hi hi hi
+}
+
+altoMusic = \relative c' {
+ e4 f d e
+}
+altoWords = \lyricmode {
+ ha ha ha ha
+}
+
+tenorMusic = \relative c' {
+ g4 a f g
+}
+tenorWords = \lyricmode {
+ hu hu hu hu
+}
+
+bassMusic = \relative c {
+ c4 c g c
+}
+bassWords = \lyricmode {
+ ho ho ho ho
+}
+
+\score {
+ \new ChoirStaff <<
+ \new Staff = women <<
+ \new Voice = "sopranos" { \voiceOne << \global \sopMusic >> }
+ \new Voice = "altos" { \voiceTwo << \global \altoMusic >> }
+ >>
+ \new Lyrics \with { alignAboveContext = women } \lyricsto sopranos \sopWords
+ \new Lyrics \with { alignBelowContext = women } \lyricsto altos \altoWords
+ % we could remove the line about this with the line below, since we want
+ % the alto lyrics to be below the alto Voice anyway.
+ % \new Lyrics \lyricsto altos \altoWords
+
+ \new Staff = men <<
+ \clef bass
+ \new Voice = "tenors" { \voiceOne << \global \tenorMusic >> }
+ \new Voice = "basses" { \voiceTwo << \global \bassMusic >> }
+ >>
+ \new Lyrics \with { alignAboveContext = men } \lyricsto tenors \tenorWords
+ \new Lyrics \with { alignBelowContext = men } \lyricsto basses \bassWords
+ % again, we could replace the line above this with the line below.
+ % \new Lyrics \lyricsto basses \bassWords
+ >>
+ \layout {
+ \context {
+ % a little smaller so lyrics
+ % can be closer to the staff
+ \Staff
+ \override VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
+ }
+ }
+}
chant-or-psalms-notation.ly
single-staff-template-with-notes-and-lyrics.ly
+adding-ambitus-per-voice.ly
skips-in-lyric-mode-2.ly
skips-in-lyric-mode.ly
-aligning-lyrics.ly
-vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
+vocal-ensemble-template-with-automatic-piano-reduction.ly
+ambitus-with-multiple-voices.ly
how-to-put-ties-between-syllables-in-lyrics.ly
-adding-ambiti-per-voice.ly
vertically-aligning-ossias-and-lyrics.ly
+vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
single-staff-template-with-notes,-lyrics,-and-chords.ly
-vocal-ensemble-template-with-automatic-piano-reduction.ly
formatting-lyrics-syllables.ly
piano-template-with-melody-and-lyrics.ly
-ambiti-multiple-voices.ly
+aligning-lyrics.ly
vocal-ensemble-template.ly
adjusting-lyrics-vertical-spacing.ly
demo-midiinstruments.ly
\description "A voice on a percussion staff."
\remove "Arpeggio_engraver"
- \consists "Multi_measure_rest_engraver"
- \consists "Text_spanner_engraver"
\consists "Grob_pq_engraver"
\remove "Note_head_line_engraver"
\remove "Fingering_engraver"
\remove "Cluster_spanner_engraver"
- \consists "Tuplet_engraver"
\consists "Skip_event_swallow_translator"
}