X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fexamples%2Flilypond.lyx;h=49af0d03d9cb9d1521671b663888d8966a1e5001;hb=40c262cbd865805d35aba65e25e919fc8dee6e69;hp=2ad978c0a09d27d3ac844d4aa907ed8d6ed9441a;hpb=e7dd1bf9dd571bbefb99a2fc5f9a1382e68a4a0d;p=lyx.git diff --git a/lib/examples/lilypond.lyx b/lib/examples/lilypond.lyx index 2ad978c0a0..49af0d03d9 100644 --- a/lib/examples/lilypond.lyx +++ b/lib/examples/lilypond.lyx @@ -1,48 +1,70 @@ -#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ -\lyxformat 401 +#LyX 2.2 created this file. For more info see http://www.lyx.org/ +\lyxformat 508 \begin_document \begin_header +\save_transient_properties true +\origin /systemlyxdir/examples/ \textclass article -\begin_preamble -\date{} -\end_preamble \use_default_options true \begin_modules lilypond \end_modules \maintain_unincluded_children false \language english -\inputencoding utf8 +\language_package default +\inputencoding auto \fontencoding global -\font_roman default -\font_sans default -\font_typewriter default +\font_roman "lmodern" "default" +\font_sans "lmss" "default" +\font_typewriter "lmtt" "default" +\font_math "auto" "auto" \font_default_family default -\use_xetex false +\use_non_tex_fonts false \font_sc false \font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - +\font_sf_scale 100 100 +\font_tt_scale 100 100 \graphics default \default_output_format default \output_sync 0 \bibtex_command default \index_command default -\paperfontsize 12 +\paperfontsize default \spacing single -\use_hyperref false +\use_hyperref true +\pdf_title "LilyPond-book and LyX" +\pdf_author "The LyX Team" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 1 +\pdf_breaklinks false +\pdf_pdfborder false +\pdf_colorlinks true +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "linkcolor=blue,urlcolor=blue,pdfstartview=XYZ" \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_type default +\biblio_style plain \use_bibtopic false \use_indices false \paperorientation portrait -\suppress_date false +\suppress_date true +\justification true +\use_refstyle 0 \index Index \shortcut idx \color #008000 @@ -53,8 +75,8 @@ lilypond \bottommargin 2cm \secnumdepth 3 \tocdepth 3 -\paragraph_separation skip -\defskip smallskip +\paragraph_separation indent +\paragraph_indentation default \quotes_language english \papercolumns 1 \papersides 1 @@ -62,79 +84,151 @@ lilypond \tracking_changes false \output_changes false \html_math_output 0 +\html_css_as_file 0 \html_be_strict true \end_header \begin_body \begin_layout Title -LilyPond-book + LyX +LilyPond-book and \SpecialChar LyX + +\end_layout + +\begin_layout Author +The \SpecialChar LyX + Team +\end_layout + +\begin_layout Date +Version 2.1.x \end_layout \begin_layout Abstract -This is an example file demonstrating the use of LilyPond music notation - with LyX. +This document explains and demonstrates the inclusion of musical snippets + in a \SpecialChar LyX + document, using the LilyPond syntax for music notation and the LilyPond-b +ook utility for processing. \end_layout \begin_layout Section -Using LilyPond code within LyX +Introduction \end_layout \begin_layout Standard -Support for LilyPond constructs (LilyPond code) within LyX is enabled by - adding the LilyPond module to your document. - This is done from the menu Document \SpecialChar \menuseparator - Settings..., 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. +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 Subsection -Requirements +\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 \SpecialChar LaTeX + documents, + among other formats. \end_layout -\begin_layout List -\labelwidthstring 00.00.0000 -LaTeX -\begin_inset space ~ +\begin_layout Standard +This document describes the use of the LilyPond music notation within \SpecialChar LyX + documents + that use a \SpecialChar LaTeX +-based layout, thus combining the beauty and quality of the + typesetting achieved by both \SpecialChar LaTeX + and LilyPond. + While a basic understanding of the LilyPond syntax for music notation is + in order, knowledge of \SpecialChar LaTeX + is not necessary when using \SpecialChar 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 \SpecialChar LyX +. + Section +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:LilyPond-examples" + \end_inset -support: LilyPond-book version 2.1 + demonstrates the beauty and quality of the typesetting with a few examples. \end_layout -\begin_layout List -\labelwidthstring 00.00.0000 -PDFLaTeX -\begin_inset space ~ +\begin_layout Section +Using LilyPond code within \SpecialChar LyX + +\begin_inset CommandInset label +LatexCommand label +name "sec:Using-LilyPond-code" + \end_inset -support: LilyPond-book version 2.11 + \end_layout -\begin_layout Paragraph -Notes: +\begin_layout Standard +Support for LilyPond music notation (LilyPond code) within \SpecialChar LyX + is enabled by + adding the LilyPond module to your document. + This is done from the menu +\family sans +Document\SpecialChar menuseparator +Settings +\family default +, then selecting LilyPond in the list of modules. + You can use any \SpecialChar LaTeX +-based \SpecialChar LyX + layout and use the regular preview and export mechanism +; \SpecialChar LyX + will take care of processing the mixed \SpecialChar 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 \SpecialChar LyX + is missing at the moment. +\end_layout + +\begin_layout Subsection +Requirements \end_layout \begin_layout Standard -LilyPond-book supports LaTeX output since version 2.1. - PDFLaTeX requires LilyPond-book version 2.9 or older, but there are bugs - in those early versions. - We require version 2.11 and older because we use the - -\begin_inset ERT +LilyPond-book version 2.13 or newer. +\begin_inset Foot status collapsed \begin_layout Plain Layout - -{} +LilyPond-book supports \SpecialChar LaTeX + output since version 2.1. + However, some features used by \SpecialChar LyX + are available only in recent versions: + PDF\SpecialChar LaTeX + support (version 2.9), the +\family typewriter +--lily-output-dir +\family default + flag (version 2.11) and especially the +\family typewriter +--safe +\family default + flag (version 2.13). \end_layout \end_inset --lily-output-dir flag. + \end_layout \begin_layout Subsection @@ -142,12 +236,19 @@ Integration \end_layout \begin_layout Standard -The module provides a LilyPond inset which you insert from the menu Insert - \SpecialChar \menuseparator - Custom Insets. +The module provides a LilyPond inset which you insert from the menu +\family sans +Insert\SpecialChar menuseparator +Custom +\begin_inset space ~ +\end_inset + +Insets +\family default +. This inset is for typing the LilyPond code which will be typeset into your musical notes. - First, let's try a simple scale: + First, let us try a simple scale: \end_layout \begin_layout Standard @@ -156,6 +257,20 @@ status open \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'' { @@ -177,13 +292,20 @@ relative c'' { \end_layout \begin_layout Standard -The previous LyX inset produces the following LaTeX-lookalike code: +\noindent +The previous \SpecialChar LyX + inset produces the following \SpecialChar 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 @@ -207,32 +329,79 @@ end{lilypond} \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 \SpecialChar 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 \SpecialChar LaTeX +, but is preprocessed by LilyPond-book, + which creates the graphics files and includes them in the \SpecialChar LaTeX + document by + replacing the above with a \family typewriter \backslash -includegraphics{\SpecialChar \ldots{} +includegraphics{\SpecialChar ldots } \family default -. + command. \end_layout \begin_layout Standard -Thus, the conversion toolchain is as follow: LyX\SpecialChar \menuseparator -LilyPond-book\SpecialChar \menuseparator -LaTeX. - Every step of the toolchain obeys your spacing, so whether you put the - musical extract inline or in its own paragraph, centered or left-aligned, - etc., what you see in the LyX window should be respected in the final format. +Thus, the conversion process is as follow: +\family sans +\SpecialChar LyX +\SpecialChar menuseparator +LilyPond-book\SpecialChar menuseparator +\SpecialChar LaTeX + +\family default +. + \SpecialChar LyX + creates a .lytex file, LilyPond-book creates a .tex files and the accompanying + image files, and \SpecialChar LaTeX + creates the final document. + Every step of the tool chain obeys your spacing, so whether you put the + musical extract inline, or in its own paragraph, centered, left-aligned, + etc., what you see in the \SpecialChar LyX + window should be respected in the final format. 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 Argument 1 +status open + +\begin_layout Plain Layout +staffsize=12 +\end_layout + +\end_inset + \backslash markup { \backslash @@ -254,11 +423,17 @@ Previews \begin_layout Standard It is possible to have a direct feedback of what the music notation looks - like from within LyX. + like from within \SpecialChar LyX +. To do this, wrap a LilyPond inset inside a Preview inset, which you find - from the menu Insert \SpecialChar \menuseparator - Preview. - This only affects the display within LyX, not the output: + from the menu +\family sans +Insert\SpecialChar menuseparator +Preview +\family default +. + This only affects the display within \SpecialChar LyX +, not the output: \end_layout \begin_layout Standard @@ -266,7 +441,7 @@ It is possible to have a direct feedback of what the music notation looks \begin_layout Standard \begin_inset Flex LilyPond -status open +status collapsed \begin_layout Plain Layout @@ -299,12 +474,118 @@ 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. + 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 +\begin_layout Standard +A few gotchas that have been experienced with the integration of LilyPond-book + and \SpecialChar LyX + are reported here. +\end_layout + +\begin_layout Subsubsection +Child documents +\end_layout + +\begin_layout Standard +A \SpecialChar LyX + document using the LilyPond module cannot have child documents using + the +\begin_inset Quotes eld +\end_inset + +Input +\begin_inset Quotes erd +\end_inset + + method. + If you select +\begin_inset Quotes eld +\end_inset + +Input +\begin_inset Quotes erd +\end_inset + + as the +\begin_inset Quotes eld +\end_inset + +Include Type +\begin_inset Quotes erd +\end_inset + + under +\family sans +Insert\SpecialChar menuseparator +File\SpecialChar menuseparator +Child +\begin_inset space ~ +\end_inset + +Document +\family default +, you will get an error when producing output. + This is due to the way LilyPond-book automatically processes these input + files recursively. + Since there is currently no command-line option to turn off this behavior + of LilyPond-book, it is suggested to use the +\begin_inset Quotes eld +\end_inset + +Include +\begin_inset Quotes erd +\end_inset + + method instead. +\end_layout + +\begin_layout Standard +Note that it is possible to insert child documents which make use of the + LilyPond module, using either the +\begin_inset Quotes eld +\end_inset + +Input +\begin_inset Quotes erd +\end_inset + + or +\begin_inset Quotes eld +\end_inset + +Include +\begin_inset Quotes erd +\end_inset + + method, in a master document which does not make use of the LilyPond module. + For this to work you might have to add the line +\end_layout + +\begin_layout LyX-Code + +\backslash +usepackage{graphicx} +\end_layout + +\begin_layout Standard +to your master document's preamble under +\family sans +Document\SpecialChar menuseparator +Settings +\family default +. +\end_layout + +\begin_layout Subsubsection +Surrounding braces +\end_layout + \begin_layout Standard LilyPond-book searches for a \family typewriter @@ -365,7 +646,7 @@ With surrounding braces, all is well: \begin_layout Standard \begin_inset Flex LilyPond -status open +status collapsed \begin_layout Plain Layout @@ -384,44 +665,155 @@ score given \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 +Another gotcha is with subsequent LilyPond snippets with +\family typewriter + +\backslash +fret-diagram +\family default + markup commands: +\end_layout + +\begin_layout LyX-Code + +\backslash +begin{lilypond} +\end_layout + +\begin_layout LyX-Code + +\backslash +markup{ +\backslash +fret-diagram-terse #"x;3;2;o;1;o;" } +\end_layout + +\begin_layout LyX-Code + +\backslash +end{lilypond} +\end_layout + +\begin_layout LyX-Code + +\end_layout + +\begin_layout LyX-Code + +\backslash +begin{lilypond} +\end_layout + +\begin_layout LyX-Code + +\backslash +markup{ +\backslash +fret-diagram-terse #"x;x;o;2;3;2;" } +\end_layout + +\begin_layout LyX-Code + +\backslash +end{lilypond} +\end_layout + +\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 + \SpecialChar LaTeX + with respect to line width, page breaks, and so on. + This is in contrast to the long-standing \SpecialChar 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 typesetti +ng decisions to LilyPond. + Unfortunately, support for the +\family typewriter + +\backslash +lilypondfile +\family default + command in \SpecialChar LyX + is not implemented yet, but it is possible to use it inside + a \SpecialChar TeX +-Code block, provided that one writes the complete, absolute path to + the desired file. +\end_layout + \begin_layout Section LilyPond examples +\begin_inset CommandInset label +LatexCommand label +name "sec:LilyPond-examples" + +\end_inset + + \end_layout \begin_layout Standard Example \begin_inset CommandInset ref LatexCommand ref -reference "sub:Editorial-headword" +reference "subsec:Editorial-headword" \end_inset - shows that any valid LilyPond construct can be handled, no matter how complicat -ed. + 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 \begin_inset CommandInset ref LatexCommand ref -reference "sub:Positioning-of-markup" +reference "subsec:Tablatures-template" \end_inset - shows how you can mix LilyPond code with tables to display the fingering - of guitar chords. - And Example -\begin_inset CommandInset ref -LatexCommand ref -reference "sub:Tablatures-template" - -\end_inset - - shows yet another LilyPond output for guitarists. + shows another LilyPond output which should be interesting to guitarists. \end_layout \begin_layout Subsection Editorial headword \begin_inset CommandInset label LatexCommand label -name "sub:Editorial-headword" +name "subsec:Editorial-headword" \end_inset @@ -431,7 +823,7 @@ name "sub:Editorial-headword" \begin_layout Standard NR 1.7 Editorial annotations Beethoven, Op. 31, No. - 3 Piano sonata 18, Movt II, Scherzo Measures 9--14. + 3 Piano sonata 18, Movt II, Scherzo Measures 9–14. \end_layout \begin_layout Standard @@ -492,14 +884,14 @@ time 2/4 \begin_layout Plain Layout - + % \backslash set Staff.fingeringOrientations = #'(up) \end_layout \begin_layout Plain Layout - + % \backslash set Score.currentBarNumber = #9 \end_layout @@ -525,7 +917,7 @@ staccato \begin_layout Plain Layout - + % \backslash set doubleSlurs = ##t \end_layout @@ -611,7 +1003,7 @@ staccato \begin_layout Plain Layout - + % \backslash once \backslash @@ -725,14 +1117,14 @@ clef treble \begin_layout Plain Layout - + % \backslash override Fingering #'direction = #down \end_layout \begin_layout Plain Layout - + % \backslash set Staff.fingeringOrientations = #'(down) \end_layout @@ -753,7 +1145,7 @@ staccato \begin_layout Plain Layout - + % \backslash set doubleSlurs = ##t \end_layout @@ -798,7 +1190,7 @@ staccato \begin_layout Plain Layout - + % \backslash set doubleSlurs = ##f \end_layout @@ -934,25 +1326,26 @@ staccato \end_layout \begin_layout Standard +\noindent [from \begin_inset Flex URL status collapsed \begin_layout Plain Layout -http://lsr.dsi.unimi.it/LSR/Item?id=627 +http://lsr.di.unimi.it/LSR/Item?id=627 \end_layout \end_inset -] +; scheme code removed, centering applied through the paragraph settings] \end_layout \begin_layout Subsection -Positioning of markup elements +Tablatures template \begin_inset CommandInset label LatexCommand label -name "sub:Positioning-of-markup" +name "subsec:Tablatures-template" \end_inset @@ -960,907 +1353,17 @@ name "sub:Positioning-of-markup" \end_layout \begin_layout Standard -Tabular arrangement of elements -\end_layout +\begin_inset Preview \begin_layout Standard -\noindent -\align center -\begin_inset Tabular - - - - - - - -\begin_inset Text +\begin_inset Flex LilyPond +status collapsed \begin_layout Plain Layout -Ignatzek -\end_layout - -\end_inset - - -\begin_inset Text -\begin_layout Plain Layout -Alternative -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -Diagram -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -C -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -C -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status collapsed - -\begin_layout Plain Layout - - -\backslash -markup { -\backslash -fret-diagram #"6-x;5-3-3;4-2-2;3-o;2-1-1;1-o;" } -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -Cm -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status collapsed - -\begin_layout Plain Layout - - -\backslash -markup { -\backslash -concat { C -\backslash -super { -\backslash -flat 5 } } } -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status collapsed - -\begin_layout Plain Layout - - -\backslash -markup { -\backslash -fret-diagram #"6-x;5-1-1;4-3-3;3-3-4;2-2-2;1-1-1;c:5-1-1;" } -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -C+ -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status collapsed - -\begin_layout Plain Layout - - -\backslash -markup { -\backslash -concat { C -\backslash -super { -\backslash -sharp 5 } } } -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status collapsed - -\begin_layout Plain Layout - - -\backslash -markup { -\backslash -fret-diagram #"6-x;5-x;4-2-2;3-1-1;2-1-1;1-4-4;c:2-3-1;" } -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - - - -\end_inset - - -\end_layout - -\begin_layout Standard -Musical notation with each element placed by hand -\end_layout - -\begin_layout Standard -\noindent -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status open - -\begin_layout Plain Layout - -%{ -\end_layout - -\begin_layout Plain Layout - -Snippet for overlay markup command - absolute positioning of items -\end_layout - -\begin_layout Plain Layout - -Defines a new markup command -\backslash -overlay which takes a list of markup elements and positions them all at - the same point. -\end_layout - -\begin_layout Plain Layout - - By translating each markup element, you can gain control of the - absolute position of each. -\end_layout - -\begin_layout Plain Layout - -%} -\end_layout - -\begin_layout Plain Layout - -#(define-public (stack-stencil-overlay stencils) -\end_layout - -\begin_layout Plain Layout - - "Recursive function to add stencils together" -\end_layout - -\begin_layout Plain Layout - - (if (and (pair? stencils) -\end_layout - -\begin_layout Plain Layout - - (ly:stencil? (car stencils))) -\end_layout - -\begin_layout Plain Layout - - -\end_layout - -\begin_layout Plain Layout - - (if (and (pair? (cdr stencils)) -\end_layout - -\begin_layout Plain Layout - - (ly:stencil? (cadr stencils))) -\end_layout - -\begin_layout Plain Layout - - (let ((tail (stack-stencil-overlay (cdr stencils))) -\end_layout - -\begin_layout Plain Layout - - (head (car stencils))) -\end_layout - -\begin_layout Plain Layout - - (ly:stencil-add head tail)) -\end_layout - -\begin_layout Plain Layout - - (car stencils)) -\end_layout - -\begin_layout Plain Layout - - point-stencil)) -\end_layout - -\begin_layout Plain Layout - -#(define-markup-command (overlay layout props args) -\end_layout - -\begin_layout Plain Layout - - (markup-list?) -\end_layout - -\begin_layout Plain Layout - - "Overlay arguments one on top of the next" -\end_layout - -\begin_layout Plain Layout - - (let ((stencils (interpret-markup-list layout props args))) -\end_layout - -\begin_layout Plain Layout - - (stack-stencil-overlay -\end_layout - -\begin_layout Plain Layout - - (remove ly:stencil-empty? stencils)))) -\end_layout - -\begin_layout Plain Layout - - -\backslash -markup { -\end_layout - -\begin_layout Plain Layout - - -\backslash -overlay { -\end_layout - -\begin_layout Plain Layout - -% -\backslash -translate #'(0 . - 7) -\end_layout - -\begin_layout Plain Layout - -% -\backslash -justify-string #"Musical notation with each element placed by hand" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(0 . - -3) -\backslash -fontsize #2 "1" -\end_layout - -\begin_layout Plain Layout - - -\backslash -postscript #" -\end_layout - -\begin_layout Plain Layout - - 0.15 setlinewidth -\end_layout - -\begin_layout Plain Layout - - 4 0 moveto 74 0 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 4 -1 moveto 74 -1 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 4 -2 moveto 74 -2 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 4 -3 moveto 74 -3 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 4 -4 moveto 74 -4 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 11.6 -5 moveto 13.6 -5 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 42.6 -5 moveto 44.6 -5 lineto stroke -\end_layout - -\begin_layout Plain Layout - - 17.6 -5 moveto 0 0 2 -1 7 -1 9 0 rcurveto stroke -\end_layout - -\begin_layout Plain Layout - - 48.6 -5 moveto 0 0 2 -1 7 -1 9 0 rcurveto stroke -\end_layout - -\begin_layout Plain Layout - - 0.3 setlinewidth -\end_layout - -\begin_layout Plain Layout - - 73.85 0 moveto 73.85 -4 lineto stroke -\end_layout - -\begin_layout Plain Layout - - " -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(4 . - 2) "Präludium" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(5 . - -3) -\backslash -musicglyph #"clefs.G_change" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(8 . - -2) -\backslash -musicglyph #"timesig.C44" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(12 . - -5) -\backslash -note-by-number #1 #0 #DOWN -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(12 . - -2) -\backslash -musicglyph #"rests.4" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(12 . - 0) -\backslash -musicglyph #"rests.3" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(16 . - -4) -\backslash -note-by-number #3 #0 #DOWN -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(17.4 . - -4.4) -\backslash -musicglyph #"dots.dot" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(19 . - -3) -\backslash -note-by-number #2 #0 #UP -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(23 . - -1.5) -\backslash -note-by-number #2 #0 #1.2 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(20.25 . - 0) -\backslash -beam #4 #0.5 #0.40 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(20.25 . - -1) -\backslash -beam #4 #0.5 #0.40 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(27 . - -4) -\backslash -note-by-number #2 #0 #DOWN -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(27 . - -0.5) -\backslash -note-by-number #2 #0 #UP -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(31 . - -3) -\backslash -note-by-number #2 #0 #1.7 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(35 . - -1.5) -\backslash -note-by-number #2 #0 #1.3 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(39 . - -0.5) -\backslash -note-by-number #2 #0 #UP -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(28.25 . - 2.25) -\backslash -beam #12 #0 #0.4 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(28.25 . - 1.35) -\backslash -beam #12 #0 #0.4 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(43 . - -5) -\backslash -note-by-number #1 #0 #DOWN -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(43 . - -2) -\backslash -musicglyph #"rests.4" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(43 . - 0) -\backslash -musicglyph #"rests.3" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(47 . - -4) -\backslash -note-by-number #3 #0 #DOWN -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(48.4 . - -4.4) -\backslash -musicglyph #"dots.dot" -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(50 . - -3) -\backslash -note-by-number #2 #0 #UP -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(54 . - -1.5) -\backslash -note-by-number #2 #0 #1.2 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(51.25 . - 0) -\backslash -beam #4 #0.5 #0.40 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(51.25 . - -1) -\backslash -beam #4 #0.5 #0.40 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(58 . - -4) -\backslash -note-by-number #2 #0 #DOWN -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(58 . - -0.5) -\backslash -note-by-number #2 #0 #UP -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(62 . - -3) -\backslash -note-by-number #2 #0 #1.7 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(66 . - -1.5) -\backslash -note-by-number #2 #0 #1.3 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(70 . - -0.5) -\backslash -note-by-number #2 #0 #UP -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(59.25 . - 2.25) -\backslash -beam #12 #0 #0.40 -\end_layout - -\begin_layout Plain Layout - - -\backslash -translate #'(59.25 . - 1.35) -\backslash -beam #12 #0 #0.40 -\end_layout - -\begin_layout Plain Layout - - } -\end_layout - -\begin_layout Plain Layout - -} -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -[adapted from -\begin_inset Flex URL -status collapsed - -\begin_layout Plain Layout - -http://lsr.dsi.unimi.it/LSR/Item?id=628 -\end_layout - -\end_inset - -] -\end_layout - -\begin_layout Subsection -Tablatures template -\begin_inset CommandInset label -LatexCommand label -name "sub:Tablatures-template" - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Preview - -\begin_layout Standard -\begin_inset Flex LilyPond -status collapsed - -\begin_layout Plain Layout - -upper= -\backslash -relative c' { +upper= +\backslash +relative c' { \end_layout \begin_layout Plain Layout @@ -1956,7 +1459,7 @@ new TabStaff = "tab" << \backslash context TabVoice = "upper tab" { \backslash -clef "moderntab" +clef "tab" \backslash voiceOne \backslash @@ -1969,7 +1472,7 @@ upper } \backslash context TabVoice = "lower tab" { \backslash -clef "moderntab" +clef "tab" \backslash voiceTwo \backslash @@ -2002,13 +1505,14 @@ lower } \end_layout \begin_layout Standard +\noindent [from \begin_inset Flex URL status collapsed \begin_layout Plain Layout -http://lsr.dsi.unimi.it/LSR/Item?id=634 +http://lsr.di.unimi.it/LSR/Item?id=634 \end_layout \end_inset