@cindex NoteEdit
@cindex MIDI
-One way to avoid entering notes using the keyboard, is to use a
+One way to avoid entering notes using the keyboard is to use a
graphical user interface. The following programs are known to have
a lilypond export option:
@itemize @bullet
@item
-@uref{http://denemo.sourceforge.net/, Denemo}, was once intended as
-LilyPond graphical user interface. It run on Gnome/GTK.
+Denemo was once intended as
+a LilyPond graphical user interface. It run on Gnome/GTK.
+
+@quotation
+@uref{http://denemo.sourceforge.net/}
+@end quotation
+
@item
-@uref{http://rnvs.informatik.tu-chemnitz.de/~jan/noteedit/noteedit.html,noteedit}
-NoteEdit is a graphical score editor that runs under KDE/Qt.
+ Noteedit, a graphical score editor that runs under KDE/Qt.
+@quotation
+@uref{http://rnvs.informatik.tu-chemnitz.de/~jan/noteedit/noteedit.html,}
+@end quotation
+
@item
-@uref{http://rosegarden.sf.net/,RoseGarden}
-once was an inspiration for naming LilyPond. Nowadays, it has been
-rewritten from scratch, and supports LilyPond export as of version
-0.1.6.
+RoseGarden was once the inspiration for naming LilyPond. Nowadays it
+has been rewritten from scratch and supports LilyPond export as of
+version 0.1.6.
+
+@quotation
+@uref{http://rosegarden.sf.net/}
+@end quotation
@end itemize
Another option is to enter the music using your favorite MIDI
sequencer, and then import it using midi2ly. midi2ly is described in
-@ref{Importing MIDI}.
+@ref{Invoking midi2ly}.
+
@c . {Relative}
@node Relative octaves
additional @code{\relative} inside the @code{\transpose}.
-@c . {Bar check}
+@c . {Bar check}
@node Bar check
@subsection Bar check
@cindex Bar check
@itemize @bullet
@item A dvi viewer that supports src specials.
@itemize @bullet
-@item Plain Xdvi, version 22.36 or newer. Available from
+@item Xdvi, version 22.36 or newer. Available from
@uref{ftp://ftp.math.berkeley.edu/pub/Software/TeX/xdvi.tar.gz,ftp.math.berkeley.edu}.
- Note that most @TeX{} distributions ship with xdvik, which is a
- different and less well maintained program. To find out which xdvi you
- are running, try @code{xdvi --version} or @code{xdvi.bin --version}.
+ Note that most @TeX{} distributions ship with xdvik, which is always
+ a few versions behind the official Xdvi. To find out which xdvi you
+ are running, try @code{xdvi -version} or @code{xdvi.bin -version}.
@item KDVI. A dvi viewer for KDE. You need KDVI from KDE 3.0 or
-newer. Enablle the menu Settings -> Inverse search.
+newer. Enable option @emph{Inverse search} in the menu @emph{Settings}.
+
+@cindex Xdvi
+@cindex KDVI
+@cindex KDE
+
+
+
@end itemize
-@item An editor with a client/server interface (or a lightweight GUI editor).
+@item An editor with a client/server interface (or a lightweight GUI
+editor).
+
+@cindex editor
+
@itemize @bullet
@item Emacs. Emacs is an extensible text-editor. It is available from
@uref{http://www.gnu.org/software/emacs/}. You need version 21 to use
column location.
+
+@c move this elsewhere?
+
+LilyPond also comes with support files for emacs: lilypond-mode for
+emacs provides indentation, syntax coloring and handy compile
+short-cuts. If lilypond-mode is not installed on your platform, then
+refer to the installation instructions for more information
+
+@cindex emacs
+@cindex emacs mode
+@cindex lilypond-mode for emacs
+@cindex syntax coloring
+
@item XEmacs. Xemacs is very similar to emacs.
+
+@cindex XEmacs
+
@item NEdit. NEdit runs under Windows, and Unix.
It is available from @uref{http://www.nedit.org}.
-@item GVim. GVim is a lightweight GUI variant of VIM, the popular VI
+
+@cindex NEdit
+
+@item GVim. GVim is a GUI variant of VIM, the popular VI
clone. It is available from @uref{http://www.vim.org}.
+
+@cindex GVim
+@cindex Vim
+
@end itemize
@end itemize
To use point-and-click, add one of these lines to the top of your .ly
file.
@example
-#(set! point-and-click line-location)
+#(set-point-and-click! 'line)
@end example
@cindex line-location
If you use xemacs instead of emacs, you use @code{(gnuserve-start)} in
your @file{.emacs}, and set @code{XEDITOR} to @code{gnuclient -q +%l %f}
-For using Vim, set @code{XEDITOR} to @code{gvim +%l %f}, or use this
+For using Vim, set @code{XEDITOR} to @code{gvim --remote +%l %f}, or use this
argument with xdvi's @code{-editor} option.
@cindex NEdit
For using NEdit, set @code{XEDITOR} to @code{nc -noask +%l %f}, or
of the @code{ly} file, replace the @code{set!} line with the following
line,
@example
-#(set! point-and-click line-column-location)
+#(set-point-and-click! 'line-column)
@end example
@cindex line-colomn-location
and set @code{XEDITOR} to @code{emacsclient --no-wait +%l:%c %f}.
It is not possible to specify beaming parameters for beams with mixed
durations, that differ from the beaming parameters of all separate
durations, i.e., you'll have to specify manual beams to get:
-@lilypond[fragment,singleline,relative]
+
+@lilypond[singleline,fragment,relative,noverbatim]
\property Voice.autoBeamSettings
\override #'(end * * * *) = #(make-moment 3 8)
\time 12/8 c'8 c c c16 c c c c c [c c c c] c8 c c4
@end lilypond
-
It is not possible to specify beaming parameters that act differently in
different parts of a measure. This means that it is not possible to use
automatic beaming in irregular meters such as @code{5/8}.
@file{ly/property-init.ly}.
@cindex @file{property-init.ly}
-The normal way of using the macros is to enter the macro name right after the
+The macros operate on the ``Current'' context (see @ref{Context properties}). This
+means that the macros shuold normally be invoked right after the
creation of the context in which the accidental typesetting described
by the macro is to take effect. I.e. if you want to use
piano-accidentals in a pianostaff then you issue
c''4-|_"c-|" s4
c''4->_"c->" s4
c''4-^_"c-\\^{ }" s4
+ c''4-__"c-\_" s4
}
}
@end lilypond
@cindex staccatissimo
@cindex fermata
@cindex stopped
-@cindex staccato
+@cindex staccato
+@cindex portato
@cindex tenuto
@cindex upbow
@cindex downbow
\property Score.LyricText \override #'font-shape = #'upright
\context Staff \notes {
c''-\accent c''-\marcato c''-\staccatissimo c''^\fermata
- c''-\stopped c''-\staccato c''-\tenuto c''-\upbow
+ c''-\stopped c''-\staccato c''-\tenuto c''-\portato
+ c''-\upbow
c''-\downbow c''^\lheel c''-\rheel c''^\ltoe
c''-\rtoe c''-\turn c''-\open c''-\flageolet
c''-\reverseturn c''-\trill c''-\prall c''-\mordent
}
\context Lyrics \lyrics {
accent__ marcato__ staccatissimo__ fermata
- stopped__ staccato__ tenuto__ upbow
+ stopped__ staccato__ tenuto__ portato
+ upbow
downbow__ lheel__ rheel__ ltoe
rtoe__ turn__ open__ flageolet
reverseturn__ trill__ prall__ mordent
}
@end lilypond
+If you want to end a note with a grace note, then the standard trick
+is to put the grace notes before a phantom ``space note'', e.g.
+@lilypond[fragment,verbatim, relative=2]
+\context Voice {
+ < { d1^\trill ( }
+ { s2 \grace { [c16 d] } } >
+ )c4
+}
+@end lilypond
+
+
@refbugs
Grace note synchronization can also lead to surprises. Staff notation,
>
@end lilypond
-
@node Non-guitar tablatures
@subsection Non-guitar tablatures
@cindex Non-guitar tablatures
the fingering information (which correspond to the string number) for
the standard staff.
-@lilypond[verbatim]
- part = \notes {
+@c FIXME
+@c @lily pond[verbatim]
+@example
+ part = \notes @{
a,4-2 c'-5 a-4 e'-6
e-3 c'-5 a-4 e'-6
- }
- \score{
+ @}
+ \score @{
\context StaffGroup <
\context Staff <
% Hide fingering number
\part
>
>
- }
-@end lilypond
-
+ @}
+@end example
+@c @end lilypond
@c . {Chords}
@node Chords
The markup is broken down and converted into a list of grob properties,
which are prepended to the property list. The @var{key}-@var{value}
pair is a grob property. A list of properties available is included in
-the generated documentation for @rint{Text_interface}.
+the generated documentation for @internalsref{text-interface}.
The following abbreviations are defined:
@table @code
\score {
\notes\relative c'' {
- a1^#`((columns (font-relative-size . -1)) ,dotted-eight-note " = 64")
+ a1^#`((columns (font-relative-size . -1))
+ ,dotted-eight-note " = 64")
}
\paper {
linewidth = -1.
""}. Similarly, @code{\noBreak} forbids a line break at a certain
point.
+
+@cindex regular line breaks
+@cindex four bar music.
+
If you want linebreaks at regular intervals, you can use the following:
@example
< \repeat 7 unfold @{ s1 * 4 \break @}
@cindex @code{interscoreline}
@cindex @code{interscorelinefill}
+If the variable @code{lastpagefill} is defined (that is, it gets any
+value assigned in the @code{\paper} block), systems are evenly
+distributed vertically on the last page. This might produce ugly
+results in case there are not enough systems on the last page. Note
+that @command{lilypond-book} ignores @code{lastpagefill}. See
+@ref{lilypond-book: integrating text and music} for
+more information.
+
+@cindex @code{lastpagefill}
+
Page breaks are normally computed by @TeX{}, so they are not under
direct control of LilyPond. However, you can insert a commands into
the @file{.tex} output to instruct @TeX{} where to break pages. You