@cindex text items, non-empty
@cindex non-empty texts
-It is possible to place arbitrary strings of text or @ref{Text markup}
+It is possible to place arbitrary strings of text or @ref{Text markup},
above or below notes by using a string @code{c^"text"}. By default,
these indications do not influence the note spacing, but by using the
command @code{\fatText}, the widths will be taken into account
but it can also be used to put signs like coda,
segno, and fermata on a bar line. Use @code{\markup} to
access the appropriate symbol (symbols are listed in
-@ref{The Feta font})
+@ref{The Feta font}).
@lilypond[fragment,quote,ragged-right,verbatim,relative=2]
c1 \mark \markup { \musicglyph #"scripts.ufermata" }
@end lilypond
@noindent
-See @ref{Overview of text markup commands} for a list of all
+See @ref{Overview of text markup commands}, for a list of all
commands.
@code{\markup} is primarily used for @internalsref{TextScript}s,
Some situations (such as dynamic marks) have preset font-related
properties. If you are creating text in such situations, it
is advisable to cancel those properties with
-@code{normal-text}. See @ref{Overview of text markup commands}
+@code{normal-text}. See @ref{Overview of text markup commands},
for more details.
Some situations (such as dynamic marks) have preset font-related
properties. If you are creating text in such situations, it
is advisable to cancel those properties with
-@code{normal-text}. See @ref{Overview of text markup commands}
+@code{normal-text}. See @ref{Overview of text markup commands},
for more details.
@cindex make-dynamic-script
@end lilypond
@noindent
-See @ref{Text markup} for more details.
+See @ref{Text markup}, for more details.
@seealso
@end lilypond
@noindent
-See @ref{The Feta font} for a list of symbols which may be
+See @ref{The Feta font}, for a list of symbols which may be
printed with @code{\musicglyph}.
The horizontal location of rehearsal marks can be adjusted by
named normal color.
Notes in a chord cannot be colored with @code{\override}; use
-@code{\tweak} instead. See @ref{Objects connected to the input}
+@code{\tweak} instead. See @ref{Objects connected to the input},
for details.
@seealso
-This manual: @ref{Tuplets}
+This manual: @ref{Tuplets}.
@node Bar check
Accidentals and key signatures often confuse new users, because
unaltered notes get natural signs depending on the key signature. For
-more information, see @ref{Accidentals} or @ref{Accidentals and key signatures}.
+more information, see @ref{Accidentals}, or @ref{Accidentals and key signatures}.
@lilypond[quote,ragged-right,verbatim,relative=2,fragment]
\key g \major
@end lilypond
There are many more options for its layout. See @ref{Ancient time
-signatures} for more examples.
+signatures}, for more examples.
@code{\time} sets the property @code{timeSignatureFraction},
@code{beatLength} and @code{measureLength} in the @code{Timing}
When these automatic decisions are not good enough, beaming can be
entered explicitly. It is also possible to define beaming patterns
-that differ from the defaults. See @ref{Setting automatic beam behavior}
+that differ from the defaults. See @ref{Setting automatic beam behavior},
for details.
Individual notes may be marked with @code{\noBeam} to prevent them
@item
Page layout: changing the appearance of the spacing, line
breaks, and page dimensions. These modifications are discussed
-in @ref{Non-musical notation} and @ref{Spacing issues}.
+in @ref{Non-musical notation}, and @ref{Spacing issues}.
@end itemize
Internally, LilyPond uses Scheme (a LISP dialect) to provide
infrastructure. Overriding layout decisions in effect accesses the
program internals, which requires Scheme input. Scheme elements are
introduced in a @code{.ly} file with the hash mark
-@code{#}.@footnote{@ref{Scheme tutorial} contains a short tutorial
+@code{#}.@footnote{@ref{Scheme tutorial}, contains a short tutorial
on entering numbers, lists, strings, and symbols in Scheme.}
@code{NoteHead}, and @var{property} is an internal variable of the
formatting system (@q{grob property} or @q{layout property}). The latter is a
symbol, so it must be quoted. The subsection @ref{Constructing a
-tweak} explains what to fill in for @var{name}, @var{property}, and
+tweak}, explains what to fill in for @var{name}, @var{property}, and
@var{value}. Here we only discuss the functionality of this command.
The command
@end example
@noindent
-does not change color. See @ref{Displaying music expressions} for
+does not change color. See @ref{Displaying music expressions}, for
details.
@end example
Note that by @q{command-line}, we mean the command line of the
-operating system. See @ref{Converting from other formats} for
+operating system. See @ref{Converting from other formats}, for
more information about this.
The following options are supported by @command{midi2ly}.
@end example
Note that by @q{command-line}, we mean the command line of the
-operating system. See @ref{Converting from other formats} for
+operating system. See @ref{Converting from other formats}, for
more information about this.
The following options are supported by @command{etf2ly}:
files, and writes it to a .ly file. It is invoked from the command-line.
Note that by @q{command-line}, we mean the command line of the
-operating system. See @ref{Converting from other formats} for
+operating system. See @ref{Converting from other formats}, for
more information about this.
The following options are supported by @command{musicxml2ly}:
@seealso
-In this manual: @ref{Laissez vibrer ties}
+In this manual: @ref{Laissez vibrer ties}.
@node Staff switch lines
@subsection Staff switch lines
To enter lyrics with characters from non-English languages, or with
accented and special characters (such as the heart symbol or slanted quotes),
simply insert the characters directly into the input file and save
-it with utf-8 encoding. See @ref{Text encoding} for more info.
+it with utf-8 encoding. See @ref{Text encoding}, for more info.
@lilypond[quote,ragged-right,fragment,verbatim]
\relative { e4 f e d e f e2 }
note head style. Still, the note head style can be set, e.g., to
@code{vaticana_punctum} to produce punctum neumes. Similarly, a
@internalsref{Mensural_ligature_engraver} is used to automatically
-assemble mensural ligatures. See @ref{Ligatures} for how ligature
+assemble mensural ligatures. See @ref{Ligatures}, for how ligature
engravers work.
@seealso
-@ref{Note head styles} gives an overview over all available note head styles.
+@ref{Note head styles}, gives an overview over all available note head styles.
@node Ancient accidentals
@seealso
-In this manual: @ref{Pitches}, @ref{Cautionary accidentals} and
-@ref{Automatic accidentals} give a general introduction of the use of
-accidentals. @ref{Key signature} gives a general introduction of
+In this manual: @ref{Pitches}, @ref{Cautionary accidentals}, and
+@ref{Automatic accidentals}, give a general introduction of the use of
+accidentals. @ref{Key signature}, gives a general introduction of
the use of key signatures.
Program reference: @internalsref{KeySignature}.
@seealso
-In this manual: @ref{Rests} gives a general introduction into the use of
+In this manual: @ref{Rests}, gives a general introduction into the use of
rests.
@seealso
-This manual: @ref{Time signature} gives a general introduction to
+This manual: @ref{Time signature}, gives a general introduction to
the use of time signatures.
@refbugs
@ifhtml
The
@end ifhtml
-@emph{@ref{Tutorial}}
+@emph{@ref{Tutorial}},
gives a gentle introduction to typesetting music. First time
users should start here.
@item
-@emph{@ref{Putting it all together}}
+@emph{@ref{Putting it all together}},
explains some general concepts about the lilypond file format. If
you are not certain where to place a command, read this chapter!
@item
-@emph{@ref{Working on LilyPond projects}}
+@emph{@ref{Working on LilyPond projects}},
discusses practical uses of LilyPond and how to avoid some common
problems.
@item
-@emph{@ref{Tweaking output}}
+@emph{@ref{Tweaking output}},
shows how to change the default engraving that LilyPond
produces.
@item
-@emph{@ref{Basic notation}}
+@emph{@ref{Basic notation}},
discusses topics grouped by notation construct. This section gives
details about basic notation that will be useful in almost any
notation project.
@item
-@emph{@ref{Instrument-specific notation}}
+@emph{@ref{Instrument-specific notation}},
discusses topics grouped by notation construct. This section gives
details about special notation that will only be useful for particular
instrument (or vocal) groups.
@item
-@emph{@ref{Advanced notation}}
+@emph{@ref{Advanced notation}},
discusses topics grouped by notation construct. This section gives
details about complicated or unusual notation.
@item
-@emph{@ref{Changing defaults}}
+@emph{@ref{Changing defaults}},
explains how to fine tune layout.
@item
-@emph{@ref{Non-musical notation}}
+@emph{@ref{Non-musical notation}},
discusses non-musical output such as titles, multiple movements,
and how to select which MIDI instruments to use.
@item
-@emph{@ref{Spacing issues}}
+@emph{@ref{Spacing issues}},
discusses issues which affect the global output, such as selecting
paper size or specifying page breaks.
@item
-@emph{@ref{Interfaces for programmers}}
+@emph{@ref{Interfaces for programmers}},
explains how to create music functions.
@item
-@emph{@ref{Running LilyPond}}
+@emph{@ref{Running LilyPond}},
shows how to run LilyPond and its helper programs. In addition, this
section explains how to upgrade input files from previous versions of
LilyPond.
@item
-@emph{@ref{LilyPond-book}} explains the details behind creating
+@emph{@ref{LilyPond-book}},
+explains the details behind creating
documents with in-line music examples, like this manual.
@item
-@emph{@ref{Converting from other formats}}
+@emph{@ref{Converting from other formats}},
explains how to run the conversion programs. These programs are
supplied with the LilyPond package, and convert a variety of music
formats to the @code{.ly} format.
@ifhtml
The
@end ifhtml
-@emph{@ref{Literature list}}
+@emph{@ref{Literature list}},
contains a set of useful reference books for those who wish to know
more on notation and engraving.
@item
The
-@emph{@ref{Scheme tutorial}}
+@emph{@ref{Scheme tutorial}},
presents a short introduction to Scheme, the programming
language that music functions use.
@item
-@emph{@ref{Notation manual tables}}
+@emph{@ref{Notation manual tables}},
are a set of tables showing the chord names, MIDI instruments,
a list of color names, and the Feta font.
@item
-@emph{@ref{Templates}}
+@emph{@ref{Templates}},
of LilyPond pieces. Just cut and paste a
template into a file, add notes, and you're done!
@item
The
-@emph{@ref{Cheat sheet}}
+@emph{@ref{Cheat sheet}},
is a handy reference of the most common LilyPond commands.
@item
The
-@emph{@ref{LilyPond command index}}
+@emph{@ref{LilyPond command index}},
is an index of all LilyPond @code{\commands}.
@item
The
-@emph{@ref{LilyPond index}}
+@emph{@ref{LilyPond index}},
is a complete index.
@end itemize
@node pause
@section pause
-@ref{fermata}
+@ref{fermata}.
@node pennant
@section pennant
@noindent
will result in a parsing error. Instead, music should be inside other
expressions, which may be put in a file by themselves. Such
-expressions are called toplevel expressions; see @ref{File structure} for
+expressions are called toplevel expressions; see @ref{File structure}, for
a list of all such expressions.
@end table
Here is a demonstration of the fields available. Note that you
-may use any @ref{Text markup} commands in the header.
+may use any @ref{Text markup}, commands in the header.
@lilypond[quote,verbatim,line-width=11.0\cm]
\paper {
Scheme code is evaluated as soon as the parser encounters it. To
define some Scheme code in a macro (to be called later), use
-@ref{Void functions} or
+@ref{Void functions}, or
@example
#(define (nopc)
Note: there is now an internal command @code{\smallCaps} which can
be used to set text in small caps. See
-@ref{Overview of text markup commands} for details.
+@ref{Overview of text markup commands}, for details.
@uref{http://lilypond.org/web/devel/participating/bugs}
-Please construct submit @ref{Minimal examples} of bug reports. We do not
+Please construct submit @ref{Minimal examples}, of bug reports. We do not
have the resources to investigate reports which are not as small as possible.
@seealso
-This manual: @ref{Changing context default settings}
+This manual: @ref{Changing context default settings}.
@node Displaying spacing
entire score or turned off for the entire score. We can, however,
override this behavior and turn on different spacing features at
different places in the score. We do this with the command
-@code{\newSpacingSection}. See @ref{New spacing area} for more info.
+@code{\newSpacingSection}. See @ref{New spacing area}, for more info.
Next we examine the effects of the @code{Separating_line_group_engraver} and
see why proportional scores frequently remove this engraver. The following
manual, but don't forget them in your own music!
@cindex Case sensitive
-In addition, LilyPond input is @strong{case sensitive}. @code{ @{ c d e @} }
-is valid input; @code{ @{ C D E @} } will produce an error message.
+In addition, LilyPond input is @strong{case sensitive}. @code{ @{c d e @}}
+is valid input; @code{@{ C D E @}} will produce an error message.
@sp 1
@subsubheading MacOS X
-If you double click LilyPond.app, it will open with an example
+If you double click @code{LilyPond.app}, it will open with an example
file. Save it, for example, to @file{test.ly} on your Desktop, and
then process it with the menu command @samp{Compile > Typeset File}.
The resulting PDF file will be displayed on your screen.
or two because all of the system fonts have to be analyzed first.
For future use of LilyPond, you should begin by selecting @q{New}
-or "@q{Open}. You must save your file before typesetting it. If any errors
+or @q{Open}. You must save your file before typesetting it. If any errors
occur in processing, please see the log window.
@subsubheading Windows
has done to the file. If any errors occur, please examine this file.
Note that there are several other text editors available, with better
-support for LilyPond, see @ref{Editor support} for more information.
+support for LilyPond, see @ref{Editor support}, for more information.
@subsubheading Unix
is a @code{LilyPond-mode} for Emacs addicts. If they have not been
installed already, refer to the file @file{INSTALL.txt}. The
easiest editing environment is @file{LilyPondTool}. See
-@ref{Editor support} for more information.}. In your
+@ref{Editor support}, for more information.}. In your
text editor, enter the following input and save the file as
@file{test.ly}
@quotation
@table @asis
@item Entering pitches and durations
-see @ref{Pitches} and @ref{Durations}.
+see @ref{Pitches}, and @ref{Durations}.
@item Rests
see @ref{Rests}.
@item Time signatures and other timing commands
Adding all alterations explicitly might require a little more effort
when typing, but the advantage is that transposing is easier, and
accidentals can be printed according to different conventions. See
-@ref{Automatic accidentals} for some examples how accidentals can be printed
+@ref{Automatic accidentals}, for some examples how accidentals can be printed
according to different rules.
@moreinfo
@quotation
@table @asis
@item Accidentals
-see @ref{Accidentals} and @ref{Automatic accidentals}.
+see @ref{Accidentals}, and @ref{Automatic accidentals}.
@item Key signature
see @ref{Key signature}.
@end table
Time signatures entered in one staff affects all other staves, but
the key signature of one staff does @emph{not} affect other
staves@footnote{This behavior may be changed if desired; see
-@ref{Changing defaults} for details.}.
+@ref{Changing defaults}, for details.}.
@lilypond[quote,ragged-right,verbatim]
\relative c'' {
@subsection After the tutorial
After finishing the tutorial, you should probably try writing a
-piece or two. Start with one of the @ref{Templates} and
+piece or two. Start with one of the @ref{Templates}, and
add notes. If you need any notation that was not covered in the
tutorial, look at the Notation Reference, starting with
@ref{Basic notation}. If you want to write for an instrument
When investigating layout issues, @code{annotate-spacing} is
an invaluable tool. This command prints the values of various
-layout spacing commands; see @ref{Displaying spacing} for more
+layout spacing commands; see @ref{Displaying spacing}, for more
details. From the output of @code{annotate-spacing}, we can
see which margins we may wish to alter.
@item
Alter the horizontal spacing via @code{SpacingSpanner}. See
-@ref{Changing horizontal spacing} for more details.
+@ref{Changing horizontal spacing}, for more details.
@lilypond[verbatim,quote]
\score {
commands like
@code{\override TextScript #'extra-offset = ( 1 . -1)}. But
we have even more power if we use Scheme. For a full explantion
-of this, see the @ref{Scheme tutorial} and
+of this, see the @ref{Scheme tutorial}, and
@ref{Interfaces for programmers}.
We can use Scheme to simply @code{\override} commands,
using a few years ago. @code{convert-ly} requires you to declare
which version of LilyPond you used.
-@item @strong{Include checks}: @ref{Bar check}, @ref{Octave check} and
+@item @strong{Include checks}: @ref{Bar check}, @ref{Octave check}, and
@ref{Barnumber check}. If you
include checks every so often, then if you make a mistake, you can pinpoint
it quicker. How often is @q{every so often}? It depends on the complexity
problems if you rearrange your music later.
@item @strong{Separate tweaks} from music definitions. See
-@ref{Saving typing with identifiers and functions} and
+@ref{Saving typing with identifiers and functions}, and
@ref{Style sheets}.
@end itemize
@section Style sheets
The output that LilyPond produces can be heavily modified; see
-@ref{Tweaking output} for details. But what if you have many
+@ref{Tweaking output}, for details. But what if you have many
files that you want to apply your tweaks to? Or what if you
simply want to separate your tweaks from the actual music? This
is quite easy to do.