]> git.lyx.org Git - lyx.git/blobdiff - lib/examples/lilypond.lyx
template files: remove all relative paths to re-eanable to use "new from template"
[lyx.git] / lib / examples / lilypond.lyx
index ecc20e54ad6b5a35ab253a527bd30d07bab3848b..aa2f62dba74c538125006eca1c62fc3a3640dff4 100644 (file)
@@ -1,5 +1,5 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
+#LyX 2.1 created this file. For more info see http://www.lyx.org/
+\lyxformat 474
 \begin_document
 \begin_header
 \textclass article
 \begin_document
 \begin_header
 \textclass article
@@ -12,16 +12,16 @@ lilypond
 \language_package default
 \inputencoding auto
 \fontencoding global
 \language_package default
 \inputencoding auto
 \fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
+\font_roman lmodern
+\font_sans lmss
+\font_typewriter lmtt
+\font_math auto
 \font_default_family default
 \use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 \font_default_family default
 \use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
-
 \graphics default
 \default_output_format default
 \output_sync 0
 \graphics default
 \default_output_format default
 \output_sync 0
@@ -31,27 +31,37 @@ lilypond
 \spacing single
 \use_hyperref true
 \pdf_title "LilyPond-book and LyX"
 \spacing single
 \use_hyperref true
 \pdf_title "LilyPond-book and LyX"
-\pdf_author "Julien Rioux"
+\pdf_author "The LyX Team"
 \pdf_bookmarks true
 \pdf_bookmarks true
-\pdf_bookmarksnumbered false
-\pdf_bookmarksopen false
+\pdf_bookmarksnumbered true
+\pdf_bookmarksopen true
 \pdf_bookmarksopenlevel 1
 \pdf_breaklinks false
 \pdf_pdfborder false
 \pdf_bookmarksopenlevel 1
 \pdf_breaklinks false
 \pdf_pdfborder false
-\pdf_colorlinks false
+\pdf_colorlinks true
 \pdf_backref false
 \pdf_backref false
-\pdf_pdfusetitle true
+\pdf_pdfusetitle false
+\pdf_quoted_options "linkcolor=blue,urlcolor=blue,pdfstartview=XYZ"
 \papersize default
 \use_geometry true
 \papersize default
 \use_geometry true
-\use_amsmath 1
-\use_esint 1
-\use_mhchem 1
-\use_mathdots 1
+\use_package amsmath 1
+\use_package amssymb 1
+\use_package cancel 0
+\use_package esint 1
+\use_package mathdots 1
+\use_package mathtools 0
+\use_package mhchem 1
+\use_package stackrel 0
+\use_package stmaryrd 0
+\use_package undertilde 0
 \cite_engine basic
 \cite_engine basic
+\cite_engine_type default
+\biblio_style plain
 \use_bibtopic false
 \use_indices false
 \paperorientation portrait
 \suppress_date true
 \use_bibtopic false
 \use_indices false
 \paperorientation portrait
 \suppress_date true
+\justification true
 \use_refstyle 0
 \index Index
 \shortcut idx
 \use_refstyle 0
 \index Index
 \shortcut idx
@@ -63,8 +73,8 @@ lilypond
 \bottommargin 2cm
 \secnumdepth 3
 \tocdepth 3
 \bottommargin 2cm
 \secnumdepth 3
 \tocdepth 3
-\paragraph_separation skip
-\defskip smallskip
+\paragraph_separation indent
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \quotes_language english
 \papercolumns 1
 \papersides 1
@@ -83,22 +93,81 @@ LilyPond-book and LyX
 \end_layout
 
 \begin_layout Author
 \end_layout
 
 \begin_layout Author
-Julien Rioux
+The LyX Team
+\end_layout
+
+\begin_layout Date
+Version 2.1.x
 \end_layout
 
 \begin_layout Abstract
 \end_layout
 
 \begin_layout Abstract
-This is an example file demonstrating the inclusion of musical snippets
- in a LyX document, using the LilyPond music notation and the LilyPond-book
- utility for processing.
+This document explains and demonstrates the inclusion of musical snippets
+ in a LyX document, using the LilyPond syntax for music notation and the
+ LilyPond-book utility for processing.
+\end_layout
+
+\begin_layout Section
+Introduction
+\end_layout
+
+\begin_layout Standard
+LilyPond is an open-source project that renders possible the creation of
+ beautiful computer-generated musical scores.
+ The project consists of a text-based music notation language, and a program
+ to process this notation into musical scores.
+\end_layout
+
+\begin_layout Standard
+While LilyPond itself supports the display of title, author information,
+ footnotes, endnotes, etc., its primary focus is on music typesetting.
+ For text typesetting, other programs are generally better suited.
+ LilyPond-book is a utility provided by the LilyPond project that helps
+ incorporate musical scores using the LilyPond notation into LaTeX documents,
+ among other formats.
+\end_layout
+
+\begin_layout Standard
+This document describes the use of the LilyPond music notation within LyX
+ documents that use a LaTeX-based layout, thus combining the beauty and
+ quality of the typesetting achieved by both LaTeX and LilyPond.
+ While a basic understanding of the LilyPond syntax for music notation is
+ in order, knowledge of LaTeX is not necessary when using LyX.
+\end_layout
+
+\begin_layout Standard
+Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Using-LilyPond-code"
+
+\end_inset
+
+ explains the requirements, usage instructions, and shortcomings of LilyPond
+ music notation within LyX.
+ Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:LilyPond-examples"
+
+\end_inset
+
+ demonstrates the beauty and quality of the typesetting with a few examples.
 \end_layout
 
 \begin_layout Section
 Using LilyPond code within LyX
 \end_layout
 
 \begin_layout Section
 Using LilyPond code within LyX
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Using-LilyPond-code"
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
-Support for LilyPond constructs (LilyPond code) within LyX is enabled by
- adding the LilyPond module to your document.
+Support for LilyPond music notation (LilyPond code) within LyX is enabled
by adding the LilyPond module to your document.
  This is done from the menu 
 \family sans
 Document\SpecialChar \menuseparator
  This is done from the menu 
 \family sans
 Document\SpecialChar \menuseparator
@@ -106,10 +175,10 @@ Settings
 \family default
 , then selecting LilyPond in the list of modules.
  You can use any LaTeX-based LyX layout and use the regular preview and
 \family default
 , then selecting LilyPond in the list of modules.
  You can use any LaTeX-based LyX layout and use the regular preview and
- export mechanism; LyX will take care of processing the LaTeX code through
- LilyPond-book for you.
- LilyPond-book can also handle DocBook documents but LilyPond-DocBook support
in LyX is missing at the moment.
+ export mechanism; LyX will take care of processing the mixed LaTeX/LilyPond
code through LilyPond-book for you.
+ LilyPond-book can also handle DocBook and HTML documents, but the integration
of these document types with LilyPond-book and LyX is missing at the moment.
 \end_layout
 
 \begin_layout Subsection
 \end_layout
 
 \begin_layout Subsection
@@ -117,7 +186,7 @@ Requirements
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
-LilyPond-book version 2.13 or newer
+LilyPond-book version 2.13 or newer.
 \begin_inset Foot
 status collapsed
 
 \begin_inset Foot
 status collapsed
 
@@ -166,6 +235,20 @@ status open
 
 \begin_layout Plain Layout
 
 
 \begin_layout Plain Layout
 
+\begin_inset Argument 1
+status open
+
+\begin_layout Plain Layout
+staffsize=28
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+
 
 \backslash
 relative c'' {
 
 \backslash
 relative c'' {
@@ -187,13 +270,18 @@ relative c'' {
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
+\noindent
 The previous LyX inset produces the following LaTeX-lookalike code:
 \end_layout
 
 \begin_layout LyX-Code
 
 \backslash
 The previous LyX inset produces the following LaTeX-lookalike code:
 \end_layout
 
 \begin_layout LyX-Code
 
 \backslash
-begin{lilypond}
+begin{lilypond}[staffsize=28]
+\end_layout
+
+\begin_layout LyX-Code
+
 \end_layout
 
 \begin_layout LyX-Code
 \end_layout
 
 \begin_layout LyX-Code
@@ -217,36 +305,71 @@ end{lilypond}
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
-This code is not, in fact, processed by LaTeX, but is preprocessed by LilyPond-b
-ook, which creates the graphics files and include them in the LaTeX document
- by replacing the above with 
+What appear first inside square brackets are options to pass to LilyPond-book.
+ This is inserted in LyX from the 
+\family sans
+Insert
+\family default
+ menu, in the same way that the LilyPond inset itself is inserted.
+ Here, we set the dimension of the staff to 28
+\begin_inset space \thinspace{}
+\end_inset
+
+pt.
+ Other options can be added by separating them by a comma, for example:
+\family typewriter
+[staffsize=28,verbatim]
+\family default
+.
+ A list of music fragment options is available in the LilyPond documentation.
+ This whole block can be omitted when the default settings are desired.
+\end_layout
+
+\begin_layout Standard
+What follows after the options block is the textual representation in LilyPond
+ syntax of a musical fragment.
+ This code is not, in fact, processed by LaTeX, but is preprocessed by LilyPond-
+book, which creates the graphics files and includes them in the LaTeX document
+ by replacing the above with a 
 \family typewriter
 
 \backslash
 includegraphics{\SpecialChar \ldots{}
 }
 \family default
 \family typewriter
 
 \backslash
 includegraphics{\SpecialChar \ldots{}
 }
 \family default
-.
+ command.
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
-Thus, the conversion path is as follow: 
+Thus, the conversion process is as follow: 
 \family sans
 LyX\SpecialChar \menuseparator
 LilyPond-book\SpecialChar \menuseparator
 LaTeX
 \family default
 .
 \family sans
 LyX\SpecialChar \menuseparator
 LilyPond-book\SpecialChar \menuseparator
 LaTeX
 \family default
 .
+ LyX creates a .lytex file, LilyPond-book creates a .tex files and the accompanyin
+g image files, and LaTeX creates the final document.
  Every step of the tool chain obeys your spacing, so whether you put the
  Every step of the tool chain obeys your spacing, so whether you put the
- musical extract in line, or in its own paragraph, centered, left-aligned,
+ musical extract inline, or in its own paragraph, centered, left-aligned,
  etc., what you see in the LyX window should be respected in the final format.
  etc., what you see in the LyX window should be respected in the final format.
- An example of in-line use may be to display a chord name, such as
+ An example of inline use may be to display a chord name, such as
 \begin_inset Flex LilyPond
 status open
 
 \begin_layout Plain Layout
 
 \begin_inset Flex LilyPond
 status open
 
 \begin_layout Plain Layout
 
+\begin_inset Argument 1
+status open
 
 
+\begin_layout Plain Layout
+staffsize=12
+\end_layout
+
+\end_inset
+
 \backslash
 markup { 
 \backslash
 \backslash
 markup { 
 \backslash
@@ -317,12 +440,19 @@ relative c'' {
 Unfortunately, you might find that the preview isn't exactly instantaneous.
  You need to move the cursor out of the Preview inset to start compilation,
  and processing time can take a few seconds.
 Unfortunately, you might find that the preview isn't exactly instantaneous.
  You need to move the cursor out of the Preview inset to start compilation,
  and processing time can take a few seconds.
+ Nevertheless, the direct feedback is often worthwhile during editing, and
+ renders the navigation through the document much easier.
 \end_layout
 
 \begin_layout Subsection
 Gotchas
 \end_layout
 
 \end_layout
 
 \begin_layout Subsection
 Gotchas
 \end_layout
 
+\begin_layout Standard
+A few gotchas that have been experienced with the integration of LilyPond-book
+ and LyX are reported here.
+\end_layout
+
 \begin_layout Subsubsection
 Child documents
 \end_layout
 \begin_layout Subsubsection
 Child documents
 \end_layout
@@ -499,12 +629,19 @@ score given
 
 \end_layout
 
 
 \end_layout
 
+\begin_layout Standard
+Writing the notes directly within braces without using any LilyPond command
+ is convenient when writing short snippets.
+ Advanced users will probably want to enter their musical content using
+ LilyPond variables and commands, which is of course supported.
+\end_layout
+
 \begin_layout Subsubsection
 Fret diagrams
 \end_layout
 
 \begin_layout Standard
 \begin_layout Subsubsection
 Fret diagrams
 \end_layout
 
 \begin_layout Standard
-Another gotcha is with subsequent lilypond snippets with 
+Another gotcha is with subsequent LilyPond snippets with 
 \family typewriter
 
 \backslash
 \family typewriter
 
 \backslash
@@ -560,10 +697,55 @@ end{lilypond}
 \begin_layout Standard
 For some reason LilyPond-book version 2.13 barks on this when run in safe
  mode (which you always should use, unless you know what you are doing).
 \begin_layout Standard
 For some reason LilyPond-book version 2.13 barks on this when run in safe
  mode (which you always should use, unless you know what you are doing).
+ This has been corrected as of version 2.15 (was LilyPond issue #1900).
+\end_layout
+
+\begin_layout Subsubsection
+The 
+\family typewriter
+
+\backslash
+lilypondfile
+\family default
+ command
+\end_layout
+
+\begin_layout Standard
+LilyPond-book supports including LilyPond code that resides in external
+ files with the 
+\family typewriter
+
+\backslash
+lilypondfile
+\family default
+ command.
+ With this command, the LilyPond code is processed as if it was typed inside
+ the document and the output score follows the typesetting determined by
+ LaTeX with respect to line width, page breaks, and so on.
+ This is in contrast to the long-standing LyX feature to include LilyPond
+ scores as external material, which calls LilyPond on the external file
+ to produce a rigid figure, and includes this figure in the document, leaving
+ the typesetting decisions to LilyPond.
+ Unfortunately, support for the 
+\family typewriter
+
+\backslash
+lilypondfile
+\family default
+ command in LyX is not implemented yet, but it is possible to use it inside
+ a TeX-Code block, provided that one writes the complete, absolute path
+ to the desired file.
 \end_layout
 
 \begin_layout Section
 LilyPond examples
 \end_layout
 
 \begin_layout Section
 LilyPond examples
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:LilyPond-examples"
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
@@ -574,7 +756,7 @@ reference "sub:Editorial-headword"
 
 \end_inset
 
 
 \end_inset
 
- shows a complex example using many LilyPond constructs; some scheme code
+ shows a complex score using many LilyPond constructs; some scheme code
  has been removed from the original source of this snippet, to be able to
  run in safe mode.
  Example 
  has been removed from the original source of this snippet, to be able to
  run in safe mode.
  Example 
@@ -1104,6 +1286,7 @@ staccato
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
+\noindent
 [from 
 \begin_inset Flex URL
 status collapsed
 [from 
 \begin_inset Flex URL
 status collapsed
@@ -1282,6 +1465,7 @@ lower }
 \end_layout
 
 \begin_layout Standard
 \end_layout
 
 \begin_layout Standard
+\noindent
 [from 
 \begin_inset Flex URL
 status collapsed
 [from 
 \begin_inset Flex URL
 status collapsed